# WhatsApp-audioberichten

Een audiobericht bevat een publieke URL die WhatsApp op het moment van verzenden ophaalt. Het heeft geen bijschrift en kan optioneel als spraakbericht worden weergegeven.

## Een audiobericht versturen

Stel `audio.url` in:

**TypeScript**

```typescript
const msg = await bird.whatsapp.send({
  to: "+16505551234",
  from: "+13124495648",
  audio: { url: "https://cdn.example.com/vm/9f2.ogg" },
});
console.log(msg.id, msg.status);
```

Examples: [TypeScript](/nl-nl/documentatie/guides/whatsapp/message-types/audio.ts.md) · [Python](/nl-nl/documentatie/guides/whatsapp/message-types/audio.py.md) · [Go](/nl-nl/documentatie/guides/whatsapp/message-types/audio.go.md) · [PHP](/nl-nl/documentatie/guides/whatsapp/message-types/audio.php.md) · [CLI](/nl-nl/documentatie/guides/whatsapp/message-types/audio.cli.md) · [MCP](/nl-nl/documentatie/guides/whatsapp/message-types/audio.mcp.md) · [cURL](/nl-nl/documentatie/guides/whatsapp/message-types/audio.curl.md)

De volledige structuur voegt de optionele `voice`-vlag toe, het enige andere veld dat `audio` heeft:

```json
{
  "to": "+16505551234",
  "from": "+13124495648",
  "audio": { "url": "https://cdn.example.com/voice/9f2e4a.ogg", "voice": true }
}
```

`audio` heeft helemaal geen `caption`-veld. `from` is verplicht bij elk servicebericht: een nummer dat je werkruimte bezit, niet een door Bird beheerd nummer.

## Limieten

| Veld            | Grens                                                                   | Afgedwongen door                              |
| --------------- | ----------------------------------------------------------------------- | --------------------------------------------- |
| Bestandsgrootte | 16 MB                                                                   | alleen WhatsApp, bij ophalen (async)          |
| Formaat         | AAC, AMR, MP3, M4A of OGG met de OPUS-codec, mono                       | alleen WhatsApp, bij ophalen (async)          |
| `voice: true`   | vereist `.ogg`/OPUS, mono; andere formaten laten transcriptie mislukken | alleen WhatsApp, bij ophalen (async)          |
| `caption`       | geen geldig veld                                                        | Bird, bij acceptatie (`422`, schemaweigering) |
| `url`           | absoluut, `https`, heeft een host, geen ongeëscapete spatie             | Bird, bij acceptatie (`422`)                  |

Bird controleert de vorm van de URL voordat iets in de wachtrij wordt geplaatst; het controleert niet de werkelijke grootte, het formaat of de codec van het bestand, en het controleert niet of een `voice: true`-verzending daadwerkelijk `.ogg`/OPUS is. Alleen de eigen ophaalactie van WhatsApp op het moment van verzenden kan dat. Een `caption` meesturen bij een audiobericht is geen lengtefout; het veld bestaat niet in het schema van deze arm, dus het mislukt als een niet-herkende eigenschap. Zie de hub's [media versturen via URL](/docs/guides/whatsapp/message-types#sending-media-by-url) en [wanneer media mislukt](/docs/guides/whatsapp/message-types#when-media-fails).

## Een inkomend audiobericht lezen

Een inkomend audiobericht bevat hetzelfde `audio`-object, plus een `id` en `mime_type` die Bird heeft geleerd door het bestand op te halen, en geen `caption` in beide richtingen. Zie [WhatsApp-audio ontvangen](/docs/guides/whatsapp/receiving-whatsapp/audio) voor het volledige inkomende bericht, de `whatsapp.received`-payload en waar je op moet letten.

## Limieten en foutscenario's

- **Het klantenservicevenster moet open zijn.** Audio is een servicebericht dat alleen binnen een open venster kan worden afgeleverd; zie de hub's [klantenservicevenster](/docs/guides/whatsapp/message-types#the-customer-service-window).
- **Bird weigert `http`; WhatsApp zelf zou het ophalen.** Zie de hub's [media versturen via URL](/docs/guides/whatsapp/message-types#sending-media-by-url) voor de volledige vormcontrole.
- **Een geweigerde ophaalactie wordt toch in rekening gebracht.** Zie de hub's [wanneer media mislukt](/docs/guides/whatsapp/message-types#when-media-fails). De weigeringstekst van WhatsApp specifiek voor audio is niet onafhankelijk gemeten, dus beschouw de mapping als afgeleid door symmetrie in plaats van bevestigd per oorzaak.
- **De `voice`-vlag verandert hoe de client van de ontvanger het bericht weergeeft, niet wat Bird valideert.** `voice: true` geeft het weer als spraakbericht: het downloadt automatisch, toont een inline microfoonpictogram en kan worden getranscribeerd. Daarvoor heb je een `.ogg`-bestand nodig gecodeerd met OPUS, mono; elk ander formaat wordt nog steeds verzonden, maar transcriptie mislukt aan de kant van de ontvanger. `voice` staat standaard op `false`.
- **De eigen afspeelpictogramdrempel en het "played"-signaal van WhatsApp zijn niet iets dat Bird beschikbaar maakt.** WhatsApp documenteert een clientgedrag rond korte spraakberichten en een afspeelstatus, maar Bird modelleert geen van beide; bouw geen integratie die verwacht een van beide terug te lezen uit de API.
- **WhatsApp cachet een opgehaalde URL ongeveer 10 minuten.** Als je dezelfde URL binnen dat venster opnieuw verstuurt, wordt de eerste ophaalactie opnieuw geserveerd; varieer de URL om een nieuwe op te halen.

## Volgende stappen

- [WhatsApp-serviceberichten](/docs/guides/whatsapp/message-types): het klantenservicevenster en het model dat elk servicebericht deelt
- [Video](/docs/guides/whatsapp/message-types/video): voor een videofragment in plaats van audio
- [Stickers](/docs/guides/whatsapp/message-types/stickers): een andere media-arm zonder bijschriftveld
- [WhatsApp-berichten versturen](/docs/guides/whatsapp/sending-whatsapp): de request-envelope, het `202`-model en veilig opnieuw proberen

## Related resources

- [Connecting WhatsApp to Bird: from buying a number to a live channel](/learn/whatsapp/connecting-whatsapp-to-bird) (video)
- [What is the 24-hour customer service window on WhatsApp?](/explained/whatsapp/what-is-the-24-hour-customer-service-window) (answer)
- [WhatsApp message builder](/tools/whatsapp-message-builder) (tool)
- [WhatsApp](/products/whatsapp) (product)

[Get an implementation brief](/learn/workspace?topic=whatsapp)
