Voice wordt geüpgraded

Programmeerbare spraak in JSON. Gesprekken, IVR, opname, TTS.

Voice voor ontwikkelaars: 140+ landen met spraakdekking, 1.500+ telefoonnummerprefixen, gemaskeerde oproepen, virtuele nummers. Hetzelfde API-oppervlak als Email en SMS: oproepen zijn gewoon een andere resource.

place-call.ts
201 · 0.4s
import { BirdClient } from "@messagebird/sdk";

const bird = new BirdClient({ apiKey: process.env.BIRD_API_KEY! });

const { data, error } = await bird.voice.calls.create({
  to:   "+15005550010",
  from: "+14155550199",
  flow: [
    { say:    "Your verification code is..." },
    { say:    "4. 2. 9. 1. 7." },
    { gather: { digits: 1, timeout: 5 } },
    { record: { transcribe: true } },
  ],
}).safe();

if (error) throw error;
console.log(data.id);
// → "call_7tQ04Lp2n..."

Bird Verify

+1 (500) 555-0010

Yourverificationcodeisfourtwonineoneseven.

5 minutes from npm install to first call

Start een gesprek vanuit de taal die je al gebruikt.

SDK's in elke gangbare runtime. Het eerste gesprek gaat naar een goedgekeurd testnummer (+15005550010), zodat je een CI-check kunt uitvoeren voordat je een echt nummer inricht.

Code samples arrive when this API ships. The SDKs already cover the live channels.

Tien onderdelen van voice die u liever niet zelf schrijft.

Carrier-routing, oproepbesturing en observability-primitieven, benoemd en auditeerbaar.

  1. 01

    Uitgaande en inkomende gesprekken

    Oproepen plaatsen en ontvangen via REST of SIP: hetzelfde authenticatiemodel, hetzelfde idempotency-contract.

  2. 02

    Declaratieve gespreksflows in JSON

    Combineer say, play, gather, record, transfer en dial als een platte JSON-array.

  3. 03

    Opname met transcriptie

    Optionele opname op elk gespreksonderdeel; transcripties worden automatisch gegenereerd in 40+ talen.

  4. 04

    Streaming TTS, sub-250ms

    First-byte audio via HTTP chunked transfer of WebSocket, gefactureerd per teken.

  5. 05

    Voice OTP via verificaties

    Dezelfde bird.verifications-resource als SMS OTP; wissel het channel-veld.

  6. 06

    Virtuele nummers in 100+ landen

    Richt long codes in vanuit het dashboard of de numbers API in seconden.

  7. 07

    Gemaskeerde gesprekken

    Nummers van beller en ontvanger worden nooit aan elkaar blootgesteld: privacy door routing.

  8. 08

    SmartRouting per gesprek

    Goedkoopste carrier in real time geselecteerd voor elk onderdeel, met route-herselectie bij falen.

  9. 09

    Webhook-events per gesprek

    call.ringing, call.answered, call.completed en meer: HMAC-ondertekend, replay-beschermd.

  10. 10

    WebRTC client SDK

    Browser-naar-PSTN-bridges vanuit één npm-pakket; werkt in elke moderne runtime.

Waarom we Voice bouwen

Voice is het kanaal dat iedereen als bijzaak behandelt. Wij niet.

Voice is lastig — sub-seconde latentie, echte carrier-routing, opname-compliance — en daarom geven de meeste aanbieders het een eigen auth, eigen SDK, eigen webhook-contract. Wij hebben de tijd genomen om het dezelfde vorm te geven als elk ander Bird-endpoint: dezelfde auth, dezelfde idempotency, dezelfde error-envelope. Gespreksbesturing is gewoon JSON.

place-call.ts
201 · 0.4s

Elke statuswijziging is een webhook.

HMAC-ondertekende payloads, replay-beschermd, idempotent. Dezelfde envelop op elk Bird-kanaal: leer er één, en u kent ze allemaal.

POST /webhooks/bird
signed

Retry-schema: 5s, 30s, 5m, 30m, 2u, 6u, 12u. Dead-letter na de laatste poging; elk dead-lettered event is opnieuw afspeelbaar vanuit het dashboard of de API.

  • call.queuedGeaccepteerd door de API en in de wachtrij voor uitbellen.
  • call.ringingDe ontvangende lijn gaat over: pre-answer status.
  • call.answeredDe gebelde heeft opgenomen; facturering start bij dit event.
  • call.completedHet gesprek is normaal beëindigd: duur en prijs in de payload.
  • call.failedPermanente fout (bezet, geen antwoord, carrier-weigering) met een getypeerde reden.
  • call.recording.readyOpname is gecodeerd en beschikbaar via de gesigneerde URL in de payload.
  • call.transcript.readyTranscriptie voltooid; payload bevat taal en segmenten.

Voice OTP is dezelfde resource als SMS OTP.

Plaats een aangepaste oproep of draag de verificatie over aan de runtime. Dezelfde authenticatie, dezelfde idempotency, dezelfde fout-envelop: het channel-veld is het enige dat verandert.

Aangepast gesprek.

voice.calls.create

Stel elke flow samen — say, gather, transfer — voor de gevallen waarin je het script in je code wilt.

Verificaties.

verifications.start

Eén regel. Bird kiest de route, voert de fraudecontrole uit en verstuurt de audioprompt. Dezelfde code op elk kanaal.

Per minuut, landafhankelijk.

Streaming TTS gefactureerd per karakter. Volumekortingen worden automatisch toegepast bij gangbare drempels. Geen stoelkosten, geen functies achter een jaarcontract.

Begin met één kanaal.
Voeg de rest toe wanneer je er klaar voor bent.

Een test-API-key is direct beschikbaar. Productietoegang wordt ontgrendeld zodra je een betaalmethode toevoegt en een afzender verifieert.

Gebruik je Claude Code, Cursor of Codex? Kopieer een setup-prompt en je agent installeert de Bird CLI en skills voor je. Kies de jouwe:

Cursor