本文へ移動
Bounty Developer

POST/api/push/subscribe

「プッシュ通知」の分類の、新しく作る、または操作を実行するために内容を送る API。ログインした本人として呼ぶ。

要約

この端末の Web Push 購読を登録する(PushSubscription.toJSON()。endpoint は https + 既知のプッシュサービスだけ)

呼び方と印

ログイン

送るもの(本文)application/json

送る本文の欄。「必須」の印がある欄は省けない。

  • endpoint必須string
    長さ 1–1024
  • expirationTime任意number | null
  • keys必須object
  • p256dh必須string
    /^[A-Za-z0-9_-]{87}=?$/
  • auth必須string
    /^[A-Za-z0-9_-]{22}(==)?$/

返るもの(応答)201 · application/json

成功したときに返る形。入れ子の欄は、その行を押すと開く・閉じる。「任意」の印がある欄は返らないことがある。

  • idstring
  • createdboolean

失敗したとき(エラー)

失敗したときの状態コードと、その意味。本文の error の値で、プログラムが失敗の種類を見分けられる。

  • 400入力の誤り(error = invalid_input など)
  • 401未ログイン(unauthorized)/ Bearer が無効(invalid_token。WWW-Authenticate 付き)
  • 403権限が無い
  • endpoint_not_allowed
  • invalid_keys
  • push_not_configured
  • rate_limited

呼び出しの見本

そのまま試せる呼び出しの例。curl と fetch をタブで切り替える。ID やトークンは自分の値に置き換える。

curl -X POST "https://bounty.spikes.4s.link/api/push/subscribe" \
  -H "Authorization: Bearer $BEARER_AUTH" \
  -H "Content-Type: application/json" \
  -d '{
    "endpoint": "string",
    "keys": {
      "p256dh": "string",
      "auth": "string"
    }
  }'
POST /api/push/subscribe | Bounty Developer