テンプレート設定の作成
新しいテンプレート設定を作成します。テンプレート名、種別、内容、主な配信先国、署名情報の設定に対応します。作成後、テンプレートのステータスは「審査待ち」となり、審査を通過してはじめて使用できます。
リクエストURL
POST https://smsapi.engagelab.com/v1/template-configs
呼び出し認証
APIリクエストの認証方法については、呼び出し認証を参照してください。
リクエスト例
リクエストヘッダー
POST /v1/template-configs HTTP/1.1
Content-Type: application/json
Authorization: Basic amlndWFuZ2RldjpkZXZfc2VjcmV0
POST /v1/template-configs HTTP/1.1
Content-Type: application/json
Authorization: Basic amlndWFuZ2RldjpkZXZfc2VjcmV0
このコードブロックはフローティングウィンドウ内に表示されます
リクエストボディ
{
"template_name": "Order Notification Template",
"template_type": "utility",
"template_content": "Your order {order_no} has been shipped and is expected to be delivered by {delivery_time}",
"country_codes": "CN,US",
"add_signature": true,
"sign_id": "987654321",
"sign_position": 2
}
{
"template_name": "Order Notification Template",
"template_type": "utility",
"template_content": "Your order {order_no} has been shipped and is expected to be delivered by {delivery_time}",
"country_codes": "CN,US",
"add_signature": true,
"sign_id": "987654321",
"sign_position": 2
}
このコードブロックはフローティングウィンドウ内に表示されます
リクエストパラメータ
| パラメータ | 型 | 区分 | 説明 |
|---|---|---|---|
| template_name | String | 必須 | テンプレート名。最大255文字 |
| template_type | String | 必須 | テンプレート種別:authentication(認証/OTP)、utility(通知)、marketing(マーケティング)。レガシー値 otp は互換性のため authentication にマッピングされます |
| template_content | String | 必須 | テンプレート内容。次の文字は使用不可:【、】、、、测试、test、[、] |
| country_codes | String | 必須 | 主な配信先の国コード。カンマ区切り |
| add_signature | Boolean | 任意 | 署名を追加するかどうか。デフォルトはfalse |
| sign_id | String | 条件付き必須 | add_signatureがtrueの場合は必須。署名ID |
| sign_position | Integer | 条件付き必須 | add_signatureがtrueの場合は必須。署名の位置:1-先頭、2-末尾 |
レスポンスパラメータ
成功レスポンス
HTTPステータスコードは200で、レスポンスボディには次のフィールドが含まれます。
| フィールド | 型 | 説明 |
|---|---|---|
| template_id | String | 作成されたテンプレートID |
成功例
{
"template_id": "123456789"
}
{
"template_id": "123456789"
}
このコードブロックはフローティングウィンドウ内に表示されます
エラーレスポンス
HTTPステータスコードは4xx/5xxで、レスポンスボディには次のフィールドが含まれます。
| フィールド | 型 | 説明 |
|---|---|---|
| code | Integer | エラーコード |
| message | String | エラーの詳細 |
エラー例
{
"code": 400,
"message": "sign status is not approved, can not use"
}
{
"code": 400,
"message": "sign status is not approved, can not use"
}
このコードブロックはフローティングウィンドウ内に表示されます
エラーコード
| エラーコード | HTTP ステータス | 想定されるエラー |
|---|---|---|
1000 |
500 |
サービス内部エラー;テンプレート一覧/詳細の取得に失敗;テンプレートの作成・更新・削除時のデータベース操作の失敗;署名情報や送信予定プランの取得失敗 |
2001 |
401 |
認証失敗;Authorization 欠落、形式不正、トークン無効 |
2002 |
401/403 |
開発者トークンの有効期限切れまたは無効化;業務(プロジェクト)が削除済み |
2005 |
400 |
IP が許可リストに含まれない:ip forbidden |
3001 |
400 |
リクエストの JSON 形式が不正:not correct parameter format |
3002 |
400 |
templateId の形式が不正;template_name が空または 255 文字超過;template_type が不正;template_content が空;country_codes が空;add_signature=true のときに sign_id がない;sign_position が不正;テンプレート内容に禁止文字が含まれる |
3002 |
400 |
認証種別のテンプレート検証失敗:{{code}} を必ず含める必要があり、サポートする変数は {{code}}、{{ttl}} の 2 つのみ |
3003 |
400 |
署名を追加する際に署名が未承認;テンプレートが現在の業務に属していない;審査待ちテンプレートは更新不可;当該テンプレートを使用中の送信待ちまたは実行中プランがあり、更新/削除不可 |
4001 |
400 |
テンプレートが存在しない:template config not exist;テンプレートの作成/更新時に参照する署名が存在しない:sign config not exist |
よくあるエラーメッセージ:
sign config not exist:署名設定が存在しませんsign status is not approved, can not use:署名のステータスが承認済みでないため、使用できませんtemplate config not exist:テンプレート設定が存在しませんip forbidden:IP が許可リストに含まれていませんnot correct parameter format:リクエストの JSON 形式が不正です
注意事項
- 作成後、テンプレートのステータスは「審査待ち」(status=1)となり、審査を通過してはじめてSMSの送信に使用できます。
- 署名を追加する場合、その署名は承認済みのステータスである必要があります。
- テンプレート内容には禁止文字を含めることはできません:
【、】、、、测试、test、[、] - テンプレートIDと署名IDはいずれも文字列型の数値です。
付録
テンプレート設定のステータス(status)
| 値 | 説明 |
|---|---|
| 1 | 審査待ち |
| 2 | 承認済み |
| 3 | 却下 |
テンプレート種別(template_type)
| 値 | 説明 |
|---|---|
| authentication | 認証/OTP |
| utility | 通知 |
| marketing | マーケティング |
レガシー値
otpは互換性のためauthenticationにマッピングされます。認証種別のテンプレート内容は{{code}}を必ず含み、サポートする変数は{{code}}、{{ttl}}の 2 つのみです。
署名の位置(sign_position)
| 値 | 説明 |
|---|---|
| 0 | 署名なし |
| 1 | 先頭 |
| 2 | 末尾 |










