連携と APIPro 以上
API:WhatsApp テンプレートの一覧取得と送信
2つのエンドポイントで、自社のソフトウェアから WhatsApp テンプレートを使えます。GET /api/v1/whatsapp/templates は承認済みのテンプレートを一覧にし、POST /api/v1/whatsapp/send-template は既定の番号からお客様にテンプレートを送信します。どちらも WhatsApp アクセスのあるキーが必要です。
- 場所
- Ask Menuthere support for a key
- プラン
- つないだ WhatsApp Business 番号が必要で、Pro から利用できます。
- 更新日
テンプレートを一覧にする
curl 'https://menuthere.com/api/v1/whatsapp/templates' -H 'Authorization: Bearer ck_live_YOUR_KEY'
既定の番号にある承認済みのテンプレートが返されるため、正確な名前と、各テンプレートに必要な値の数が分かります。
| 項目 | 意味 |
|---|---|
| name, language | テンプレートの名前と言語コード。 |
| category, status | MARKETING や UTILITY などのカテゴリー。ステータスは APPROVED。 |
| body_variables | 本文に必要な {{n}} の値の数。 |
| has_header, header_format | ヘッダーの有無と、TEXT、IMAGE、VIDEO、DOCUMENT のいずれか。 |
テンプレートを送信する
JSON ボディを付けて POST /api/v1/whatsapp/send-template を呼び出します。メッセージは、複数の番号とメイン番号で設定した既定の送信元から送られます。呼び出しの中で番号を選ぶことはできません。
| 項目 | 必須 | 内容 |
|---|---|---|
| to | はい | 国番号付きのお客様の番号。 |
| template_name | はい | 一覧の呼び出しで取得した名前。 |
| language | いいえ | 省略すると、承認済みのテンプレートから取得されます。 |
| body_params | いいえ | {{1}}、{{2}} などに入れる値の配列で、順番どおりに指定します。 |
| header_params | いいえ | テキストのヘッダーに入れる値の配列。 |
| header_media_url, header_media_type | いいえ | メディアのヘッダー用のリンクと、image、video、document のいずれか。 |
| button_params | いいえ | 動的な URL ボタンに入れる値の配列。 |
| idempotency_key | いいえ | 任意で決める参照用の値。id や Idempotency-Key ヘッダーでも使えます。 |
送信に成功すると、ok: true、message_id、to の番号、status: "sent" が返されます。同じ idempotency key をもう一度送ると、最初の結果が duplicate: true 付きで返され、二重に送信されることはありません。送信に失敗した場合はキーが解放されるため、再試行できます。
エラーと制限
| ステータス | `error` | 意味 |
|---|---|---|
| 400 | missing_fields, invalid_json, invalid_number, template_error | 必須の項目が足りない、番号が正しくない、または送った値に対してテンプレートが合っていません。 |
| 404 | template_not_found | 既定の番号に、その名前の承認済みテンプレートがありません。 |
| 409 | recipient_opted_out | お客様が STOP と返信しています。メッセージは送信されません。 |
| 409 | in_progress | 同じ idempotency key のリクエストがまだ処理中です。 |
| 412 | no_whatsapp_number | 既定の WhatsApp 番号がつながっていません。 |
| 429 | daily_limit_reached, rate_limited | 番号の WhatsApp の1日の上限に達したか、キーのレート制限を超えました。 |
| 502 | send_failed | WhatsApp に接続できませんでした。もう一度試してください。 |
知っておくと便利なことAPI からの送信はすべて通常の WhatsApp メッセージなので、ほかのメッセージと同様に Meta の料金がかかります。WhatsApp メッセージの料金をご覧ください。テンプレートは承認されてからでないと送信できません。メッセージテンプレートをご覧ください。
よくある質問
API で通常のテキストメッセージを送れますか?
いいえ。API で送れるのは承認済みのテンプレートだけで、24時間の枠の外にいるお客様にも届きます。
配信停止したお客様にも送られますか?
いいえ。STOP と返信したお客様は対象外となり、呼び出しは recipient_opted_out を返します。
関連ページ
見つからない場合は [email protected] までメールするか、チャットでお問い合わせください(9:00〜21:00)。ヘルプセンター料金menuthere.com
