テンプレート&送信者ID

このドキュメントは、テンプレート設定および署名設定に関連するRESTful APIインターフェースについて説明します。

基本情報

  • ドメイン: https://smsapi.engagelab.com
  • 認証方法: Basic認証(Base64エンコード)
    • フォーマット: Authorization: Basic base64(apikey:apisecret)
    • 例: apikey:apisecretをBase64でエンコードし、リクエストヘッダーにAuthorization: Basic <エンコードされた文字列>を追加します。
  • Content-Type: application/json

レスポンス形式

成功レスポンス

成功レスポンスは、データオブジェクトまたは配列を直接返します:

{ "template_id": "123456789", "template_name": "Example Template", ... }
              
              {
  "template_id": "123456789",
  "template_name": "Example Template",
  ...
}

            
このコードブロックはフローティングウィンドウ内に表示されます

またはリスト形式のレスポンス:

[ { "template_id": "123456789", "template_name": "Example Template", ... } ]
              
              [
  {
    "template_id": "123456789",
    "template_name": "Example Template",
    ...
  }
]

            
このコードブロックはフローティングウィンドウ内に表示されます

エラーレスポンス

エラーレスポンス形式:

{ "code": 400, "message": "エラーの説明" }
              
              {
  "code": 400,
  "message": "エラーの説明"
}

            
このコードブロックはフローティングウィンドウ内に表示されます

テンプレート設定インターフェース

1. テンプレート設定リストの取得

インターフェース説明: 現在のビジネスにおけるすべてのテンプレート設定リストを取得します。

リクエスト情報:

  • メソッド: GET
  • パス: /v1/template-configs
  • 認証: 必須

リクエストパラメータ: なし

レスポンス例:

[ { "template_id": "123456789", "template_name": "注文通知テンプレート", "template_type": "utility", "template_content": "ご注文番号 {order_no} は発送され、{delivery_time} までに到着予定です。", "country_codes": "CN,US", "status": 2, "sign_id": "987654321", "sign_name": "会社名", "sign_position": 2, "sign_status": 2, "audit_remark": "", "created_time": 1699000000, "updated_time": 1699000000 } ]
              
              [
  {
    "template_id": "123456789",
    "template_name": "注文通知テンプレート",
    "template_type": "utility",
    "template_content": "ご注文番号 {order_no} は発送され、{delivery_time} までに到着予定です。",
    "country_codes": "CN,US",
    "status": 2,
    "sign_id": "987654321",
    "sign_name": "会社名",
    "sign_position": 2,
    "sign_status": 2,
    "audit_remark": "",
    "created_time": 1699000000,
    "updated_time": 1699000000
  }
]

            
このコードブロックはフローティングウィンドウ内に表示されます

レスポンスフィールド説明:

フィールド名 説明
template_id string テンプレートID
template_name string テンプレート名
template_type string テンプレートタイプ: utility(通知)、marketing(マーケティング)
template_content string テンプレート内容
country_codes string 主な送信国コード(カンマ区切り)
status int ステータス: 1-審査中、2-承認済み、3-却下
sign_id string 署名ID(オプション)
sign_name string 署名名(オプション)
sign_position int 署名位置: 0-なし、1-プレフィックス、2-サフィックス(オプション)
sign_status int 署名ステータス(オプション)
audit_remark string 審査コメント
created_time int64 作成日時(Unixタイムスタンプ)
updated_time int64 更新日時(Unixタイムスタンプ)

2. テンプレート設定詳細の取得

インターフェース説明: テンプレートIDを指定してテンプレート設定の詳細情報を取得します。

リクエスト情報:

  • メソッド: GET
  • パス: /v1/template-configs/:templateId
  • 認証: 必須

パスパラメータ:

パラメータ名 必須 説明
templateId string 必須 テンプレートID

レスポンス例:

