Head to head · Phone calls · October 2026 research run

46elks Voice API vs jambonz

jambonz scores 45.4 (E) on agent readiness against 46elks Voice API's 44.4 (E), and leads in 3 of 7 scored categories. 46elks Voice API leads on reliability, schema & documentation and transparency & trust. Both do phone calls.

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.

Ahead on

  • Reliability, 47 against 38
  • Schema & documentation, 66 against 53
  • Transparency & trust, 62 against 52

Also in its favour

  • A hosted endpoint, with nothing to install
  • No incidents deducted, where jambonz loses 3 points for them

Watch for

No changelog or dated API release found

jambonz E

Best for Teams that already have a SIP carrier and speech and LLM vendors and want call control with flat session pricing, or that must run the voice layer in their own network.

Ahead on

  • Payments & pricing, 40 against 20
  • Maintenance & community, 78 against 12

Also in its favour

  • Open source

Watch for

No status page, uptime SLA, security.txt, SECURITY.md or published advisory was found for jambonz.cloud or the repositories

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 jambonz +66

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.

jambonz 78

Releases read from depth-200 clones on 4 November. @jambonz/sdk was tagged v0.11.0 on 24 October, v0.12.0 on 27 October and v0.12.1 on 29 October, jambonz-python-sdk v0.4.0 on 24 October, and jambonz-api-server and jambonz-feature-server v0.9.15 on 23 October (30). From 6 August that is at least five tags across the listed packages and servers, with the 11.1.5 and 11.1.6 release notes of 24 September and 4 October per the 8 October check (20). Of the 30 newest open issues and pull requests on jambonz-feature-server, 10 had a comment per the 8 October check. GitHub's pages were not re-read (10 of 25). The Node.js SDK is current and the Python SDK is still marked Alpha (12 of 15). The API server runs lint and tests in CI on every push and pull request. We did not see the latest run's result (6 of 10). 30 + 20 + 10 + 12 + 6 = 78.

Payments & pricing jambonz +20

46elks Voice API 20

No x402, MPP or L402 (0). Per-minute prices by destination are public without login, also in kronor, with incoming calls free (20). No free credit; only SMS to the test number +46700000000 costs nothing, and accounts are prepaid or invoiced against a deposit (0). A person signs up in a browser and copies the credentials (0). 0+20+0+0 = 20.

jambonz 40

Scored on the hosted option, jambonz.cloud, with prices per the 8 October check, not re-read on 4 November under the terms pause. No x402, MPP or L402 found (0). Prices per concurrent session a month are public without a login for the cloud and for self-hosted licences (20). The Terms of Use (updated 13 October 2026) describe a 21-day trial that needs a name, company and email, and a subscription chosen when it ends, with payments through Stripe. No card is mentioned for the trial, so we counted it as needing none. The sign-up page is drawn by script and was not read (20). An account is created in a browser. POST /ApiKeys needs an existing token, so it does not help a new agent (0). 0 + 20 + 20 + 0 = 40.

Schema & documentation 46elks Voice API +13

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.

jambonz 53

Per the 8 October check, not re-read on 4 November under the terms pause. OpenAPI 3.1 files and an AsyncAPI 2.6.0 file on docs.jambonz.org were read on 8 October, but no page read then or since was recorded as linking them as visible downloads, and the docs host is now paused, so they aren't counted as a published contract (0). llms.txt, per-section indexes and every page as Markdown (10). The verb pages explain use at length. Operation descriptions in the API reference are mostly one line (12 of 20). Enums for call status, direction and mid-call actions and required fields are marked in the reference. to, call_hook, tag and amd are objects, a partial held (11 of 15). The SDK and verb pages carry code examples. Errors are a single msg string, a partial held (8 of 15). The Node.js SDK adds /v1 to the base URL it is given, and the changelog is dated with component version tables (12 of 15). 0 + 10 + 12 + 11 + 8 + 12 = 53.

Transparency & trust 46elks Voice API +10

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.

jambonz 52

Per the 8 October check for the privacy policy and docs, not re-read on 4 November under the terms pause. The API server, feature server and SDKs are public under MIT. The product on jambonz.cloud and in the self-hosted packages is jambonz Commercial, which needs a licence key and whose terms forbid modifying its proprietary portions, while the docs still call jambonz open source (20 of 30). The privacy policy is dated 4 May 2021. It gives 30 days for usage data and an opt-out for call detail records. It says audio is never stored on jambonz servers, and the 11.1.6 notes of 4 October 2026 say support keeps SIP and RTP from calls for a few days, with an opt-out added in that release. No DPA was found (10 of 30). No deprecation policy was found. Removals are announced in the release that makes them, such as SMPP and five speech vendors in July and August 2026 (6 of 20). No sub-processor list was found. The policy says servers are in the United States and names a third-party billing partner. Telemetry from self-hosted instances is listed field by field (7 of 20). 20 + 10 + 6 + 7 = 43.

