API reference

Phone numbers

Salvy and BYON WhatsApp number lifecycle.

Available regions

GET/v1/phone-numbers/available-regions

Response

FieldTypeNotes
objectrequired"list"
datarequiredobject[]

Provision (Salvy)

POST/v1/phone-numbers/provision202 Accepted

Request body

FieldTypeNotes
dddrequiredstring
pattern: ^\d{2}$
display_namestring
len 1..255

Response

FieldTypeNotes
idrequiredstring
objectrequired"phone_number"
sourcerequired"salvy" | "byon"
statusrequired"requested" | "provisioning" | "provisioned" | "verifying" | "active" | "failed" | "release_requested" | "released" | "disconnected"
environmentrequired"sandbox" | "production"
display_namerequiredstring | null
dddrequiredstring | null
phonerequiredstring | null
provider_number_idrequiredstring | null
meta_phone_number_idrequiredstring | null
waba_idrequiredstring | null
quality_ratingrequired"green" | "yellow" | "red" | "unknown"
messaging_tierrequired"tier_50" | "tier_250" | "tier_1k" | "tier_10k" | "tier_100k" | "unlimited" | "unknown"
messaging_limit_tierrequiredstring | null
meta_throughput_tierrequired"1" | "2" | "3" | "4" | "unlimited" | null
meta_quality_ratingrequiredstring | null
current_24h_unique_recipientsrequiredinteger
range 0..9007199254740991
verification_coderequiredstring | null
verification_code_received_atrequiredstring<ISO-8601> | null
monthly_fee_brlrequiredstring | null
error_coderequiredstring | null
error_messagerequiredstring | null
created_atrequiredstring<ISO-8601>
pattern: ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$
updated_atrequiredstring<ISO-8601>
pattern: ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$
activated_atrequiredstring<ISO-8601> | null
released_atrequiredstring<ISO-8601> | null
recent_messagesrequiredobject[]

Connect (BYON)

POST/v1/phone-numbers/connect201 Created

Request body

FieldTypeNotes
phonerequiredstring
pattern: ^\+\d{8,15}$
meta_phone_number_idrequiredstring
len 1..∞
display_namestring
len 1..255

Response

FieldTypeNotes
idrequiredstring
objectrequired"phone_number"
sourcerequired"salvy" | "byon"
statusrequired"requested" | "provisioning" | "provisioned" | "verifying" | "active" | "failed" | "release_requested" | "released" | "disconnected"
environmentrequired"sandbox" | "production"
display_namerequiredstring | null
dddrequiredstring | null
phonerequiredstring | null
provider_number_idrequiredstring | null
meta_phone_number_idrequiredstring | null
waba_idrequiredstring | null
quality_ratingrequired"green" | "yellow" | "red" | "unknown"
messaging_tierrequired"tier_50" | "tier_250" | "tier_1k" | "tier_10k" | "tier_100k" | "unlimited" | "unknown"
messaging_limit_tierrequiredstring | null
meta_throughput_tierrequired"1" | "2" | "3" | "4" | "unlimited" | null
meta_quality_ratingrequiredstring | null
current_24h_unique_recipientsrequiredinteger
range 0..9007199254740991
verification_coderequiredstring | null
verification_code_received_atrequiredstring<ISO-8601> | null
monthly_fee_brlrequiredstring | null
error_coderequiredstring | null
error_messagerequiredstring | null
created_atrequiredstring<ISO-8601>
pattern: ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$
updated_atrequiredstring<ISO-8601>
pattern: ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$
activated_atrequiredstring<ISO-8601> | null
released_atrequiredstring<ISO-8601> | null
recent_messagesrequiredobject[]

List

GET/v1/phone-numbers

Response

FieldTypeNotes
objectrequired"list"
datarequiredobject[]
has_morerequiredboolean
next_cursorrequiredstring | null

Retrieve

GET/v1/phone-numbers/{'{id}'}

Response

FieldTypeNotes
idrequiredstring
objectrequired"phone_number"
sourcerequired"salvy" | "byon"
statusrequired"requested" | "provisioning" | "provisioned" | "verifying" | "active" | "failed" | "release_requested" | "released" | "disconnected"
environmentrequired"sandbox" | "production"
display_namerequiredstring | null
dddrequiredstring | null
phonerequiredstring | null
provider_number_idrequiredstring | null
meta_phone_number_idrequiredstring | null
waba_idrequiredstring | null
quality_ratingrequired"green" | "yellow" | "red" | "unknown"
messaging_tierrequired"tier_50" | "tier_250" | "tier_1k" | "tier_10k" | "tier_100k" | "unlimited" | "unknown"
messaging_limit_tierrequiredstring | null
meta_throughput_tierrequired"1" | "2" | "3" | "4" | "unlimited" | null
meta_quality_ratingrequiredstring | null
current_24h_unique_recipientsrequiredinteger
range 0..9007199254740991
verification_coderequiredstring | null
verification_code_received_atrequiredstring<ISO-8601> | null
monthly_fee_brlrequiredstring | null
error_coderequiredstring | null
error_messagerequiredstring | null
created_atrequiredstring<ISO-8601>
pattern: ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$
updated_atrequiredstring<ISO-8601>
pattern: ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$
activated_atrequiredstring<ISO-8601> | null
released_atrequiredstring<ISO-8601> | null
recent_messagesrequiredobject[]