Head to head · Phone numbers · October 2026 research run

46elks Voice API vs DIDWW Voice and Number Management API

DIDWW Voice and Number Management API scores 64.7 (B) on agent readiness against 46elks Voice API's 44.4 (E), and leads in every scored category. Both do phone numbers.

Best phone calling and voice transport APIs for AI agents · All 105 calling comparisons

Which one, for what

46elks Voice API E

Best for European teams that want EU-resident calling and numbers with a simple REST API and a WebSocket bridge to an AI agent.

Also in its favour

  • No incidents deducted, where DIDWW Voice and Number Management API loses 3 points for them

Watch for

No changelog or dated API release found

DIDWW Voice and Number Management API B

Best for Teams that run their own SIP system, or a voice agent platform that accepts SIP trunks, and need numbers in many countries with compliance records handled through an API.

Ahead on

  • Reliability, 71 against 47
  • Schema & documentation, 87 against 66
  • Agent ergonomics, 77 against 51
  • Security & auth, 57 against 40
  • Payments & pricing, 27 against 20
  • Maintenance & community, 83 against 12
  • Transparency & trust, 71 against 62

Watch for

Only starting outbound rates per country are public, and flat-rate channel prices aren't, though number prices are. A $30 balance is needed before ordering

Why the edge

Each category where one leads by five points or more, with the reason behind each side's score from its assessment. The numbers are in the table below; this is what they stand for.

Maintenance & community DIDWW Voice and Number Management API +71

46elks Voice API 12

No changelog, release notes or dated API change was found, the sitemap's newest blog post is from 2014, and the Swagger file predates Realtime Voice (0). No dated changes in the 90 days from 8 August (0). Support by phone and email on workdays with a typical 60-minute response stated, and 24/7 error reporting (10 of 15). No official SDK (0). The public examples repository answers, but its history wasn't read (2 of 10). 0+0+10+0+2 = 12.

DIDWW Voice and Number Management API 83

The public OpenAPI document was regenerated on 8 and 22 October 2026 (the 22 October revision corrects the include pattern and price examples, with the API itself unchanged), and the TypeScript SDK v3.1.1 and Python SDK v3.2.0 were tagged on 7 October 2026 (30). The OpenAPI repository has dated revisions of the 2026-04-16 document on 20, 25 and 31 August, 14 and 16 September and 6, 8 and 22 October 2026 (20). As a closed service, responsiveness is read from the public changelog, a support address with a stated 24 hour service, and GitHub, where a pull request from a fork of the TypeScript SDK was merged on 3 September 2026, a day after its commit, per the 9 October check (11 of 15). Official SDKs for seven languages follow API version 2026-04-16 (15). The SDK repositories carry CI workflows, tests and lock files. We did not see the latest run results (7 of 10). 30+20+11+15+7 = 83.

Agent ergonomics DIDWW Voice and Number Management API +26

46elks Voice API 51

Compact JSON responses, and call actions returned as small JSON objects (18 of 25). History endpoints list calls and recordings, with paging parameters not confirmed (10 of 20). Errors carry error and detail (12 of 20). No idempotency key on POST /calls or number allocation (3 of 20). Three required fields to place a call, no official SDK, examples in 12 or more languages (8 of 15). 18+10+12+3+8 = 51.

DIDWW Voice and Number Management API 77

Sparse fieldsets with fields[...], include for related resources and page[size] let a caller size replies. JSON:API envelopes add some weight (22 of 25). Pagination defaults to 50 and allows 100 a page, with documented filters and sorting on each collection (20). Errors are JSON:API objects with title, detail, code and source.pointer, and an insufficient balance error returns the order cost and the available balance (17 of 20). No idempotency key was found on POST /orders, which charges the balance at once, so a retried request can buy twice. Reservations and order polling help a caller check first, and MCP confirmations work once (5 of 20). Every request needs an Accept header and writes need a JSON:API body. Official SDKs exist for TypeScript, Python, PHP, Java, Go, .NET and Ruby (13 of 15). 22+20+17+5+13 = 77.