Reliability 46elks Voice API +9

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.

jambonz 38

Graded as a hosted service, the API on jambonz.cloud, which the docs name as the simplest way to start. jambonz's Terms of Use (updated 13 October 2026) bar automated software that crawls or indexes any page of the website, so jambonz pages are per the 8 October check, not re-read on 4 November under the terms pause. No status page is linked from jambonz.org, the docs or the jambonz.cloud landing page (0), so there is no readable incident history (5). Rate limits are published with numbers, 600 requests per 5 minute fixed window per client IP address on the docs page, while the 11.1.6 notes of 4 October 2026 give 4,000 call creations and 600 call status reads a minute per account, a disagreement held as a partial (13 of 15). The API server's code sets standardHeaders on its limiter, so responses carry RateLimit-* headers including the reset, and a client over a limit receives 429. No backoff guidance or idempotency key was found for the REST API (10 of 15). No uptime SLA was found for jambonz.cloud. Support SLAs are sold only with Enterprise support for self-hosted systems (0). The REST and WebSocket APIs carry no beta label (10). 0 + 5 + 13 + 10 + 0 + 10 = 38.

Score by category

CategoryWeight this run46elks Voice APIjambonzEdge
Reliability16%20473846elks Voice API +9
Performance10%pendingpendingpendingnot scored in this run
Schema & documentation13%16.2665346elks Voice API +13
Agent ergonomics13%16.25154jambonz +3
Security & auth14%17.54040even
Payments & pricing10%12.52040jambonz +20
Task success10%pendingpendingpendingnot scored in this run
Maintenance & community7%8.81278jambonz +66
Transparency & trust7%8.8625246elks Voice API +10
Negative events≤150-3
TotalE 44.4/100E 45.4/100

Facts side by side

Fact46elks Voice APIjambonz
KindHTTP APIHTTP API
Vendor46elks ABFirstFive8, Inc.
Hosted endpointhttps://api.46elks.com/a1no (local only)
TransportsHTTP, websocketHTTP
AuthAPI keyAPI key
PricingPay per usePaid
Price for phone calls$0.017 per minute of callnot 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. jambonz.cloud is under the jambonz Terms of Use and self-hosted jambonz Commercial needs a paid licence key. The API server, feature server and SDK repositories on GitHub are MIT
Read-only variant documentednono
llms.txtyesyes
Last releasenone2026-10-29
Terms last updated2024-03-122021-05-04
Privacy policy last updated2018-05-202021-05-04
Customer content may train modelsnot found in the textnot found in the text
Terms restrict automated accessnot found in the textyes
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
Popularitynone103 stars, 1.4k npm/wk

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.

jambonz

An llms.txt and Markdown pages cover the REST and WebSocket APIs, session prices are public and the SDKs shipped five tags in October 2026. No status page, security.txt or advisory was found, API keys carry no scopes, and server security fixes ship without advisories.

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)

jambonz

  1. Send Authorization: Bearer <token>. The REST introduction page gives https://jambonz.cloud/api as the base URL and the Node.js SDK adds /v1 to the base URL it is given, so confirm the base URL with the operator
  2. Create a call with from, to and either application_sid or call_hook. Do not retry a timed-out create without checking GET /Accounts/{AccountSid}/Calls first
  3. Read ratelimit-remaining and ratelimit-reset on every response and stop when a 429 arrives
  4. Append #rc=3&rp=5xx,ct to an application URL to turn on webhook retries. HTTP webhooks are not retried by default
  5. Check the account has a carrier and speech credentials before dialling. jambonz does not supply numbers, minutes or speech services

Questions

Which is better for AI agents, 46elks Voice API or jambonz?

jambonz scores 45.4 (E) on agent readiness against 46elks Voice API's 44.4 (E), and leads in 3 of 7 scored categories. 46elks Voice API leads on reliability, schema & documentation and transparency & trust.

Do 46elks Voice API and jambonz need an API key?

Both need an API key.

Can an agent call 46elks Voice API and jambonz without installing anything?

46elks Voice API has a hosted endpoint at https://api.46elks.com/a1. No hosted endpoint is listed for jambonz.

Are 46elks Voice API and jambonz open source?

No open-source release is listed for 46elks Voice API. jambonz is open source (Proprietary. jambonz.cloud is under the jambonz Terms of Use and self-hosted jambonz Commercial needs a paid licence key. The API server, feature server and SDK repositories on GitHub are MIT).

Other comparisons with 46elks Voice API or jambonz

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.