{ "template_id": "123456789", "template_name": "注文通知テンプレート", "template_type": "utility", "template_content": "ご注文番号 {order_no} は発送され、{delivery_time} までに到着予定です。", "country_codes": "CN,US", "status": 2, "sign_id": "987654321", "sign_name": "会社名", "sign_position": 2, "sign_status": 2, "audit_remark": "", "created_time": 1699000000, "updated_time": 1699000000 }
              
              {
  "template_id": "123456789",
  "template_name": "注文通知テンプレート",
  "template_type": "utility",
  "template_content": "ご注文番号 {order_no} は発送され、{delivery_time} までに到着予定です。",
  "country_codes": "CN,US",
  "status": 2,
  "sign_id": "987654321",
  "sign_name": "会社名",
  "sign_position": 2,
  "sign_status": 2,
  "audit_remark": "",
  "created_time": 1699000000,
  "updated_time": 1699000000
}

            
このコードブロックはフローティングウィンドウ内に表示されます

エラーレスポンス:

  • 400: テンプレートID形式エラーまたはテンプレートが存在しない
  • 500: サーバー内部エラー

3. テンプレート設定の作成

インターフェース説明: 新しいテンプレート設定を作成します。

リクエスト情報:

  • メソッド: POST
  • パス: /v1/template-configs
  • 認証: 必須

リクエストボディ:

{ "template_name": "注文通知テンプレート", "template_type": "utility", "template_content": "ご注文番号 {order_no} は発送され、{delivery_time} までに到着予定です。", "country_codes": "CN,US", "add_signature": true, "sign_id": "987654321", "sign_position": 2 }
              
              {
  "template_name": "注文通知テンプレート",
  "template_type": "utility",
  "template_content": "ご注文番号 {order_no} は発送され、{delivery_time} までに到着予定です。",
  "country_codes": "CN,US",
  "add_signature": true,
  "sign_id": "987654321",
  "sign_position": 2
}

            
このコードブロックはフローティングウィンドウ内に表示されます

リクエストフィールド説明:

フィールド名 必須 説明
template_name string 必須 テンプレート名(最大255文字)
template_type string 必須 テンプレートタイプ: utility(通知)、marketing(マーケティング)
template_content string 必須 テンプレート内容。以下の文字を含めることはできません: , , ,, テスト, test, [, ]
country_codes string 必須 主な送信国コード(カンマ区切り)
add_signature bool 任意 署名を追加するかどうか(デフォルトはfalse)
sign_id string 条件付き必須 add_signatureがtrueの場合に必須、署名ID
sign_position int 条件付き必須 add_signatureがtrueの場合に必須、署名位置: 1-プレフィックス、2-サフィックス

レスポンス例:

{ "template_id": "123456789" }
              
              {
  "template_id": "123456789"
}

            
このコードブロックはフローティングウィンドウ内に表示されます

レスポンスフィールド説明:

フィールド名 説明
template_id string 作成されたテンプレートID

エラーレスポンス:

  • 400: パラメータ形式エラー、パラメータ検証失敗、署名設定が存在しない、署名ステータスが承認されていない
  • 500: サーバー内部エラー

ビジネスルール:

  • 作成後、テンプレートは「審査中」ステータス(status=1)になります。
  • 署名を追加する場合、署名は承認済みステータスである必要があります。

4. テンプレート設定の更新

インターフェース説明: 既存のテンプレート設定を更新します。

リクエスト情報:

  • メソッド: PUT
  • パス: /v1/template-configs/:templateId
  • 認証: 必須

パスパラメータ:

パラメータ名 必須 説明
templateId string 必須 テンプレートID

リクエストボディ: 作成インターフェースと同じで、すべてのフィールドが必須です。

レスポンス例:

{ "code": 0, "message": "success" }
              
              {
  "code": 0,
  "message": "success"
}

            
このコードブロックはフローティングウィンドウ内に表示されます

エラーレスポンス:

  • 400: パラメータ形式エラー、テンプレートが存在しない、審査中のテンプレートは更新不可、保留中または実行中のプランがある場合は更新不可、署名設定が存在しない、署名ステータスが承認されていない
  • 500: サーバー内部エラー

ビジネスルール:

  • 審査中のテンプレートは更新できません。
  • 保留中または実行中のメッセージプランがテンプレートを使用している場合、更新できません。
  • 更新後、テンプレートステータスは「審査中」(status=1)に戻ります。