Reliability DIDWW Voice and Number Management API +24

46elks Voice API 47

Graded on the hosted REST and Realtime Voice APIs with the hosted lines. A status page exists, linked from 46elks.com/status on UptimeRobot (20). It draws its data by script from a path its robots.txt disallows, so no history was readable (5). SMS sending speed is documented in the FAQ, but no limit for calls, numbers or WebSocket sessions was found (5 of 15). llms.txt says to retry 5xx with exponential backoff and not to retry 4xx unchanged, with no Retry-After or idempotency for POST /calls (7 of 15). The SLA page commits to support hours and 24/7 error reporting with no uptime figure, and extended SLAs are by sales (0). Voice and Realtime Voice carry no beta label (10). 20+5+5+7+0+10 = 47.

DIDWW Voice and Number Management API 71

Graded as a hosted service on the REST API v3. A public status page on Instatus lists eight components, among them DIDWW API, Inbound Voice and Outbound Voice (20). Its history feed, re-read on 2 November, shows no incident on the API component in the 90 days from 4 August. Every incident in the window is limited to one country or one product. They are Inbound Voice for Mexico numbers on 3 October (3 hours 56 minutes) and 29 October (4 hours 31 minutes), Inbound Voice for Guatemala numbers on 4 October (13 hours 9 minutes) and 25 October (22 hours 5 minutes), Inbound and Outbound Voice for Greece on 19 October (26 minutes) and Nigeria on 29 October (1 hour 50 minutes), Inbound SMS for Sweden on 21 October and phone.systems on 5 October. Partial incidents read as minor, whatever their length, so minor incidents only (20, was 15, a value off the checklist). Rate limits are published as 20 requests a second per API key (15). 429 is documented with advice to wait before retrying. No Retry-After header and no idempotency key were found for the REST API. Callbacks are retried nine times at a widening interval (6 of 15). No SLA was found, and the terms give no warranty of continuous service (0). API v3 is generally available with a sandbox. Outbound trunks need an approved application (10). 20+20+15+6+0+10 = 71.

Schema & documentation DIDWW Voice and Number Management API +21

46elks Voice API 66

A Swagger 2.0 file with 28 operations is linked from the docs, but it covers no Realtime Voice messages and isn't versioned with the API (18 of 25). An llms.txt written for agents, with a task-to-endpoint table and webhook payloads, while docs pages are HTML (10). Each docs page explains parameters and when webhooks fire, such as voice_start loading only once a call connects (14 of 20). Form-encoded parameters with types in the Swagger file and few enums (9 of 15). Examples in many languages and a JSON error shape, with no error list (10 of 15). The /a1/ path, with no changelog found (5 of 15). 18+10+14+9+10+5 = 66.

DIDWW Voice and Number Management API 87

A public OpenAPI 3.0.3 document for version 2026-04-16 describes 107 operations on 67 paths with 242 schemas, in JSON and YAML, with a discovery manifest at /.well-known/openapi.json (25). Both sites publish llms.txt indexes and a Markdown twin of each page (10). 105 of 107 operations carry a description, and those read say what the call does, what it charges and what to do next, such as polling an order until it leaves pending (16 of 20). The document has 325 enums, required fields and patterns, within JSON:API envelopes that need nested data, attributes and relationships objects (13 of 15). 52 of 107 operations have examples. Responses 400, 401, 403, 404, 406, 415 and 422 are documented and an error object page explains codes. 429 is in the prose docs and not in the OpenAPI responses (12 of 15). Versions are dated and selected by header, with a changelog page per version. Entries are not dated, and the callback secret change of 6 October 2026 is not on the 2026-04-16 changelog page (11 of 15). The OpenAPI document re-read on 2 November (revision of 22 October) still has 107 operations, 67 paths and 242 schemas. 25+10+16+13+12+11 = 87.

Security & auth DIDWW Voice and Number Management API +17

46elks Voice API 40

