利用終了の手順を選ぶ
事業でその登録が不要になった場合は、メッセージングブランドの利用を終了します。これは既存の登録の使用を停止する操作です。代わりの登録の作成、レンタル中の電話番号の解約、事業者の識別情報の修正は行いません。修正する場合に使用するのは、「メッセージングブランドを更新する」です。
公開されているブランドの DELETE 呼び出しと、ポータルの「ブランドを削除」操作では、処理範囲が異なります。公開呼び出しは、レジストリ内のブランドを一件削除します。ポータルは、電話番号の割り当て解除とキャンペーンの無効化を連携して行ってから、ブランドの削除を試みます。
| 手順 | 処理内容 |
|---|---|
| ポータル:「ブランドを削除」 | 関連するキャンペーンと割り当て済みの電話番号を表示し、確認のためにブランド ID の入力を求めます。その後、関連する整理処理を試みてからブランドを削除します。後の手順が失敗しても、それ以前の手順は完了した状態のまま残ることがあります。 |
| API: DELETE /tcr/v2/brand/{brandId} | このアカウントが所有する当該ブランドのみの削除を要求します。電話番号の割り当て解除や、そのブランドのキャンペーンの無効化は自動では行いません。有効なキャンペーンがあると、削除できない場合があります。 |
ポータルで影響を確認する
メッセージング登録ページを開き、対象のブランドを見つけて「ブランドを削除」を選択します。関連するキャンペーン数と割り当て済みの電話番号数を確認してください。ブランド ID を正確に入力すると、最後の操作を実行できるようになります。この顧客向けフォームは、アカウントに登録管理権限がある場合にのみ利用できます。
ポータルは有効なキャンペーンを順に処理します。現在割り当てられている各電話番号の割り当て解除を試み、キャンペーンを無効化した後、ブランドを削除します。すでに期限切れまたは削除済みと記録されているキャンペーンについては、リモート側での再削除を省略します。これらの外部処理が成功した後、データベーストランザクションでローカルのキャンペーンと電話番号のレコードを更新します。
この一連の処理は、レジストリ、通信事業者、ローカルレコードをまたぐ単一のアトミックなトランザクションではありません。後の処理が失敗しても、外部ですでに変更された電話番号やキャンペーンを元に戻すことはできません。割り当て解除済みの電話番号と無効化済みのキャンペーンの詳細が返された場合は保存してください。別のブランドを作成するのではなく、それらの識別子を使って状態を照合し、不整合を解消してください。
API による直接削除を準備する
許可された接続元 IP アドレスから、HTTPS 経由で有効な API アカウントを使用してください。ブランドはそのアカウントに属している必要があります。ブランドの ID と現在の状態を取得して保存し、キャンペーンと電話番号の割り当てを確認してください。ブランドを削除する前に、対象の電話番号の割り当てを解除し、キャンペーンの無効化を行ってください。この DELETE を連鎖削除の操作として扱わないでください。
curl --silent --show-error --fail-with-body --user "$API_USER:$API_PASSWORD" \
"https://api.multitel.net/tcr/v2/brand/$BRAND_ID"確認済みのブランドを削除する
ブランド ID を確認し、前述の整理処理を完了したうえで、意図した利用終了の場合に限り、以下を実行してください。リクエストの JSON 本文はありません。
curl --silent --show-error --fail-with-body --user "$API_USER:$API_PASSWORD" \
--request DELETE \
--header "Idempotency-Key: $IDEMPOTENCY_KEY" \
"https://api.multitel.net/tcr/v2/brand/$BRAND_ID"ドキュメントに記載された成功時の結果は HTTP 204 で、レスポンス本文はありません。JSON の成功オブジェクトや、旧 v3 の status/response エンベロープを必須としないでください。2xx 以外の拒否結果では、現在の API 同期経路を通じてブランドが削除済みと記録されることはありません。
意図したリクエストには同じ冪等性キーを使用してください。再送時には、メソッド、パス、クエリ、本文のバイト列を変更しないでください。このキーによってポータルの整理処理全体がアトミックになるわけではなく、通信事業者側で電話番号の割り当てが解除されたことを証明するものでもありません。処理中のリクエストと重複する場合は、Retry-After を伴う 409 が返されることがあります。完了済みのリクエストでは、エラーも含め、保存されたレスポンスが再び返されることがあります。
利用終了を確認し、部分的な処理結果を照合する
操作後に、ポータルのブランド一覧とキャンペーン一覧、および対象の電話番号を確認してください。公開 API の成功時の同期処理は、該当ブランドをローカルで削除済みと記録します。他のキャンペーンリソースの削除や、購入済み電話番号の割り当て解除は行いません。レジストリの状態、通信事業者側の割り当て、ローカルの表示は、それぞれ別に確認する必要があります。
現在のポータルの通信事業者アダプターは、本文内のすべての業務ステータス値を個別に検証せずに、HTTP の成功レスポンスを受け入れます。そのため、ポータルが成功を報告した場合でも、整理処理後に対象の電話番号の実際のキャンペーン割り当てを確認してください。割り当てや状態に不整合がある場合は、対象の ID を保存し、利用終了した設定で送信したり、その設定を再作成したりする前にサポートへお問い合わせください。
HTTP 400 の場合は、レジストリの詳細なエラー、特に有効なキャンペーンによる制限を確認してください。401、403、404 の場合は、認証情報、許可された接続元 IP、アカウントの所有関係を確認してください。429 の場合は、Retry-After の指示に従ってください。外部での変更が完了した後に、タイムアウト、500、502 が発生することがあります。リクエストを繰り返す前に、既存の登録を確認してください。
アカウントに残る料金を確認する
現在の DELETE サービスは、ブランド登録料の即時引き落とし処理を送出しません。ブランドを削除しても、レンタル中の電話番号の解約、返金、アカウントの最終残高の確定は行われません。既存のキャンペーンに関する契約上の支払義務、電話番号のレンタル料、利用料金をポータルで確認してください。この操作は、それらの別個のサービスの料金見積もりではありません。