Number
Allocate a number to a service
Allocates a new phone number to a service (eSIM).
/number/{profileReference}/allocateAuthorization
Authorization: Bearer {token} — an OAuth2 access token from the client-credentials flow. How authentication works
Path parameters
profileReferencestringrequiredThe eSIM's profile reference (16-digit numeric string)
Headers
X-Idempotency-KeystringOptional idempotency key for mutating requests (POST, PATCH). If provided, duplicate requests with the same key within 48 hours will return the cached original response without duplicating side effects.
Behavior:
- Same key + same request body → returns cached response (prevents duplicate operations)
- Same key + different request body → returns 422 error
- Same key + in-flight request → returns 409 error with Retry-After header
- Keys expire after 48 hours
Request Body Matching: Request bodies are compared using a deterministic fingerprint. The fingerprint is computed by canonicalizing the JSON (sorting object keys recursively) and hashing with SHA-256. This means:
{"a":1,"b":2}and{"b":2,"a":1}are treated as identical ✓- Whitespace differences are ignored ✓
- URL parameters and headers are NOT included in the fingerprint
Best Practices:
- Use UUIDs or client-generated unique strings
- Store keys on your side to support retries
- Don't reuse keys across different operations
Request body
application/json · required
esimReferencestringrequiredeSIM reference identifier (18-digit opaque token)
countryCodestringrequiredISO country code (2-6 letters to support regional codes like GLOBAL)
typestringlocal: Local/landline numbermobile: Mobile numbertollfree: Toll-free number
localmobiletollfreeisPrimarybooleanWhether this should be the primary number for the profile
truecustomerInfoobjectrequiredShow propertiesHide properties
firstNamestringrequiredCustomer's first name
lastNamestringrequiredCustomer's last name
companyNamestring(Optional) Company name for business accounts
emailstring · email(Optional) Customer's email address
phonestring(Optional) Customer's contact phone number
addressobjectrequiredShow propertiesHide properties
streetstringrequiredStreet name
streetNumberstring(Optional) House/building number. Required for NL porting.
streetNumberAdditionstring(Optional) Number addition (apartment, floor, etc.)
streetLine2string(Optional) Additional address line (apartment, suite, etc.)
citystringrequiredCity name
statestring(Optional) State or province
postalCodestringrequiredPostal/ZIP code
countryCodestringrequiredISO 3166-1 alpha-2 country code
Responses
200Number allocated successfullyapplication/jsonShow response bodyHide response body
dataobjectShow propertiesHide properties
assignmentIdintegerUnique identifier for the number assignment
profileReferencestringThe profile reference this number is allocated to
esimReferencestringThe eSIM reference this number is associated with
iccidstringICCID of the eSIM this number is associated with
msisdnstringThe phone number (MSISDN)
countryCodestringISO country code
typestringlocal: Local/landline numbermobile: Mobile numbertollfree: Toll-free number
localmobiletollfreestatusstringactive: Number is active and operationalsuspended: Number is temporarily suspendedreleased: Number has been released
activesuspendedreleasedisPrimarybooleanWhether this is the primary number for the profile
customerInfoobjectShow propertiesHide properties
firstNamestringrequiredCustomer's first name
lastNamestringrequiredCustomer's last name
companyNamestring(Optional) Company name for business accounts
emailstring · email(Optional) Customer's email address
phonestring(Optional) Customer's contact phone number
addressobjectShow propertiesHide properties
streetstringrequiredStreet name
streetNumberstring(Optional) House/building number. Required for NL porting.
streetNumberAdditionstring(Optional) Number addition (apartment, floor, etc.)
streetLine2string(Optional) Additional address line (apartment, suite, etc.)
citystringrequiredCity name
statestring(Optional) State or province
postalCodestringrequiredPostal/ZIP code
countryCodestringrequiredISO 3166-1 alpha-2 country code
createdAtstring · date-timeupdatedAtstring · date-time400Bad request - invalid parameters401Unauthorized - missing or invalid API key403Forbidden - client does not have access to this resource404Resource not found409Request with this idempotency key is still being processed422Idempotency key was previously used with a different request body429Rate limit exceeded500Internal server error