SMSテンプレートAPI

SMSテンプレートAPIを使用すると、変数のプレースホルダーを持つ再利用可能なSMSメッセージテンプレートを作成および管理できます。テンプレートを使用してメッセージを送信する前に、承認を受ける必要があります。

注釈

データの作成、一覧取得、更新、削除の操作は、APIとウェブ画面の両方から実行可能です。SMSの送信およびメッセージ状況の確認にはAPIを使用する必要があります。

テンプレート一覧取得API

アカウントに属するすべてのテンプレートを取得するには、以下のエンドポイントに``GET`` 要求を送信します:

https://api.xoxzo.com/sms/templates/

以下はコマンドラインツールを使用した要求の例です:

curl -u <SID>:<AUTH_TOKEN> https://api.xoxzo.com/sms/templates/

応答はJSONデータ構造となり、HTTPの 200 OK ステータスコードとともに返されます:

HTTP/1.1 200 OK
Content-Type: application/json

[
    {
        "id": 6,
        "name": "Welcome SMS",
        "approved_content": "Hi {name}! This is your discount {order_number}",
        "pending_content": null,
        "status": "APPROVED",
        "api_usage_example": "curl -u sid:token -X POST https://api.xoxzo.com/sms/templates/<template_id>/messages/ -H \"Content-Type: application/json\" -d '{\"sender\":\"TestSender\",\"recipient\":\"+81987654321\",\"variables\":{\"name\":\"Sample_name\",\"order_number\":\"Sample_order_number\"}}'"
    },
    {
        "id": 7,
        "name": "Welcome 2",
        "approved_content": null,
        "pending_content": "Variables must {name}",
        "status": "PENDING",
        "api_usage_example": null
    }
]

応答データ

名前

説明

id

一意のテンプレート識別子

name

テンプレート名

approved_content

現在承認されているメッセージ内容。未承認の場合は null となります。

pending_content

承認待ちの内容。保留中の変更がない場合は null となります。

status

承認状況: APPROVED または PENDING

api_usage_example

このテンプレートを使用してSMSを送信するための、すぐに使えるコマンドラインの例。APPROVED のテンプレートにのみ存在します。未承認のテンプレートの場合は null となります。

注釈

api_usage_example 項目に関する注意事項:

  • この項目は、 APPROVED のテンプレートに対してのみ返されます。

  • 値は生のJSON文字列であり、実行するには余分な '/' を削除する必要があります。

  • Sample_nameSample_order_number のようなプレースホルダー値は、使用する前に実際の値に置き換える必要があります。

テンプレート作成API

新しいSMSテンプレートを作成するには、以下のエンドポイントに POST 要求を送信します:

https://api.xoxzo.com/sms/templates/

以下のパラメーターを使用します:

名前

説明

必須

name

人間が読めるテンプレートのラベル

はい

ウェルカムSMS

content

{variable} プレースホルダーを含むメッセージ本文

はい

こんにちは {name} さん、日本へようこそ!

以下はコマンドラインツールを使用した要求の例です:

curl -u <SID>:<AUTH_TOKEN> -X POST \
  -H "Content-Type: application/json" \
  -d '{"name": "Welcome SMS", "content": "Hello {name}, welcome to Japan!"}' \
  https://api.xoxzo.com/sms/templates/

注釈

content パラメーターに関する注意事項:

  • 変数は {name} のように波括弧で囲む必要があります。

  • 変数名には、文字、数字、およびアンダースコアのみ使用できます。

  • 新しく作成されたテンプレートは PENDING 状態から始まり、SMSの送信に使用する前に承認を受ける必要があります。

単一テンプレート取得API

特定のテンプレートを取得するには、エンドポイントの後に <template_id> を続けて GET 要求を送信します:

https://api.xoxzo.com/sms/templates/<template_id>/

以下はコマンドラインツールを使用した要求の例です:

curl -u <SID>:<AUTH_TOKEN> https://api.xoxzo.com/sms/templates/1/

テンプレート更新API

既存のテンプレートを更新するには、エンドポイントの後に <template_id> を続けて PATCH 要求を送信します:

https://api.xoxzo.com/sms/templates/<template_id>/

以下のパラメーターを使用します:

名前

説明

必須

name

更新されたテンプレート名

いいえ

content

更新されたメッセージ内容。状態が PENDING にリセットされます。

いいえ

以下はコマンドラインツールを使用した要求の例です:

curl -u <SID>:<AUTH_TOKEN> -X PATCH \
  -H "Content-Type: application/json" \
  -d '{"content": "Hi {name}, updated message!"}' \
  https://api.xoxzo.com/sms/templates/1/

警告

content 項目を編集すると、 APPROVED のテンプレートは自動的に PENDING 状態に降格します。新しい版が承認されるまで、以前に承認された内容は approved_content で引き続き利用可能です。

テンプレート削除API

テンプレートを削除するには、エンドポイントの後に <template_id> を続けて DELETE 要求を送信します:

https://api.xoxzo.com/sms/templates/<template_id>/

以下はコマンドラインツールを使用した要求の例です:

curl -u <SID>:<AUTH_TOKEN> -X DELETE https://api.xoxzo.com/sms/templates/1/

警告

テンプレートの削除は永続的であり、元に戻すことはできません。