# 46elks Voice API (slim)

> 46elks is a Swedish telecom operator's REST API for phone calls, SMS and virtual numbers in 48 countries, with JSON call actions, call recording, SIP and WebRTC clients, and a WebSocket Realtime Voice API for connecting AI agents to calls.

- Full: https://www.anchorterminal.com/tools/46elks.md (~6,300 tokens) · this version ~1,630 tokens · JSON https://www.anchorterminal.com/tools/46elks.json · canonical https://www.anchorterminal.com/tools/46elks
- Index: https://www.anchorterminal.com/llms.txt · API: https://www.anchorterminal.com/api/v1/index.json · MCP: https://www.anchorterminal.com/mcp · Updated: 2026-11-07 · pricing https://www.anchorterminal.com/tools/46elks#pricing · reviews https://www.anchorterminal.com/tools/46elks#reviews
- Licence: CC BY 4.0, credit Anchor Terminal and link this page (https://www.anchorterminal.com/terms/#data)

**E · 44.4/100 · rank #1203 of 1486 · #14 in Phone calling & voice transport · not agent-ready · confidence medium**


Assessment: 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.

## Facts

- Kind: HTTP API · vendor: 46elks AB · category: Phone calling & voice transport · legal entity: 46elks AB · provenance 74/100
- Endpoint: `https://api.46elks.com/a1` (HTTP, websocket)
- Auth: API key · pricing: Pay per use · x402: no · licence: Proprietary service under the 46elks Terms of Service (effective 12 March 2024). Example code and the Swagger file are in the public 46elks-getting-started repository
- Benchmark probes: not run yet, so Performance is pending
- Live, from our pollers (not part of the score): up at 2026-11-07 17:49 UTC · uptime 30 days 100.0% (195 probes) · p50 317 ms · p95 458 ms over 24 hours
- Vendor status page: not read, no machine-readable status found (2026-11-07 04:47 UTC)
- Surface listed: The voice parts of the 46elks REST API at api.46elks.com/a1 (calls, call actions, numbers, recordings) and the Realtime Voice WebSocket API, read from llms.txt, the docs, the Swagger file, the pricing, SLA, FAQ, terms, privacy and team pages and the status page on 6 November 2026. No account was made and no call was placed
- Call control: `POST /calls` with `voice_start` as a URL or JSON action, and actions connect (number or SIP), play, IVR, record and hangup returned from webhooks. `recordcall` records both parties, `whenhangup` posts call data at the end
- Numbers: Virtual numbers in 48 countries by `POST /numbers`, configured with `voice_start` and `sms_url` webhooks, usually €3 a month
- Streaming: Realtime Voice WebSocket API with bidirectional audio, barge-in through interrupt messages and formats pcm_8000, pcm_16000, pcm_24000, alaw, ulaw, g722, ogg, wav and mp3
- Data location: Infrastructure and data in Sweden and the EU per llms.txt and the privacy policy
- Legal entity: 46elks AB, Sidenvävargatan 17, 753 19 Uppsala, Sweden, org. no. 556838-8184, under Swedish law
- Prices: Call to a UK landline $0.023 per minute of call; Call to a UK mobile $0.53 per minute of call; Forward a call to a WebSocket $0.017 per minute of call; Virtual number $3.50 per month (plan)

- Scores: Reliability 47, Performance pending, Schema & documentation 66, Agent ergonomics 51, Security & auth 40, Payments & pricing 20, Task success pending, Maintenance & community 12, Transparency & trust 62 · total over the 7 assessed categories
- Why: Reliability, Graded on the hosted REST and Realtime Voice APIs with the hosted lines. · Schema & documentation, 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… · Agent ergonomics, Compact JSON responses, and call actions returned as small JSON objects (18 of 25). · Security & auth, HTTP Basic credentials per account, with separate credentials per subaccount and no scopes found (18 of 30). · Payments & pricing, No x402, MPP or L402 (0). · Maintenance & community, No changelog, release notes or dated API change was found, the sitemap's newest blog post is from 2014, and the Swagger file predates Realti… · Transparency & trust, Closed service with clear terms naming 46elks AB with its Swedish registration (15 of 30).
- Sources: 12, open questions: 4, both in the full twin
- Capabilities: voice.calls, voice.numbers, voice.streaming, voice.sip, voice.recording, messaging.sms
- JSON: https://www.anchorterminal.com/api/v1/tools/46elks.json
- Verify (for the vendor): the badge `https://www.anchorterminal.com/badges/46elks.svg` or a link to https://www.anchorterminal.com/tools/46elks from a page on 46elks.com or one of its subdomains, or the README at the root of github.com/46elks/46elks-getting-started, then `POST https://www.anchorterminal.com/api/v1/verify` `{"slug", "url"}` or `verify_listing` at /mcp; re-checked weekly, no effect on the grade. Snippets in the full twin.
- Support: help@46elks.com; https://46elks.com/support; https://46elks.com/faq; more in the full twin

## Before you call it

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)

## Connect

```bash
curl https://api.46elks.com/a1/calls \
  -u API_USERNAME:API_PASSWORD \
  -d from=+46700000000 \
  -d to=+46700000000 \
  -d voice_start='{"connect":"+46700000000"}'
```
Full config and headless snippets are in the full page. Through letme (picks today, calling later): https://letme.dev/46elks

## Similar tools

| Tool | Grade | Score | Shared capabilities | Slim |
| --- | --- | --- | --- | --- |
| didlogic Voice API | D | 49.8 | voice.numbers, voice.sip, voice.calls, voice.streaming, voice.recording, messaging.sms | https://www.anchorterminal.com/tools/didlogic.min.md |
| Twilio Programmable Voice API + MCP | BB | 77.4 | voice.calls, voice.numbers, voice.streaming, voice.sip, voice.recording | https://www.anchorterminal.com/tools/twilio-voice.min.md |
| Telnyx Voice API + MCP | BB | 74.3 | voice.calls, voice.numbers, voice.streaming, voice.sip, voice.recording | https://www.anchorterminal.com/tools/telnyx-voice.min.md |
| Bandwidth Voice API + MCP | B | 69.5 | voice.calls, voice.numbers, voice.streaming, voice.sip, voice.recording | https://www.anchorterminal.com/tools/bandwidth-voice.min.md |
| SignalWire Voice API | B | 66.9 | voice.calls, voice.numbers, voice.streaming, voice.sip, voice.recording | https://www.anchorterminal.com/tools/signalwire-voice.min.md |


## Panel reviews (0, desk reviews from public material, no calls made)