5. テンプレート設定の削除

インターフェース説明: 指定されたテンプレート設定を削除します。

リクエスト情報:

  • メソッド: DELETE
  • パス: /v1/template-configs/:templateId
  • 認証: 必須

パスパラメータ:

パラメータ名 必須 説明
templateId string 必須 テンプレートID

レスポンス例:

{ "code": 0, "message": "success" }
              
              {
  "code": 0,
  "message": "success"
}

            
このコードブロックはフローティングウィンドウ内に表示されます

エラーレスポンス:

  • 400: テンプレートID形式エラー、テンプレートが存在しない、保留中または実行中のプランがある場合は削除不可
  • 500: サーバー内部エラー

ビジネスルール:

  • 保留中または実行中のメッセージプランがテンプレートを使用している場合、削除できません。

シグネチャ設定インターフェース

1. シグネチャ設定リストの取得

インターフェース説明: 現在のビジネスにおけるすべてのシグネチャ設定リストを取得します。

リクエスト情報:

  • メソッド: GET
  • パス: /v1/sign-configs
  • 認証: 必須

リクエストパラメータ: なし

レスポンス例:

[ { "sign_id": "987654321", "sign_name": "会社名", "status": 2, "related_template_count": 5, "audit_remark": "", "created_time": 1699000000, "updated_time": 1699000000 } ]
              
              [
  {
    "sign_id": "987654321",
    "sign_name": "会社名",
    "status": 2,
    "related_template_count": 5,
    "audit_remark": "",
    "created_time": 1699000000,
    "updated_time": 1699000000
  }
]

            
このコードブロックはフローティングウィンドウ内に表示されます

レスポンスフィールド説明:

フィールド名 説明
sign_id string シグネチャID
sign_name string シグネチャ名
status int ステータス: 1-審査中, 2-承認済み, 3-却下
related_template_count int64 関連テンプレート数
audit_remark string 審査備考
created_time int64 作成時間 (Unixタイムスタンプ)
updated_time int64 更新時間 (Unixタイムスタンプ)

2. シグネチャ設定詳細の取得

インターフェース説明: シグネチャIDを指定してシグネチャ設定の詳細情報を取得します。

リクエスト情報:

  • メソッド: GET
  • パス: /v1/sign-configs/:signId
  • 認証: 必須

パスパラメータ:

パラメータ名 必須 説明
signId string はい シグネチャID

レスポンス例:

{ "sign_id": "987654321", "sign_name": "会社名", "status": 2, "related_template_count": 5, "audit_remark": "", "created_time": 1699000000, "updated_time": 1699000000 }
              
              {
  "sign_id": "987654321",
  "sign_name": "会社名",
  "status": 2,
  "related_template_count": 5,
  "audit_remark": "",
  "created_time": 1699000000,
  "updated_time": 1699000000
}

            
このコードブロックはフローティングウィンドウ内に表示されます

エラーレスポンス:

  • 400: 無効なシグネチャID形式、シグネチャが存在しない、または現在のビジネスに属していない。
  • 500: サーバー内部エラー。

3. シグネチャ設定の作成

インターフェース説明: 新しいシグネチャ設定を作成します。

リクエスト情報:

  • メソッド: POST
  • パス: /v1/sign-configs
  • 認証: 必須

リクエストボディ:

{ "sign_name": "会社名" }
              
              {
  "sign_name": "会社名"
}

            
このコードブロックはフローティングウィンドウ内に表示されます

リクエストフィールド説明:

フィールド名 必須 説明
sign_name string はい シグネチャ名、2~60文字、, , [, ] を含めることはできません

レスポンス例:

{ "sign_id": "987654321" }
              
              {
  "sign_id": "987654321"
}

            
このコードブロックはフローティングウィンドウ内に表示されます

レスポンスフィールド説明:

フィールド名 説明
sign_id string 作成されたシグネチャID

エラーレスポンス:

  • 400: パラメータ形式エラー、パラメータ検証失敗、またはシグネチャ名が既に存在する。
  • 500: サーバー内部エラー。

ビジネスルール:

  • 作成後のシグネチャのステータスは「審査中」(status=1) です。
  • 同一ビジネス内でシグネチャ名は重複できません。

