Phone & voice · Branded Calling
Registers a business for Branded Calling.
https://api.pozy.ai/v1/branded-calling/enterprisesRequest
Send your API key as Authorization: Bearer pz_live_.... Read-only keys cannot call it. Keys with the telephony resource group disabled get 403 resource_group_disabled. Authentication
Headers
| Name | Type | Notes |
|---|---|---|
Idempotency-Key | string | Up to 255 charactersRetries with the same key return the original result. See Idempotency |
Request body
application/json, required
legalNamestringrequired3 to 64 characters.
doingBusinessAsstringrequiredUp to 255 characters.
organizationTypestringrequiredOne of
commercial,government,non_profit.organizationLegalTypestringrequiredOne of
corporation,llc,partnership,nonprofit,other.countryCodestringrequiredjurisdictionOfIncorporationstringrequiredUp to 255 characters.
websitestring (URL)requiredfeinstringrequiredindustrystringrequirednumberOfEmployeesstringrequiredOne of
1-10,11-50,51-200,201-500,501-2000,2001-10000,10001+.organizationContactobjectrequiredfirstNamestringrequiredUp to 100 characters.
lastNamestringrequiredUp to 100 characters.
emailstring (email)requiredjobTitlestringUp to 100 characters.
phoneNumberstringrequired
billingContactobjectrequiredfirstNamestringrequiredUp to 100 characters.
lastNamestringrequiredUp to 100 characters.
emailstring (email)requiredjobTitlestringUp to 100 characters.
phoneNumberstringrequired
physicalAddressobjectrequiredstreetAddressstringrequiredUp to 255 characters.
extendedAddressstringUp to 255 characters.
citystringrequiredUp to 100 characters.
administrativeAreastringrequiredpostalCodestringrequiredUp to 20 characters.
countrystringrequired
billingAddressobjectrequiredstreetAddressstringrequiredUp to 255 characters.
extendedAddressstringUp to 255 characters.
citystringrequiredUp to 100 characters.
administrativeAreastringrequiredpostalCodestringrequiredUp to 20 characters.
countrystringrequired
Example
curl -X POST "https://api.pozy.ai/v1/branded-calling/enterprises" \
-H "Authorization: Bearer $POZY_API_KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{
"legalName": "Acme",
"doingBusinessAs": "string",
"organizationType": "commercial",
"organizationLegalType": "corporation",
"countryCode": "US",
"jurisdictionOfIncorporation": "string",
"website": "https://pozy.ai/media/example-1.jpg",
"fein": "string",
"industry": "string",
"numberOfEmployees": "1-10",
"organizationContact": {
"firstName": "Acme",
"lastName": "Acme",
"email": "alex@example.com",
"phoneNumber": "+14155550123"
},
"billingContact": {
"firstName": "Acme",
"lastName": "Acme",
"email": "alex@example.com",
"phoneNumber": "+14155550123"
},
"physicalAddress": {
"streetAddress": "string",
"city": "string",
"administrativeArea": "string",
"postalCode": "string",
"country": "US"
},
"billingAddress": {
"streetAddress": "string",
"city": "string",
"administrativeArea": "string",
"postalCode": "string",
"country": "US"
}
}'import { randomUUID } from "node:crypto";
const res = await fetch("https://api.pozy.ai/v1/branded-calling/enterprises", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.POZY_API_KEY}`,
"Idempotency-Key": randomUUID(),
"Content-Type": "application/json",
},
body: JSON.stringify({
legalName: "Acme",
doingBusinessAs: "string",
organizationType: "commercial",
organizationLegalType: "corporation",
countryCode: "US",
jurisdictionOfIncorporation: "string",
website: "https://pozy.ai/media/example-1.jpg",
fein: "string",
industry: "string",
numberOfEmployees: "1-10",
organizationContact: {
firstName: "Acme",
lastName: "Acme",
email: "alex@example.com",
phoneNumber: "+14155550123"
},
billingContact: {
firstName: "Acme",
lastName: "Acme",
email: "alex@example.com",
phoneNumber: "+14155550123"
},
physicalAddress: {
streetAddress: "string",
city: "string",
administrativeArea: "string",
postalCode: "string",
country: "US"
},
billingAddress: {
streetAddress: "string",
city: "string",
administrativeArea: "string",
postalCode: "string",
country: "US"
}
}),
});
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.post(
"https://api.pozy.ai/v1/branded-calling/enterprises",
headers={"Authorization": f"Bearer {os.environ['POZY_API_KEY']}"},
json={
"legalName": "Acme",
"doingBusinessAs": "string",
"organizationType": "commercial",
"organizationLegalType": "corporation",
"countryCode": "US",
"jurisdictionOfIncorporation": "string",
"website": "https://pozy.ai/media/example-1.jpg",
"fein": "string",
"industry": "string",
"numberOfEmployees": "1-10",
"organizationContact": {
"firstName": "Acme",
"lastName": "Acme",
"email": "alex@example.com",
"phoneNumber": "+14155550123",
},
"billingContact": {
"firstName": "Acme",
"lastName": "Acme",
"email": "alex@example.com",
"phoneNumber": "+14155550123",
},
"physicalAddress": {
"streetAddress": "string",
"city": "string",
"administrativeArea": "string",
"postalCode": "string",
"country": "US",
},
"billingAddress": {
"streetAddress": "string",
"city": "string",
"administrativeArea": "string",
"postalCode": "string",
"country": "US",
},
},
timeout=30,
)
resp.raise_for_status()
print(resp.json())Response
201 on success
idstringlegalNamestringdoingBusinessAsstringorganizationTypestringOne of
commercial,government,non_profit.organizationLegalTypestringOne of
corporation,llc,partnership,nonprofit,other.countryCodestringOne of
US,CA.jurisdictionOfIncorporationstringwebsitestringfeinLast4stringindustrystringnumberOfEmployeesstringOne of
1-10,11-50,51-200,201-500,501-2000,2001-10000,10001+.organizationContactobjectfirstNamestringrequiredUp to 100 characters.
lastNamestringrequiredUp to 100 characters.
emailstring (email)requiredjobTitlestringUp to 100 characters.
phoneNumberstringrequired
billingContactobjectfirstNamestringrequiredUp to 100 characters.
lastNamestringrequiredUp to 100 characters.
emailstring (email)requiredjobTitlestringUp to 100 characters.
phoneNumberstringrequired
physicalAddressobjectstreetAddressstringrequiredUp to 255 characters.
extendedAddressstringUp to 255 characters.
citystringrequiredUp to 100 characters.
administrativeAreastringrequiredpostalCodestringrequiredUp to 20 characters.
countrystringrequired
billingAddressobjectstreetAddressstringrequiredUp to 255 characters.
extendedAddressstringUp to 255 characters.
citystringrequiredUp to 100 characters.
administrativeAreastringrequiredpostalCodestringrequiredUp to 20 characters.
countrystringrequired
registeredbooleancreatedAtstring (date-time)Can be null.
{
"id": "6bfebd43ddc270f6d2c56fc5",
"legalName": "Acme",
"doingBusinessAs": "string",
"organizationType": "commercial",
"organizationLegalType": "corporation",
"countryCode": "US",
"jurisdictionOfIncorporation": "string",
"website": "string",
"feinLast4": "string",
"industry": "string",
"numberOfEmployees": "1-10",
"organizationContact": {
"firstName": "Acme",
"lastName": "Acme",
"email": "alex@example.com",
"jobTitle": "string",
"phoneNumber": "+14155550123"
},
"billingContact": {
"firstName": "Acme",
"lastName": "Acme",
"email": "alex@example.com",
"jobTitle": "string",
"phoneNumber": "+14155550123"
},
"physicalAddress": {
"streetAddress": "string",
"extendedAddress": "string",
"city": "string",
"administrativeArea": "string",
"postalCode": "string",
"country": "US"
},
"billingAddress": {
"streetAddress": "string",
"extendedAddress": "string",
"city": "string",
"administrativeArea": "string",
"postalCode": "string",
"country": "US"
},
"registered": true,
"createdAt": "2026-10-02T09:00:00.000Z"
}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 read-only, 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.