Logo
Logo
CTRLK

API を介した番号検索

API で番号参照を使用するには、 番号検索 APIを使用します。

次に、要求と応答の例を示します。

リクエスト例:

json
1 
2 {
3 "to": [
4 "41793026727"
5 ]
6 }

toパラメータは、チェックするすべての数値のリストです。

応答例:

json
1 
2 {
3 "results":[
4 {
5 "to":"41793026727",
6 "mccMnc":"22801",
7 "imsi":"228012120181810",
8 "originalNetwork":{
9 "networkPrefix":"79",
10 "countryPrefix":"41"
11 },
12 "ported":false,
13 "roaming":false,
14 "status":{
15 "groupId":3,
16 "groupName":"DELIVERED",
17 "id":5,
18 "name":"DELIVERED_TO_HANDSET",
19 "description":"Message delivered to handset"
20 },
21 "error":{
22 "groupId":0,
23 "groupName":"OK",
24 "id":0,
25 "name":"NO_ERROR",
26 "description":"No Error",
27 "permanent":false
28 }
29 }
30 ]
31 }
情報

パッケージによっては、一部の情報にアクセスできない場合があります。パッケージの変更については、アカウントマネージャーにお問い合わせください。

この方法と、通知 URL での番号検索結果の受信の詳細については、「 番号検索同期要求」を参照してください。

同期と非同期

番号番号検索は、データベース内の電話番号に関する情報を提供します。その情報を取得するには、次の 2 つの方法があります。

  • 同期
  • 非同期

同期 API API 呼び出しにより、アプリケーションが API 呼び出しから応答を受信する前に番号検索が行われます。つまり、アプリケーション コードで HTTP 応答の時間を処理できるため、ユーザーは NC 参照応答の待機をアプリ内の待機時間やパフォーマンスの遅延として認識しません。

同期 API 呼び出しは、API 応答が受信されたときにのみ正しく実行されるコードがアプリにある場合に便利です。

json
1 
2 POST /number/1/query HTTP/1.1
3 Host: api.infobip.com
4 Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
5 Content-Type: application/json
6
7 {
8 "to":[
9 "41793026727",
10 "41793026728",
11 "41793026729"
12 ]
13 }

番号検索の結果は、応答で直接受信されます。

json
1 
2 HTTP/1.1 200 OK
3 Content-Type: application/json
4
5 {
6 "results":[
7 {
8 "to":"41793026727",
9 "mccMnc":"22801",
10 "originalNetwork":{
11 "networkPrefix":"79",
12 "countryPrefix":"41"
13 },
14 "ported":false,
15 "roaming":false,
16 "status":{
17 "groupId":2,
18 "groupName":"UNDELIVERABLE",
19 "id":9,
20 "name":"UNDELIVERABLE_NOT_DELIVERED",
21 "description":"Message sent not delivered"
22 },
23 "error":{
24 "groupId":1,
25 "groupName":"HANDSET_ERRORS",
26 "id":27,
27 "name":"EC_ABSENT_SUBSCRIBER",
28 "description":"Absent Subscriber",
29 "permanent":false
30 }
31 }
32 ]
33 }

非同期 呼び出しは、番号検索が実行されるのを待たずに API 呼び出し応答が返されます。番号番号検索が完了すると、コールバック関数が実行され、リクエストで指定したnotifyUrlに番号検索情報が送信されます。

json
1 
2 POST /number/1/notify HTTP/1.1
3 Host: api.infobip.com
4 Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
5 Content-Type: application/json
6
7 {
8 "to":[
9 "41793026727",
10 "41793026728",
11 "41793026729"
12 ],
13 "notifyUrl":"http://example.com/notifyUrl",
14 "notifyContentType":"application/json"
15 }

データベースのクリーニング

顧客にプロモーションメッセージを送信し、配信レポートを分析した場合、電話番号データベースに無効な番号が多数あることに気付く可能性があります。電話番号番号検索を使用して電話番号データベースをクリーンアップできます。

データベースをクリーンアップするには、データベース クリーニング パッケージ を用意し、HTTP POST 要求で番号検索を実行する必要があります。

json
1 
2 POST /number/1/query HTTP/1.1
3 Host: api.infobip.com
4 Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
5 Content-Type: application/json
6
7 {
8 "to":["41793026834"]
9 }

この例では、わかりやすくするために、電話番号を 1 つだけ使用しました。パッケージに応じて、応答は次のようになります。

json
1 
2 HTTP/1.1 200 OK
3 Content-Type: application/json
4
5 {
6 "results":[
7 {
8 "to":"41793026834",
9 "mccMnc":"22801",
10 "imsi":"228012123477789",
11 "originalNetwork":{
12 "networkPrefix":"79",
13 "countryPrefix":"41"
14 },
15 "ported":false,
16 "roaming":false,
17 "status":{
18 "groupId":3,
19 "groupName":"DELIVERED",
20 "id":5,
21 "name":"DELIVERED_TO_HANDSET",
22 "description":"Message delivered to handset"
23 },
24 "error":{
25 "groupId":0,
26 "groupName":"OK",
27 "id":0,
28 "name":"NO_ERROR",
29 "description":"No Error",
30 "permanent":false
31 }
32 }
33 ]
34 }

番号番号検索応答で受信する情報から、電話番号が有効かどうかを検出できます。

パッケージごとに使用可能なパラメーターのリスト、および使用可能なステータスのリストについては、「 番号検索 」を参照してください。

たとえば、30 個の電話番号が無効で 70 個の電話番号が有効であるため、30 個の無効な電話番号をデータベースから削除することにします。これにより、SMS送信コストを最大30%節約でき、同じ予算でより多くのアクティブな購読者を招待できます。