はじめに
Payman APIはJSON形式のREST APIです。すべてのリクエストはHTTPS経由でhttps://payman33.com/v1に送信されます。
認証
アカウント作成時に受け取ったアクセストークンをBearerトークンとして送信してください。このトークンは一度しか表示されず再発行できないため、秘密に保持しクライアントサイドのコードに含めないでください。
Authorization: Bearer pm_live_xxxxxxxxxxxxxxxxメッセージ送信
POST /messages
| フィールド | タイプ | 説明 |
|---|---|---|
to | string[] | E.164形式の受信者。1リクエストあたり最大10,000件。 |
text | string | メッセージ本文:1SMS、最大160文字(GSM-7)、または他の文字や絵文字を含む場合は70文字まで。それ以上の長さのテキストは拒否されます。 |
schedule_at | string | オプション。後で送信するISO-8601形式の時刻(最大30日先まで)。 |
callback_url | string | オプション。配信レポートを受信するHTTPS URL。 |
{
"id": "msg_01J9Z3K8V2",
"status": "queued",
"recipients": 1,
"segments": 1,
"cost": 0.0063
}
安全に再試行するにはIdempotency-Keyヘッダーを追加してください:24時間以内の同じキーは再送信せず元の応答を返します。
メッセージステータス
GET /messages/{id}
ステータス: queued → sent → delivered または failed。予約メッセージは送信されるまでscheduled状態です。POST /messages/{id}/cancelでキャンセル可能(返金あり)。
ウェブフック
配信レポートはcallback_urlにPOSTされます。各リクエストにはX-Payman-Signatureヘッダー(本文のHMAC-SHA256、ウェブフックシークレットで検証可能)が含まれます。配信失敗時は最大3回再試行されます。
{
"id": "msg_01J9Z3K8V2",
"to": "+14155550123",
"status": "delivered",
"delivered_at": "2026-10-09T08:12:03Z"
}残高
GET /balance
現在のUSDT残高を返します。料金はUSD表示、1 USDT = 1 USDです。
エラー
| HTTP | コード | 意味 |
|---|---|---|
| 400 | invalid_request | フィールド不足または形式不正。 |
| 401 | unauthorized | APIキー不足または無効。 |
| 402 | insufficient_balance | 送信を続けるには入金が必要です。 |
| 403 | verification_required | 未認証アカウントは本日の受信者制限に達しました。 |
| 404 | not_found | アカウントに該当するメッセージはありません。 |
| 429 | rate_limited | リクエスト過多。Retry-Afterヘッダー後に再試行してください。 |
レート制限
デフォルトの制限は1アカウントあたり1秒間に50リクエストです。大規模なキャンペーンには一括送信(toに複数の番号)を使用してください。未認証アカウントは1日あたり最大500件の受信者に送信できます。