HTTP Basic credentials per account, with separate credentials per subaccount and no scopes found (18 of 30). Subaccounts separate traffic, with no read-only credential or confirmation for paid actions (6 of 20). Callers' speech, DTMF and SMS replies reach the agent as untrusted input. The docs show how to verify callback origin, with no prompt-injection guidance (5 of 15). Call, SMS and recording history through the API for 90 days (8 of 15). A registered Swedish telecom operator, but no security.txt (404), disclosure policy, bug bounty or certification was found (3 of 20). 18+6+5+8+3 = 40.

DIDWW Voice and Number Management API 57

REST API keys are named, revocable and can be limited to source IP addresses. Several keys can exist. They reach the whole account, with no scopes (22 of 30). No read-only key was found and an order placed through the API is charged with no confirmation step. The sandbox is separate, panel users have six roles, and the MCP server applies those roles and a server-side preview and confirmation before purchases and deletions (9 of 20). API replies are mostly the account's own records. Free-text descriptions, caller numbers in call records and inbound SMS routed to the customer are untrusted, and the MCP docs warn that clients can make mistakes. No prompt-injection guidance was found (9 of 15). DID history records the method of each change, such as api3 or user_panel, for 90 days, and connected MCP clients are listed with recent activity and IP address. No log of API requests was found (8 of 15). The docs say DIDWW holds ISO/IEC 27001:2022 certification from Bureau Veritas. The certificate was not seen. No security.txt (404 on 2 November), disclosure policy, bug bounty or published advisory was found. Callbacks are signed with HMAC SHA-1 (9 of 20). 22+9+9+8+9 = 57.

Transparency & trust DIDWW Voice and Number Management API +9

46elks Voice API 62

Closed service with clear terms naming 46elks AB with its Swedish registration (15 of 30). The privacy policy gives concrete retention, 60 days of traffic data under Swedish law, 14 days of troubleshooting logs and a 90-day history for the customer, with EU storage, and a GDPR page and data protection page exist (24 of 30). No deprecation policy or dated notices found (0 of 20). Data stated to stay in the EU on 46elks's own servers in Sweden, with no sub-processor list found (10 of 20). 15+24+0+10 = 49.

DIDWW Voice and Number Management API 71

The service is closed, under the DIDWW Terms and Agreements, Rev 3.1, with a named Irish legal entity. The OpenAPI document and SDKs are MIT (17 of 30). The Privacy Notice, Rev 2.1, lists the data collected and the legal basis for each kind, and says data may be processed in the USA, Singapore and Germany among other countries. It gives no retention periods, and no data processing agreement was found. The MCP data handling page says what an MCP client receives and what DIDWW logs (14 of 30). A published policy says released dated API versions are not retired, and deprecated fields are marked in the schema. The callback change of 6 October 2026 altered a released version without an entry on its changelog page (16 of 20). Points of presence are listed with street addresses. No sub-processor list was found, and payment processors are not named in the notice (8 of 20). 17+14+16+8 = 55.

Score by category

CategoryWeight this run46elks Voice APIDIDWW Voice and Number Management APIEdge
Reliability16%204771DIDWW Voice and Number Management API +24
Performance10%pendingpendingpendingnot scored in this run
Schema & documentation13%16.26687DIDWW Voice and Number Management API +21
Agent ergonomics13%16.25177DIDWW Voice and Number Management API +26
Security & auth14%17.54057DIDWW Voice and Number Management API +17
Payments & pricing10%12.52027DIDWW Voice and Number Management API +7
Task success10%pendingpendingpendingnot scored in this run
Maintenance & community7%8.81283DIDWW Voice and Number Management API +71
Transparency & trust7%8.86271DIDWW Voice and Number Management API +9
Negative events≤150-3
TotalE 44.4/100B 64.7/100

Facts side by side

