ダイレクト通知 - 個人 API キーによる即時アラート
チャンネルを作成せずに、個人 API キーで直接通知を送信。ダイレクトキーの作成方法、webhook URL の使用方法、タイトル・本文・リンク付きの即時通知の送信方法を学びます。
ダイレクト通知
ダイレクト通知を使えば、シンプルな webhook URL で個人アラートを送信できます。チャンネルの設定、テンプレート、購読者は不要です。キーを作成し、URL を呼び出すだけで、デバイスに即座に通知が届きます。
ダイレクト通知とは?
チャンネルは、他のユーザーと共有できる構造化されたテンプレート通知に最適です。しかし、ビルド完了、スクリプト実行完了、センサー作動など、素早い個人通知が欲しいだけの場合もあります。ダイレクト通知はまさにそのために設計されています。
ダイレクト通知では、一意の webhook URL に対応する個人 API キーを取得します。タイトルと本文で URL を呼び出すと、チャンネル設定なしで直接通知が送信されます。
はじめに
1. ダイレクトキーを作成
Echobell アプリで、チャンネルリストの上部にあるダイレクトをタップします。作成をタップして新しいダイレクトキーを生成し、わかりやすい名前を付けます(例:「ビルドサーバー」「ホームラボ」「トレーディングボット」)。
2. Webhook URL をコピー
各ダイレクトキーには一意の webhook URL があります:
https://hook.echobell.one/d/{your-key-token}アプリのダイレクトキー詳細ビューで URL を確認・コピーできます。セキュリティのためトークンはデフォルトで非表示です — タップで表示します。
3. 通知を送信
title と body を含む JSON ボディで webhook URL を呼び出します:
POST https://hook.echobell.one/d/YOUR_KEY_TOKEN
Content-Type: application/json
{
"title": "ビルド完了",
"body": "プロジェクト X のビルドが 3 分 42 秒で成功しました"
}これだけです — 即座に通知を受け取れます。
リクエストの送信
POST リクエスト(推奨)
通知内容を含む JSON ボディを送信します:
POST https://hook.echobell.one/d/YOUR_KEY_TOKEN
Content-Type: application/json
{
"title": "デプロイ状況",
"body": "v2.1.0 を本番環境にデプロイしました",
"externalLink": "https://dashboard.example.com/deploys/latest"
}GET リクエスト
クエリ文字列でパラメータを渡すこともできます:
GET https://hook.echobell.one/d/YOUR_KEY_TOKEN?title=アラート&body=CPU+95%25リクエストフィールド
すべてのフィールド名は大文字小文字を区別しません — title、Title、TITLE はすべて同じように扱われます。JSON ボディでもクエリ文字列でも同様です。
| フィールド | 型 | 必須 | 説明 |
|---|---|---|---|
title | string | いいえ | 通知タイトル。省略時のデフォルトは "Direct Notification"。 |
body | string | いいえ | 通知本文。 |
externalLink | string | いいえ | 通知記録に表示されるクリック可能なリンク。 |
notificationType | string | いいえ | 通知の緊急度。active、time-sensitive、calling を指定できます。デフォルトは time-sensitive。通知タイプを参照。 |
通知タイプ
notificationType フィールドでダイレクト通知の緊急度を制御できます:
| タイプ | 説明 |
|---|---|
active | 標準通知、通常通り配信されます。 |
time-sensitive | 高優先度通知、集中モードを突破できます。これがデフォルトです。 |
calling | 緊急時向けの通話のようなアラート。**有効なプレミアムサブスクリプションが必要です。**プレミアムがない場合、time-sensitive にフォールバックします。 |
通知タイプを指定した例:
POST https://hook.echobell.one/d/YOUR_KEY_TOKEN
Content-Type: application/json
{
"title": "サーバーダウン",
"body": "本番サーバーが応答しません",
"notificationType": "calling"
}一般的なユースケース
シェルスクリプト
curl -X POST https://hook.echobell.one/d/YOUR_KEY_TOKEN \
-H "Content-Type: application/json" \
-d '{"title": "マイグレーション完了", "body": "データベースマイグレーションが正常に完了しました"}'Python
import requests
requests.post(
"https://hook.echobell.one/d/YOUR_KEY_TOKEN",
json={
"title": "トレーニング完了",
"body": f"モデル精度: {accuracy:.2%}",
"externalLink": "https://wandb.ai/runs/abc123"
}
)ダイレクトキーの管理
- 複数キー:異なる用途(CI サーバー、ホームオートメーション、cron ジョブなど)に複数のキーを作成可能。通知記録はトリガーしたキーに自動的に関連付けられるため、各通知の送信元を簡単に識別できます
- トークンリセット:キーの webhook URL が漏洩した場合、キー詳細ビューでトークンをリセットでき、古い URL は即座に無効化されます
- キーの削除:ダイレクトキーを削除すると、その webhook URL は永久に無効化されます
ベストプラクティス
- セキュリティ:ダイレクトキー URL を機密情報として扱い、環境変数でトークンを保存してください
- 整理:キーにわかりやすい名前を付け、サービスごとに別のキーを使用してください
- エラー処理:配信の成功を確認するため、HTTP レスポンスステータスを常にチェックしてください
- クリーンアップ:使用しなくなったキーを削除してセキュリティリスクを軽減してください
プライバシーとセキュリティ
- ダイレクトキー URL は機密情報として扱う必要があります
- 必要なデータのみを送信してください
- 通知コンテンツはデバイスにローカル保存されます
- サーバーはリクエストの処理と通知のルーティングのみを行います
トラブルシューティング
ダイレクト通知が期待通りに動作しない場合:
- webhook URL が正しいことを確認
- キーがまだ存在することを確認(削除またはトークンリセットされている可能性)
- Echobell アプリに通知権限があることを確認
- JSON が正しくフォーマットされ、
Content-Type: application/jsonヘッダーが設定されていることを確認 - curl でテストして HTTP クライアントの問題を除外
ヘルプが必要ですか?サポートセンターにアクセスするか、echobell@weelone.com までお問い合わせください。