日本語
テストとアカウント運用のためにimoのSMSコードを受信する
チームは、OTP Gatewayでimoサービス用のワンタイム番号を注文し、その番号をimoに入力して、ダッシュボードまたはAPIポーリングと署名付きWebhookでコードを読み取ることで、OTP Routeからimoの認証コードを受信できます。料金は1コードあたり$0.20 からで、20分の受付時間内にSMSが届かなかった注文は自動的に返金されます。
状況:自社プロダクトがimoに関わり、テストのたびに電話番号が必要になる
imoは、電話番号でアカウントを識別するメッセージング・音声/ビデオ通話アプリです。新規登録やアカウントの新しい端末への移行では、SMSでワンタイムコードが送られます。ユーザーにとっては簡単な仕組みですが、チームにとっては厄介です。imoと連携する機能やサポート業務、市場テストを行う場合、試行のたびに受信できる番号が必要になるからです。
社員の携帯電話を使うと私用の番号と業務アカウントが混ざり、国ごとのテストマトリクスにも対応できません。OTP Gatewayのワンタイム番号なら、コード1件分だけを処理し、私用の番号を巻き込まず、コードからでも手作業でも注文できます。全体的なパターンはモバイルアプリ認証のページで解説しています。
imoのOTPコードはどの国で受信できますか?
imoサービスは現在197か国で利用できます。例として、インド、パキスタン、バングラデシュ、ネパール、サウジアラビア、アラブ首長国連邦、エジプト、ナイジェリア、ケニア、インドネシア、フィリピン、ドイツ、ベルギー、イギリス、アメリカ、カナダなどがあります。
テストしたいケースに合う国を選んでください。たとえばサポートチームが南アジアのお客様に対応しているなら、その地域の番号を使えば、SMSの言語やサービス側の地域別チェックも含め、お客様が目にする流れを再現できます。国の一覧から全ルートを確認できます。
imo認証コードAPIのフローはどのように動きますか?
Developerコンソールで、Bearerキー(プレフィックスor_live_、1アカウントにつき最大10個)を作成し、https://otproute.com/api/v1を呼び出します。上限は1分あたり300リクエストです。
GET /api/v1/servicesとGET /api/v1/countriesでIDを調べます。サービスIDはimoです。GET /api/v1/prices?country=pk&service=imoで、その組み合わせの料金を確認します。POST /api/v1/activationsに{"service": "imo", "country": "pk"}を渡して注文し、返されたアクティベーションIDを保存します。- 返された番号をimoの登録画面に入力します。
activation.sms_receivedのWebhookでコードを受け取ります。公開エンドポイントを用意できない場合は、GET /api/v1/activations/{id}をポーリングします。
Webhookでは、X-OTPRoute-Signature: t=<unix>,v1=<hex>を検証します。エンドポイントのシークレットで"<t>.<raw body>"のHMAC-SHA256を計算し、古いタイムスタンプは拒否してください。再送されても1回だけ処理されるよう、アクティベーションIDをキーにしてハンドラーを冪等にします。詳しいスキーマはドキュメントにあります。
ダッシュボードからimoの番号を注文することもできますか?
はい、できます。メールアドレスと6桁のメール認証コード、またはGoogleサインインで登録し、TOTP二要素認証を有効にします。ウォレットにチャージして、imoと国を選び、表示された料金を確認して確定します。番号をimoに入力すると、コードが届き次第ダッシュボードに表示されます。コードを書かずに1回だけ認証したいサポート担当者や代理店のアカウント管理者に向いています。
imoのコードが届かないのはなぜですか?どうすればよいですか?
各アクティベーションは20分間有効で、料金が発生するのはコードが届いた場合だけです。期限切れまたはキャンセルされた注文は、自動的にウォレットへ全額返金されます。
コードが届かない原因はよくあるものです。imoが仮想番号を拒否する場合がある、ルートが混み合っている、過去に見た番号に対してサービス側が追加チェックを行うことがある、などです。その場合は次のように対応してください。
- 早めにキャンセルせず、受付時間が終わるまで待つ。
- 時間をおいて再試行するか、テストに合う別の国のルートを試す。
- 再試行には間隔と上限を設ける。imoの新規注文を立て続けに出しても試行回数を消費するだけです。
imoでDedicated Numberが適しているのはどのような場合ですか?
imoはアカウントを電話番号に紐づけるため、ワンタイム番号では、同じアカウントを別の端末でサインインしたときに届く後続のコードを受け取れません。サポート回線、共有の運用アカウント、使い続ける必要があるステージング環境のログインには、Dedicated Numberが適しています。提供地域はアメリカとカナダのみで、月額$1.95 からです。受信SMSはダッシュボードに表示され、number.sms_received経由でWebhookにも転送されます。更新と解約については専用番号のページをご覧ください。
責任ある利用と課金について
imoの利用規約に従ってください。アカウントは実在の個人または事業者につき1つとし、大量登録や偽の登録は行わないでください。OTP Routeは、自社プロダクトのフローのテストと正当なアカウントの運用のためのもので、利用規約にあたるAcceptable Use Policyが適用されます。imoは各権利者の商標であり、OTP Routeとは提携関係にありません。
課金は、月額料金のない従量制の前払いUSDウォレット1つで行います。カードまたはUSDT/USDCでチャージでき、チャージのたびにPDFの請求書がメールで届くため、imoのテスト費用も管理しやすくなります。開発アカウントは、申請によりサンドボックスに切り替えられ、シミュレートされた番号とコードでエンドツーエンドのテストができます。
よくある質問
APIでimoのOTPを受信するにはどうすればよいですか?
{"service": "imo", "country": "<id>"}でアクティベーションを作成し、番号をimoに入力して、WebhookまたはGET /api/v1/activations/{id}からコードを読み取ります。
自分の国でimoのSMS認証をテスト用に使えますか?
imoは現在197か国で提供されています。最新の対応状況はGET /api/v1/countriesまたはダッシュボードで確認してください。
imoは毎回仮想番号を受け付けますか?
いいえ。imoが一部の仮想番号を拒否することがあります。そのため、コードが届かない注文は20分後に全額返金されます。
OTP Routeのimo用電話番号はいくらですか?
国によって異なりますが、1コードあたり$0.20 からです。最新の料金はGET /api/v1/pricesで取得できます。
ワンタイム番号で、後から同じimoアカウントに再ログインできますか?
確実ではありません。ワンタイム番号は1つのコードしか処理しないためです。再度サインインが必要なアカウントには、アメリカまたはカナダのDedicated Numberを使ってください。
WebhookでimoのOTP配信が重複した場合はどう処理すればよいですか?
署名を検証したうえで、アクティベーションIDごとに1回だけ処理します。再送されても同じ処理が繰り返されません。
この方法でimoのアカウントを複数作成できますか?
imoの規約の範囲内で、お客様が代表する実在の個人または事業者のアカウントに限られます。大量登録や偽の登録は認められていません。
サービス名はそれぞれの所有者の商標です。OTP Route はこれらの企業と提携していません。番号は合法的にご利用いただき、各サービスの利用規約および当社の利用規定に従ってください。