VoixCall

VoixCall for developers

Build with VoixCall

Connect an AI assistant or your own code to a VoixCall account. OAuth, /v1/me and the read endpoints are live on api.voixcall.com; the rest of the surface ships in dated, additive steps.

VoixCall lets people call phone numbers in 160+ countries from a browser or app at published per-minute rates, with their own verified number as caller ID, virtual numbers in 60 countries, an SMS inbox for receiving codes, and AI call summaries. Most paying users are abroad, calling US toll-free lines, banks and government offices that block foreign SIMs. The public API and the MCP server expose the user's own account to the assistants and apps they choose to connect: first who they are, then rates, balance, calls, contacts and numbers, later summaries, verification codes and hands-free calling where VoixCall rings the user's phone and bridges them abroad.

Live today production

  • OAuth 2.1 with PKCE (S256) at https://api.voixcall.com/oauth/authorize and /oauth/token, with refresh-token rotation and revocation. Clients register by Client ID Metadata Document or Dynamic Client Registration. Discovery at /.well-known/oauth-authorization-server.
  • GET /v1/me: the account the token or key acts for. OpenAPI 3.1 at api.voixcall.com/v1/openapi.json.
  • Read endpoints (since 2026-09-28): GET /v1/rates?to=, /v1/credits/balance, /v1/credits/transactions, /v1/calls, /v1/calls/{id}, /v1/contacts?q=, /v1/numbers and /v1/caller-id, each behind its read scope. Samples in the quickstart.
  • Call summaries, transcripts and text messages (since 2026-10-04): GET/POST /v1/calls/{id}/transcript, expand[]=transcript, GET /v1/messages and /v1/messages/threads on numbers the user opts in, each behind a sharing switch in Settings โ†’ Connected apps that is off by default. Transcript text is redacted before it is shared. See the changelog entry.
  • Scopes offered to connections: rates:read, credits:read, calls:read, contacts:read, numbers:read, transcripts:read, messages:read, messages:history. calls:place and webhooks:manage are not offered until their features ship.
  • MCP server at https://api.voixcall.com/mcp with nine read-only tools: rates, balance, contact search, call history, call details, numbers, voixcall_whoami, and since 2026-10-04 voixcall_get_call_summary and voixcall_read_messages. The first seven are verified against production with Claude Code, claude.ai custom connectors, ChatGPT and MCP Inspector. See the MCP page.
  • API keys (vc_live_ / vc_test_): the management endpoints exist, but the screen to create a key in Settings ships later, so there is no self-serve way to get one yet. Use OAuth in the meantime.
  • Rate limiting with RateLimit, RateLimit-Policy, X-RateLimit-* and Retry-After headers. See rate limits.
  • TypeScript SDK (since 2026-09-29): @voixcall/sdk, npm install @voixcall/sdk (Node 20+, ESM). Typed resources for every read endpoint, for await pagination, retries that honour Retry-After, automatic idempotency keys and typed errors. See the quickstart.

Coming next planned

Next: the Settings screen to create API keys. After that, in order: callback calls that ring your phone first, and webhooks. Each lands as an additive changelog entry.

What a connected app can see

Tokens act on the user's personal account only. Organization (team) calls, numbers and transcripts are never reachable through the public API or MCP, even for organization admins. Through the REST API an app can read what its scopes allow: rates, balance and credit history, call history (numbers, times, cost), contacts matching a search, virtual numbers and caller-ID settings; the MCP read tools expose the same data to assistants. Call summaries, transcripts and messages are readable only after the user turns on the matching sharing switch (both off by default). Details in privacy for connected apps.

Support and availability

Write to support@voixcall.com. Every response from api.voixcall.com carries a Request-Id header, and every error body repeats it as request_id. Include the Request-Id header value when you write: it is how we find your request in the logs.

Availability target: 99.9 % monthly availability for the API and the MCP server. This is a service-level objective, not a contractual guarantee; see the terms.

Security reports: /.well-known/security.txt.