4. シグネチャ設定の更新

インターフェース説明: 既存のシグネチャ設定を更新します。

リクエスト情報:

  • メソッド: PUT
  • パス: /v1/sign-configs/:signId
  • 認証: 必須

パスパラメータ:

パラメータ名 必須 説明
signId string はい シグネチャID

リクエストボディ: 作成インターフェースと同じ。

レスポンス例:

{ "code": 0, "message": "success" }
              
              {
  "code": 0,
  "message": "success"
}

            
このコードブロックはフローティングウィンドウ内に表示されます

エラーレスポンス:

  • 400: パラメータ形式エラー、シグネチャが存在しない、現在のビジネスに属していない、シグネチャステータスが審査中で更新不可、シグネチャ名が既に存在する、または保留中または実行中のプランがあり更新不可。
  • 500: サーバー内部エラー。

ビジネスルール:

  • 審査中のステータスのシグネチャは更新できません。
  • 保留中または実行中のメッセージプランで使用されている場合、更新できません。
  • 更新後、シグネチャのステータスは「審査中」(status=1) に戻ります。

5. シグネチャ設定の削除

インターフェース説明: 指定されたシグネチャ設定を削除します。

リクエスト情報:

  • メソッド: DELETE
  • パス: /v1/sign-configs/:signId
  • 認証: 必須

パスパラメータ:

パラメータ名 必須 説明
signId string はい シグネチャID

レスポンス例:

{ "code": 0, "message": "success" }
              
              {
  "code": 0,
  "message": "success"
}

            
このコードブロックはフローティングウィンドウ内に表示されます

エラーレスポンス:

  • 400: 無効なシグネチャID形式、シグネチャが存在しない、現在のビジネスに属していない、または保留中または実行中のプランがあり削除不可。
  • 500: サーバー内部エラー。

ビジネスルール:

  • 保留中または実行中のメッセージプランで使用されている場合、削除できません。

ステータスコード説明

テンプレート設定ステータス (status)

説明
1 審査中
2 承認済み
3 却下

シグネチャ設定ステータス (status)

説明
1 審査中
2 承認済み
3 却下

シグネチャ位置 (sign_position)

説明
0 シグネチャなし
1 プレフィックス
2 サフィックス

テンプレートタイプ (template_type)

説明
utility 通知
marketing マーケティング

エラーコード説明

エラーコード HTTPステータスコード 説明
0 200 成功
400 400 パラメータエラーまたはビジネスロジックエラー
500 500 サーバー内部エラー

共通エラーメッセージ:

  • invalid templateId: 無効なテンプレートID形式。
  • template config not exist: テンプレート設定が存在しません。
  • invalid signId: 無効なシグネチャID形式。
  • sign config not exist: シグネチャ設定が存在しません。
  • sign_name already exist: シグネチャ名が既に存在します。
  • can not update pending status template: 審査中のステータステンプレートは更新できません。
  • can not update pending status sign: 審査中のステータスシグネチャは更新できません。
  • there are pending or running plans using current template, can not update: 現在のテンプレートを使用している保留中または実行中のプランがあるため、更新できません。
  • there are pending or running plans using current sign, can not update: 現在のシグネチャを使用している保留中または実行中のプランがあるため、更新できません。
  • sign status is not approved, can not use: シグネチャステータスが承認済みでないため、使用できません。

注意事項

  1. すべてのインターフェースは認証ミドルウェア検証が必要です。
  2. すべてのインターフェースは認証されたユーザーのビジネスID (businessId) を自動的に関連付けます。
  3. テンプレートおよびシグネチャの作成および更新操作は審査プロセスをトリガーします。
  4. テンプレートまたはシグネチャがメッセージプランで使用されている場合、プランが保留中または実行中のステータスでは更新または削除できません。
  5. テンプレート内容には禁止文字 (, , , テスト, test, [, ]) を含めることはできません。
  6. シグネチャ名には禁止文字 (, , [, ]) を含めることはできません。
  7. テンプレートおよびシグネチャのIDは数値文字列です。
icon
お問い合わせ