購読者 API リファレンス
購読者を取得する
エンドポイント:
GET /v2/:page_id/subscribers?page=:page&per_page=:per_page&search=:search_query
- page の既定値は 1 です。
- per_page の既定値は 50 で、1 ページあたり最大 100 件です。
- 検索クエリ (任意) を使うと、メールアドレスや電話番号で購読者を絞り込めます。
レスポンスの例
[{"id": "cm1111x6ofgsd5666mzxcw978qh","email": "ali@instatus.com","phone": null,"webhook": null,"webhookEmail": null,"confirmed": false,"all": true,"components": []},{"id": "cm1111x6ofgsd5666mzxcw978qh","email": null,"phone": "5417543010","webhook": null,"webhookEmail": null,"confirmed": false,"all": true,"components": []}]
購読者を追加する
エンドポイント:
POST /v1/:page_id/subscribers
誰かが購読したときの確認の挙動は、ページの subscriberConfirmationMode の設定に従います。このエンドポイントの autoConfirm を使うと、特定の購読者についてその挙動を上書きできます。
リクエストの例
{"email": "sarah@instatus.com","all": true,"autoConfirm": false}
autoConfirm— 任意。trueの場合、ページの設定にかかわらず、確認メールやウェルカムメールを送らずに購読者をすぐ追加します。Pro のみ。
レスポンスの例
{"id": "cm1111x6ofgsd5666mzxcw978df","name": null,"email": "sarahs@instatus.com","phone": null,"confirmed": false,"all": true,"createdAt": "2024-10-01T03:48:41.474Z","updatedAt": "2024-10-01T03:48:41.474Z","siteId": "cm1111x6ofgsd5666mzxcw978qh","unsubscribeToken": "e3b51de6-1234-4664-zxyv-1679gg524260","webhook": null,"webhookEmail": null,"discord": null,"discordTeam": null,"slack": null,"slackTeam": null,"language": "en","company": null,"microsoftTeamsWebhook": null,"googleChatWebhook": null,"googleChatSpace": null,"failedAttempts": 0,"approved": true,"importedFrom": null,"hideUnsubLink": false,"webhookIncidentBody": null,"webhookMaintenanceBody": null,"webhookComponentBody": null,"webhookHttpMethod": "POST","webhookHeaders": null,"site": {"id": "cm1111x6ofgsd5666mzxcw978qh"}}
特定のコンポーネントを購読する
リクエストの例
{"email": "adam@instatus.com","all": false,"components": ["cl2xv23rl0119e7jlk2mweepd"],"autoConfirm": false}
レスポンスの例
{"id": "cl09gt11151422bjluflghewx","email": "adam@instatus.com","site": {"id": "ckg8a112344s5v86wrn","name": "Test","logoUrl": null,"subdomain": "test","publicEmail": null,"language": "en"}}
複数の購読者を追加する
エンドポイント:
POST /v1/:page_id/subscribers/bulk
このエンドポイントを使うと、1 回のリクエストで複数の購読者を作成できます。
リクエストの例
{"subscribers": [{"email": "sarah@instatus.com","all": true},{"email": "john@instatus.com","components": ["cl2xv23rl0119e7jlk2mweepd"]},{"name": "Jane Doe","phone": "5417543010","all": true}],"autoConfirm": false}
autoConfirmはバッチ内のすべての購読者に適用されます。Pro のみ。
レスポンスの例
{"success": true,"created": 3,"failed": 0,"results": {"created": [{"id": "cm1111x6ofgsd5666mzxcw978df","email": "sarah@instatus.com","phone": null,"confirmed": false,"all": true,"site": {"id": "cm1111x6ofgsd5666mzxcw978qh"}},{"id": "cm2222x6ofgsd5666mzxcw978df","email": "john@instatus.com","phone": null,"confirmed": false,"all": false,"site": {"id": "cm1111x6ofgsd5666mzxcw978qh"}},{"id": "cm3333x6ofgsd5666mzxcw978df","email": null,"phone": "5417543010","name": "Jane Doe","confirmed": false,"all": true,"site": {"id": "cm1111x6ofgsd5666mzxcw978qh"}}],"failed": []}}
一部の購読者の作成に失敗した場合のレスポンス
一部の購読者の作成に失敗した場合 (メールアドレスの重複、形式の誤りなど)、レスポンスに失敗の詳細が含まれます。
{"success": false,"created": 2,"failed": 1,"results": {"created": [{"id": "cm1111x6ofgsd5666mzxcw978df","email": "sarah@instatus.com","site": {"id": "cm1111x6ofgsd5666mzxcw978qh"}},{"id": "cm2222x6ofgsd5666mzxcw978df","email": "john@instatus.com","site": {"id": "cm1111x6ofgsd5666mzxcw978qh"}}],"failed": [{"index": 2,"subscriber": {"email": "duplicate@instatus.com","all": true},"error": {"code": "creation_failed","message": "Subscriber with this email already exists"}}]}}
補足:
- 1 回のリクエストにつき購読者は最大 100 件です
- 各購読者のオブジェクトには、単一購読者のエンドポイントと同じフィールドを指定できます
- 一部成功にも対応しています。一部が失敗しても、作成に成功した購読者は返されます
確認の挙動
ステータスページでは、ステータスページを更新するエンドポイントの subscriberConfirmationMode によって、新しい購読者の扱いを制御します。
| 値 | 動作 |
|---|---|
REQUIRED | 購読者は更新を受け取る前にメールで確認する必要があります。既定値です。 |
WELCOME | 購読者はすぐに追加され、ウェルカムメールが届きます。Pro のみ。 |
NONE | 購読者はすぐに追加され、メールは送信されません。Pro のみ。 |
作成用エンドポイントの autoConfirm パラメーターは、そのリクエストに限りページの設定を上書きし、NONE と同じ挙動になります。
購読者を削除する
エンドポイント:
DELETE /v1/:page_id/subscribers/:subscriber_id
レスポンスの例
{"id": "cm1zvzm3434dlp9255d6jgy8","name": null,"email": "sarah@instatus.com","phone": null,"webhook": null,"webhookEmail": null,"discord": null,"microsoftTeamsWebhook": null,"company": null,"site": {"id": "cm180slpo000g9343478qh"}}