import requests
response = requests.get(
"https://api.tracklysms.com/api/v2/number-requests/international-requirements",
headers={"X-Api-Key": "trk_your_api_key_here"},
params={"countryCode": "CA", "phoneNumberType": "toll_free"},
)
{
"requirements": [
{
"key": "companyName",
"label": "Company legal name",
"type": "text",
"required": true,
"validation": {
"maxLength": 255
}
},
{
"key": "proofOfBusinessRegistration",
"label": "Proof of business registration",
"type": "document",
"required": true,
"documentTypes": ["BUSINESS_REGISTRATION"]
}
]
}
{
"requirements": []
}
Number Requests (v2)
Look Up International Requirements
Discover provider form and document requirements before creating a non-US number request.
GET
/
v2
/
number-requests
/
international-requirements
import requests
response = requests.get(
"https://api.tracklysms.com/api/v2/number-requests/international-requirements",
headers={"X-Api-Key": "trk_your_api_key_here"},
params={"countryCode": "CA", "phoneNumberType": "toll_free"},
)
{
"requirements": [
{
"key": "companyName",
"label": "Company legal name",
"type": "text",
"required": true,
"validation": {
"maxLength": 255
}
},
{
"key": "proofOfBusinessRegistration",
"label": "Proof of business registration",
"type": "document",
"required": true,
"documentTypes": ["BUSINESS_REGISTRATION"]
}
]
}
{
"requirements": []
}
Returns the current allowlisted provider requirements for one target country and number type. Use this at number selection time, then create the request and persist answers with Update International Requirements.
US and 10DLC lookup return an empty
requirements array. Canadian toll-free lookup is active and uses the carrier toll-free number type.
Query parameters
string
required
ISO 3166-1 alpha-2 number target country.
string
required
Number type, such as
toll_free.Response
array
Provider requirements. Each entry may contain:
key: exact wire key used for form values or documents;label: display label;type: provider input type;required: whether a value is required;documentTypes: accepted provider document categories;validation: allowlisted format, length, range, or allowed-value metadata.
The returned schema is provider-owned and can differ by country or number type. Do not infer unknown keys or substitute Business Profile documents.
Example
import requests
response = requests.get(
"https://api.tracklysms.com/api/v2/number-requests/international-requirements",
headers={"X-Api-Key": "trk_your_api_key_here"},
params={"countryCode": "CA", "phoneNumberType": "toll_free"},
)
{
"requirements": [
{
"key": "companyName",
"label": "Company legal name",
"type": "text",
"required": true,
"validation": {
"maxLength": 255
}
},
{
"key": "proofOfBusinessRegistration",
"label": "Proof of business registration",
"type": "document",
"required": true,
"documentTypes": ["BUSINESS_REGISTRATION"]
}
]
}
{
"requirements": []
}
Error codes
| HTTP | Code | Meaning |
|---|---|---|
| 400 | target_country_invalid | countryCode is missing or malformed. |
| 400 | phone_number_type_invalid | Number type has no requirements mapping. |
| 401 | invalid_credentials | API key is missing or invalid. |
| 422 | unsupported_target_country | Target is outside provisioning coverage. |
| 503 | acquisition_requirements_unavailable | Provider requirements are temporarily unavailable. Retry later. |
Next steps
Create Number Request
Submit the complete request-owned identity
Update Requirements
Save form values and request-scoped documents