Detailed global phone number and subscriber data intelligence to strengthen authentications, evaluate fraud risks, and enhance the user experience.
TMT Analysis is the leading provider of global mobile numbering intelligence.
Our data powers many of the worlds leading identity providers, A2P SMS Messaging companies and financial services organisations, delivering actionable insights that enhance and protect every stage of the customer experience.
Mobile number data intelligence can help strengthen and validate the user verification process, reduce fake accounts, improve conversions with customers and even determine the optimal channel for message delivery.
format required | string Currently only ‘json’ is implemented. |
key required | string The API key (obtained from https://viteza.tmtanalysis.com or from Support during customer on-boarding). |
secret required | string The API secret (obtained from https://viteza.tmtanalysis.com or from Support during customer on-boarding). |
number required | string The number in E.164 format. |
{- "40721275636": {
- "cic": "4018760",
- "error": 0,
- "imsi": "22603",
- "mcc": "226",
- "mnc": "03",
- "network": "Telekom Romania Mobile (Cosmote)",
- "number": 40721275636,
- "ported": true,
- "present": "yes",
- "status": 0,
- "status_message": "Success",
- "type": "mobile",
- "trxid": "CFIRa10"
}
}
The parameters for the communication are:
ENUM resolution operates in the same way as a reverse DNS lookup. To perform the lookup, the E.164 number must be transformed as follows:
After transforming the number, perform a DNS lookup looking for NAPTR records:
$ dig -t naptr @TMTIP 0.6.0.0.1.6.6.6.7.0.4.live.tmtvelocity.com
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 40696
;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;0.6.0.0.1.6.6.6.7.0.4.live.tmtvelocity.com. IN NAPTR
A successful query will return a NAPTR Record with a tel-uri format.
Example:
;; ANSWER SECTION:
0.6.0.0.1.6.6.6.7.0.4.live.tmtvelocity.com. 3600 IN NAPTR 10 100 "u"
"E2U+pstn:tel"
"!^(.*)$!tel:\\1\;npdi\;np=no\;rn=\;cic=4018720\;cc=ro\;cn=VODA\;nt=mobile\;mcc=226\;mnc=01\;imsi=22601\;pres=yes\;roaming=yes\;rmcc=310\;rmnc=02\;e=0!" .
The parameters returned are based on RFC4694:
Unsuccessful queries will be responded to with status NXDOMAIN and a blank answer section.
Example:
$ dig -t naptr @TMTIP 0.6.0.0.1.6.6.6.1.0.4.live.tmtvelocity.com
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 19974
;; flags: qr aa rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0
;; WARNING: recursion requested but not available
;; QUESTION SECTION:
;0.6.0.0.1.6.6.6.1.0.4.live.tmtvelocity.com. IN NAPTR
The parameters for the communication are:
ENUM resolution for the SIP Schema format works in exactly the same way as described above, apart from the modified domain name. Therefore, for the same number as above the question section would now be as shown:
;; QUESTION SECTION:
;0.6.0.0.1.6.6.6.7.0.4.live-sip.tmtvelocity.com. IN NAPTR
A successful query will return a NAPTR Record with a sip-uri in the format sip:+msisdn@ims.mnc.mcc.3gppnetwork.org.
Example:
;; ANSWER SECTION:
0.6.0.0.1.6.6.6.7.0.4.live-sip.tmtvelocity.com. 3600 IN NAPTR 10 100 "u"
"E2U+SIP"
"!^(.*)$!sip:+40766610060@ims.mnc01.mcc226.3gppnetwork.org\;ported=0\;roaming=0\;imsi=22601999XXXXXXX\;absent=0\;gsmcode=0\;user=phone!”.
The parameters to be taken into consideration are:
Unsuccessful queries will be responded to with status NXDOMAIN and a blank answer section.
Example:
$ dig -t naptr @TMTIP 0.6.0.0.1.6.6.6.1.0.4.live-sip.tmtvelocity.com
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 19974
;; flags: qr aa rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0
;; WARNING: recursion requested but not available
;; QUESTION SECTION:
;0.6.0.0.1.6.6.6.1.0.4.live-sip.tmtvelocity.com. IN NAPTR
As stated above, the error field can contain multiple possible numeric values, which may indicate either that the query has not completed or in some cases can provide more information around the subscriber. The table below lists the possible error conditions:
Code (dec) | Code (hex) | Description |
---|---|---|
1 | 1 | Unknown subscriber: The number is not allocated. |
2 | 2 | The owning network cannot be reached. |
3 | 3 | The network cannot reach the number. |
4 | 4 | The location of the number is not known to the network. |
5 | 5 | The number, as published in HLR, in not known to the MSC. |
6 | 6 | The number is absent for SM. |
7 | 7 | Unknown equipment. |
8 | 8 | Roaming not allowed. |
9 | 9 | Illegal subscriber. |
10 | 0xA | Bearer service not provisioned. |
11 | 0xB | Tele-service not provisioned. |
12 | 0xC | Illegal equipment. |
13 | 0xD | Call barred. |
21 | 0x15 | Facility not supported. |
27 | 0x1B | Phone switched off. |
28 | 0x1C | Incompatible terminal. |
31 | 0x1F | The subscriber is busy. |
32 | 0x20 | The delivery of the SM has failed. |
33 | 0x21 | A congestion (a full waiting list) occurred. |
34 | 0x22 | System failure. |
35 | 0x23 | Missing data. |
36 | 0x24 | Data error. |
See this section for more specific guidelines on the use and interpretation of the error codes.
For each country provisioned, an ‘operators’ file is provided during the provisioning process. Whenever changes occur in the list of operators for a provisioned country, an update is sent by TMT Analysis support to our Customers with the revised ‘operators’ file.
The files contain the following fields, separated by “;”:Example:
filename SK_operators_Live.csv
4219920;O2;231;06
4219900;Slovak Telekom;231;02
4219910;ORANGE;231;01