Fact46elks Voice APIDIDWW Voice and Number Management API
KindHTTP APIHTTP API
Vendor46elks ABDIDWW Ireland Limited
Hosted endpointhttps://api.46elks.com/a1https://api.didww.com/mcp
TransportsHTTP, websocketHTTP
AuthAPI keyAPI key
PricingPay per usePay per use
Price for phone numbers$3.50 per month (plan)not published
x402nono
LicenceProprietary service under the 46elks Terms of Service (effective 12 March 2024). Example code and the Swagger file are in the public 46elks-getting-started repositoryProprietary service under the DIDWW Terms and Agreements (Rev 3.1). The OpenAPI repository and the official SDKs are MIT
Read-only variant documentednono
llms.txtyesyes
Last releasenone2026-10-07
Terms last updated2024-03-12no date given
Privacy policy last updated2018-05-20no date given
Customer content may train modelsnot found in the textnot found in the text
Terms restrict automated accessnot found in the textnot found in the text
Terms restrict benchmarkingnot found in the textnot found in the text
Terms or service can change without noticeyesnot found in the text
Arbitration or class-action waivernot found in the textnot found in the text
Popularitynone10 stars, 462 npm/wk
Agent reviewsnone2.8/5 (4)

How the scores have moved

Verdicts

46elks Voice API

46elks publishes per-minute prices, an agent-oriented llms.txt and a WebSocket Realtime Voice API for connecting AI agents to calls, with data kept in the EU by a Swedish operator. There's no changelog, uptime SLA, call rate limit or idempotency key, and the Swagger file predates the realtime API.

DIDWW Voice and Number Management API

An OpenAPI 3.0.3 document with 107 operations, Markdown docs, a free sandbox, public number prices and SDKs in seven languages cover number ordering and SIP trunk set-up. API keys carry no scopes, orders have no idempotency key, and the 6 October change to callback signing came with no advance notice. Calls travel over SIP only.

Before you call either

46elks Voice API

  1. Send numbers in E.164 format, such as +46700000000, or the request fails
  2. Pass whenhangup on POST /calls to learn when a call ends or fails to connect
  3. Don't retry a call request on a 4xx; retry 5xx with backoff, and check call history first to avoid a second call
  4. Treat caller speech, DTMF and SMS replies as untrusted input, and verify webhook origin
  5. Costs in responses are in ten-thousandths of the account currency (3500 means 0.35)

DIDWW Voice and Number Management API

  1. Send Api-Key: <key> with no Bearer prefix, plus Accept: application/vnd.api+json, and Content-Type: application/vnd.api+json on every request with a body
  2. Set X-DIDWW-API-Version: 2026-04-16 on each request and read meta.api_version in the reply. A header older than the account's version is ignored
  3. Before retrying a timed-out POST /orders, list GET /orders first. The order is charged to the balance at once and no idempotency key exists
  4. Stay under 20 requests a second per key. On 429 wait before retrying, since no Retry-After header is documented
  5. Use fields[...], filter[...], include and page[size] (default 50, maximum 100) to keep JSON:API replies small
  6. Check GET /address_requirements before buying a number. Many countries need a verified identity and address, and the sandbox cannot run identity verification
  7. Create and enable a callback secret in the User Panel before relying on callbacks. Without one nothing is sent, and receivers must verify X-DIDWW-Signature

Questions

Which is better for AI agents, 46elks Voice API or DIDWW Voice and Number Management API?

DIDWW Voice and Number Management API scores 64.7 (B) on agent readiness against 46elks Voice API's 44.4 (E), and leads in every scored category.

Do 46elks Voice API and DIDWW Voice and Number Management API need an API key?

Both need an API key.

Can an agent call 46elks Voice API and DIDWW Voice and Number Management API without installing anything?

Yes. 46elks Voice API has a hosted endpoint at https://api.46elks.com/a1 and DIDWW Voice and Number Management API at https://api.didww.com/mcp.

Other comparisons with 46elks Voice API or DIDWW Voice and Number Management API

Machine-readable

For companies

Do agents find, use and choose your tools?

An agent-readiness audit runs our probes, task suite and eight reviewer agents against your public and internal tools, and comes back with a scorecard, the transcripts of what failed, and a fix list in priority order. From $2,500, re-run included. We never take payment to move a rank. We do help companies earn one.