Phone & voice · Phone Numbers
Fetches a KYC form spec.
GET
https://api.pozy.ai/v1/phone-numbers/kycgetPhoneNumberKycForm
Guides: KYC for regulated countries, Phone numbers
Request
Send your API key as Authorization: Bearer pz_live_.... Read-only keys can call it. Keys with the telephony resource group disabled get 403 resource_group_disabled. Authentication
Query parameters
| Name | Type | Notes |
|---|---|---|
countryrequired | string | |
numberType | string | One of local, mobile, national, toll_free |
Example
curl -X GET "https://api.pozy.ai/v1/phone-numbers/kyc?country=US" \
-H "Authorization: Bearer $POZY_API_KEY"const res = await fetch("https://api.pozy.ai/v1/phone-numbers/kyc?country=US", {
headers: { Authorization: `Bearer ${process.env.POZY_API_KEY}` },
});
const data = await res.json();
if (!res.ok) throw new Error(data?.error ?? `Request failed with status ${res.status}`);
console.log(data);import os
import requests
resp = requests.get(
"https://api.pozy.ai/v1/phone-numbers/kyc",
headers={"Authorization": f"Bearer {os.environ['POZY_API_KEY']}"},
params={
"country": "US",
},
timeout=30,
)
resp.raise_for_status()
print(resp.json())Response
200 on success
countrystringnumberTypestringfieldsarray of objectrequirementIdstringlabelstringkindstringOne of
text,date,address,file,action.descriptionstringCan be null.
examplestringCan be null.
localTostringCan be null.
reusableobjectCan be null.
availablebooleanfromPhoneNumberstringdetailsarray of object2 child fields
labelstringvaluestring
optionsarray of object4 child fields
idstringfromPhoneNumberstringinstantbooleandetailsarray of object3 child fields
labelstringvaluestringdocumentIdstring
pendingReviewboolean
200 response
{
"country": "US",
"numberType": "string",
"fields": [
{
"requirementId": "6296509a322aab288a61cc5d",
"label": "string",
"kind": "text",
"description": "A short description",
"example": "string",
"localTo": "string"
}
],
"reusable": {
"available": true,
"fromPhoneNumber": "+14155550123",
"details": [
{
"label": "string",
"value": "string"
}
],
"options": [
{
"id": "6bfebd43ddc270f6d2c56fc5",
"fromPhoneNumber": "+14155550123",
"instant": true,
"details": [
{
"label": "string",
"value": "string",
"documentId": "663401f11b591db15bd1bbd9"
}
]
}
]
},
"pendingReview": true
}Errors
Errors use one shape: { error, type, code, param?, details? }. The ones you are most likely to see here:
| 400 | invalid_request_error | A parameter or body field is missing or invalid. param names it. |
| 401 | authentication_error | The API key is missing, revoked or expired. |
| 403 | permission_error | The key is scoped to other profiles or has this resource group disabled. |
| 429 | rate_limit_error | Too many requests this minute. Wait for Retry-After seconds. |
Every code is listed in Errors.
More in Phone Numbers
GETList phone numbersGETGet phone numberDELRelease phone numberPOSTPurchase phone numberGETResolve a number claimGETList offerable number countriesGETSearch available numbersGETCheck country availabilityPOSTSubmit KYCGETView a KYC document on filePOSTUpload a KYC documentPOSTPre-validate KYC addressPOSTCreate a hosted KYC linkGETList port-in ordersPOSTPort numbers inPOSTCheck portabilityGETResolve a port claimPOSTUpload a porting documentGETCountry porting requirementsGETA port-in order's pending requirementsDELCancel a port-inPOSTPre-review a KYC packetGETGet declined requirementsPOSTResubmit a declined numberPOSTReply to the regulatory reviewerPOSTRespond to the regulatory reviewer (message + corrections)GETList stock watchesPOSTWatch an out-of-stock countryDELStop watching a countryPOSTRequest the WhatsApp verification code for a number