Call the API directly
Every endpoint is documented with a curl example in the API reference. Three things to get right:- Authentication -
Authorization: Bearer KEY_ID:KEY_SECRET, both halves joined by a colon. - Numbers in URLs - URL-encode the leading
+as%2B(/v1/phone-numbers/%2B447446466847). - Errors - every error is
{ "error": { "type", "code", "message", "doc_url", "details" } }with a meaningful HTTP status. Branch oncode. See Errors.
Retries worth copying
The Node SDK’s policy is safe to reproduce in any language:429- retry once after theRetry-Afterheader.- Network failures - retry once.
5xx- retry onlyGETandDELETE. Never blind-retry aPOST- a call must never be dialled twice.
Generate a client from the OpenAPI spec
The full specification lives athttps://docs.nixflex.com/api-reference/openapi.json (OpenAPI 3.1, every path and error shape). Generate a typed client for your language:
python, go, java, csharp, ruby, php, kotlin, swift and more. Import the same file into Postman or Insomnia to explore the API interactively.
Verify webhooks in any language
Webhook payloads are signed. The header isX-Nixflex-Signature: t=<unix_ts>,v1=<hex>; the signature is HMAC-SHA256 of "<timestamp>.<raw_body>" with your key secret. Reject if the timestamp is older than 300 seconds or the HMAC does not match (compare in constant time). Full detail and a Node example on Webhooks.
Python