Twilio上で電話番号に住所を登録する方法

はじめに

みなさん、こんにちは。
Twilioエバンジェリストの高橋です。

本ブログでは、Twilio上で購入した電話番号に住所情報を登録する方法を解説します。

住所登録の背景

現在、電話番号に関して世界各国で規制が強化されつつあり、2019/4/11にニュースでもお知らせしたように、Twilioでは日本を含めた13カ国について、電話番号の取得に際して住所の確認が必要になります。日本においては、少なくとも住所の登録だけはしておかないと、管理コンソールならびに、REST API経由での電話番号の購入ができないようになりました。

 

住所登録をしていない状態で電話番号を購入しようとすると、管理コンソールでは以下の画面が表示されます。

 

 

また、REST API経由では以下のエラーが返ります。

 

{
  "code": 21613,
  "message": "PhoneNumber Requires an Address",
  "more_info": "https://www.twilio.com/docs/errors/21613",
  "status": 400
}

住所の登録方法

住所登録は以下の2つの方法で実施が可能です。

  • 管理コンソール上で登録する
  • REST APIを使って登録する

 
なお、住所登録はマスターアカウントだけでなく、サブアカウント単位で必要になりますので、サブアカウントをお持ちの方はそれぞれのアカウントごとに以下の手順が必要となります。

管理コンソール上で登録する

  • 管理コンソールにログインをします。
  • スライドメニューから電話番号(Phone Numbers)を選択します。
  • 電話番号メニューの中から、Regulatory Complianceの中の住所を選択します。
  • Add new Addressボタンを押します。

 

 

  • New Addressダイアログが表示されるので、それぞれの項目に住所情報をいれていきます。なお、日本語での登録も可能ですが、会社名欄は全角で21文字までしか入りませんので、長い会社名については英語で入力しておいたほうがよいでしょう。

 

 

  • Createボタンを押すと住所が登録されます。

 

 

住所登録が完了しているアカウントでは、電話番号の購入時に規制情報として先程作成した住所が選択できるようになります。

 

 

また、すでに購入済みの電話番号に関しても、先程登録した住所を割り当てることができます(これは自動では行われないため、すべての番号に対して個別で行う必要があります).

REST APIを使って登録する

ドキュメントはこちらにあります。

CURLを使って登録するサンプルは以下のとおりです(AccountSidとAuthTokenは、ご自分のアカウントに合わせて設定してください)。

 

curl -X POST https://api.twilio.com/2010-04-01/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Addresses.json \
--data-urlencode "FriendlyName=HeadOffice" \
--data-urlencode "CustomerName=KDDI Web Communications Inc." \
--data-urlencode "Street=2-26-1 Minamiaoyama" \
--data-urlencode "City=Minato-ku" \
--data-urlencode "Region=Tokyo" \
--data-urlencode "PostalCode=1070062" \
--data-urlencode "IsoCountry=JP" \
-u ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX:your_auth_token

 

登録された住所の一覧は、以下のREST APIで取得することができます。

 

curl -X GET ‘https://api.twilio.com/2010-04-01/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Addresses.json?PageSize=20’ 
-u ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX:your_auth_token

 

一覧に表示された住所のSid(ADから始まる文字列)は、REST API経由で電話番号を操作する際に利用できます。電話番号を新規で購入する場合も、このSidをAddressSidに指定してください。

住所情報と電話番号の紐付け

住所登録は購入する電話番号ごとに必要になるため、すでに購入済みの番号ごとにRegulatory Informationのタブが用意されています。

 

 

2019年9月10日までに購入済みの日本の電話番号に関しては、当面は住所情報等が正しく登録されていなくとも規制(発着信規制や番号の停止などを含む)の対象にはならないとアナウンスされていますが、いずれ規制がかかります。また、日本以外で住所登録が必要となる国に関しては、2019年9月10日までに住所情報を登録するようにとアナウンスが出ています。

 
参考情報:
IncomingPhoneNumber API に関するスケジュール変更のお知らせ

 

最後に、すでに購入済みの電話番号に対して、APIを使って登録した住所情報(AddressSid)を割り当てるコードを載せておきます(Node.jsでのコードになりますので、Node.jsの環境が必要です)。

 

const accountSid = 'ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX';
const authToken = 'your_auth_token';
const client = require('twilio')(accountSid, authToken);

// 更新したい住所SID
let addressSid = 'ADXXXXXXXXXXXXXXXXXXXXXXXXXX';

client.incomingPhoneNumbers
.list()
.then(async (incomingPhoneNumbers) => {
    for (number of incomingPhoneNumbers) {
        console.log(`Executing: ${number.sid}`);
        await client.incomingPhoneNumbers(number.sid)
        .update({
            addressSid: addressSid
        })
        .then(res => {
            console.log(`Updated. ${res.sid} => ${res.addressSid}`);
        })
        .catch(err => {
            console.log(`Error. ${err}`);
        });
    };
});

 

まとめ

現在、世界各国で電話番号に関する規制が強化されつつあり、今回の仕様変更もそれに伴うものです。今後はさらに、住所を確認するための書類の提出(Bundle SIDの登録)も必須となりますので、予め住所を証明する書類などを準備しておくことをおすすめします。
 

Bundle SIDの登録方法については、以下の記事を参照してください。
TwilioでBundles(本人認証)の設定を行う(個人編)

この記事をシェア

すべての記事へ

Other

【法人のお客様向け】取引時確認情報の登録方法について

Other

【個人のお客様向け】取引時確認情報の登録方法について

Other

TRUSTDOCKアプリを用いた個人認証の方法

Other

【法人のお客様向け】API経由でBundleSidを登録する

Other

【法人のお客様向け】TwilioでBundles(本人認証)の設定を行う

Other

【個人のお客様向け】TwilioでBundles(本人認証)の設定を行う