通知チャネル
電話接続の手順については、「アプリを接続する」を参照してください。
コンソールで設定する
- 通知 を開き、Bark、Pushover、Webhook または Mailwake アプリを選択します。
- 以下の選択したチャンネルのフィールドに入力します。 Mailwake アプリの場合、最初に 電話をペアリングする 、次に受信するスマートフォンを選択します。
- プレビュー、通知言語、再試行回数を選択します。再試行回数が 0 の場合は 1 回の試行が行われます。
- 保存してから、テスト通知を明示的に送信します。スマートフォンまたは Webhook の受信者と配信結果を確認します。
設定はすべてのメールボックスに適用されます。設定を変更すると、キューに入れられた作業が既存の配信計画に従って保存されます。新しいメッセージで将来の動作を確認します。
チャンネル構成
/api/v1/settings/delivery を通じてグローバル
チャネルを構成し、現在の
revision
を送信します。チャネル、プレビュー、再試行回数、通知言語はすべてのメールボックスに適用されます。すべての認証情報は暗号化され、書き込み専用です。接続先が同じ場合、省略した認証情報は保存済みの値を維持します。保存済みの
Bark アドレスを変更する際は、デバイスキーを再入力してください。
| チャネル | パラメータ | 資格 |
|---|---|---|
bark |
bark.endpoint 、デフォルト
https://api.day.app
|
bark.key |
pushover |
なし |
pushover.token , pushover.user
|
webhook |
HTTPS、クエリは許可されています |
webhook.url および
webhook.secret (空白以外の少なくとも 32 文字)
|
native |
デフォルトでは、正式な本番プッシュ配信サービス。
MAILWAKE_RELAY_URL
でオーバーライドします。アプリ認証で電話をペアリングする
|
ローカルで生成され、暗号化されたアウトポスト ID |
パスとクエリにはルーティング認証情報が含まれる可能性があるため、Webhook
URL は書き込み専用です。 preview は
off または subject を受け入れます。
retry_count は 0 ~ 9 を受け入れ、デフォルトは 0 です。
language は
9 つのカタログ コードとその地域別別名
を受け入れ、デフォルトは en になります。 Bark と
Pushover では、 subject の件名のみが表示されます。
Webhook には構造化された送信者と件名が保持されますが、その
message にも件名のみが含まれます。
off (および空の件名)
は、ローカライズされた「新規メール」メッセージを使用します。タイトルは
{display name} · {folder} のままです。 Bark
は同じ切り詰められたタイトルでグループ化されます。テスト通知のテキストは変更されません。
API 入力 sender_subject は 400
config_preview_invalid を返します。サードパーティ
チャネルの場合、subject から
off
に切り替えると、すべての保留中および失敗したレコードから送信者と件名がアトミックに削除されます。その後のエンキューも、保存されたプライバシー
ポリシーに従います。ネイティブ
プッシュでは、サードパーティのプレビュー設定を維持しながら、送信者と件名が常に記録されます。
Bark 履歴の保持は、メール通知とテスト通知の両方に対する Bark アプリの履歴保存設定に従います。
Webhook ペイロード
アウトポスト は JSON 本文を含む
POST を送信し、リダイレクトに従いません。
{
"version": 1,
"id": "3f9c…",
"test": false,
"mailbox_id": "mbx_example",
"account": "Work mailbox",
"folder": "Clients",
"sender": "anna@example.org",
"subject": "Re: Q4 proposal",
"received_at": "2026-09-28T10:32:00Z",
"title": "Work mailbox · Clients",
"message": "Re: Q4 proposal"
}
mailbox_id は安定したメールボックス ID です。
account は、エンキュー時の表示名です。
Bark、Pushover、および Webhook
の通常の通知では、対応するすべての言語でタイトル
{display name} · {folder}
が使用されます。メールボックスの名前を変更または削除すると、すでにキューに入っているタスクの
ID
メタデータが保持されます。テスト通知では別のテキストを使用し、メールボックス
フィールドを省略します。
sender および subject は、subject
プレビューでのみ表示されます。 title および
message
はローカライズされており、ntfy、Gotify、および同様のサービスに転送する準備ができています。表示名とフォルダーはプレビューがオフの場合でも送信されます。通知プロバイダーとの共有に適したラベルを選択してください。
| ヘッダ | 意味 |
|---|---|
X-Mailwake-Event |
イベント ID、
id
に等しい。再試行しても変更されないため、重複排除に使用します
|
X-Mailwake-Timestamp |
送信時間 (Unix 秒) |
X-Mailwake-Signature |
sha256= の後に 16 進数
HMAC-SHA256(secret, "<timestamp>.<raw
body>")
|
定時間比較を使用して同じシークレットを持つ署名を検証し、5 分以上離れたタイムスタンプを拒否します。
import hashlib, hmac, time
def verify(secret: bytes, timestamp: str, body: bytes, signature: str) -> bool:
expected = "sha256=" + hmac.new(secret, timestamp.encode() + b"." + body, hashlib.sha256).hexdigest()
return abs(time.time() - int(timestamp)) <= 300 and hmac.compare_digest(expected, signature)
2xx 応答はすべて受け入れられたものとしてカウントされます。 429 と 5xx は再試行設定に従います。他のステータスの場合は試行が終了し、失敗が記録されます。
通知設定を保存すると、テストを送信せずにフィールド、アドレス、ペアリング状態、およびリビジョンが検証されます。保存後に明示的なテスト ボタンを使用します。ネイティブ テストは、プッシュ配信サービスの固定無料テスト エンドポイントを使用し、アプリ テスト クォータを共有します。通常のメール通知には、有効な Native Push の利用権が必要です。
Markdown · AGPL-3.0-only · Mailwake コントリビューター