APIドキュメント

Paymanをアプリに統合するために必要な全ての情報。

はじめに

Payman APIはJSON形式のREST APIです。すべてのリクエストはHTTPS経由でhttps://payman33.com/v1に送信されます。

認証

アカウント作成時に受け取ったアクセストークンをBearerトークンとして送信してください。このトークンは一度しか表示されず再発行できないため、秘密に保持しクライアントサイドのコードに含めないでください。

Authorization: Bearer pm_live_xxxxxxxxxxxxxxxx

メッセージ送信

POST /messages

フィールドタイプ説明
tostring[]E.164形式の受信者。1リクエストあたり最大10,000件。
textstringメッセージ本文:1SMS、最大160文字(GSM-7)、または他の文字や絵文字を含む場合は70文字まで。それ以上の長さのテキストは拒否されます。
schedule_atstringオプション。後で送信するISO-8601形式の時刻(最大30日先まで)。
callback_urlstringオプション。配信レポートを受信する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コード意味
400invalid_requestフィールド不足または形式不正。
401unauthorizedAPIキー不足または無効。
402insufficient_balance送信を続けるには入金が必要です。
403verification_required未認証アカウントは本日の受信者制限に達しました。
404not_foundアカウントに該当するメッセージはありません。
429rate_limitedリクエスト過多。Retry-Afterヘッダー後に再試行してください。

レート制限

デフォルトの制限は1アカウントあたり1秒間に50リクエストです。大規模なキャンペーンには一括送信(toに複数の番号)を使用してください。未認証アカウントは1日あたり最大500件の受信者に送信できます。