# WhatsApp-afbeeldingen ontvangen

Een foto of afbeelding die een contact stuurt, komt binnen als een inkomend bericht met `image`: een verwijzing naar het bestand dat Bird voor je heeft opgeslagen, plus het bijschrift dat ze eronder hebben getypt.

## Wat een inkomende afbeelding bevat

```json
{
  "id": "wam_01kya19eknftrs2s6p82asmvnh",
  "direction": "inbound",
  "from": { "phone_number": "+14155550100" },
  "to": { "phone_number": "+13124495569" },
  "status": "received",
  "image": {
    "id": "waf_01kyb2m4xq7whs0d8n3prv6tez",
    "url": "https://platform.bird.com/v1/whatsapp/messages/wam_01kya19eknftrs2s6p82asmvnh/media/waf_01kyb2m4xq7whs0d8n3prv6tez",
    "mime_type": "image/jpeg",
    "caption": "Is this the right part?"
  },
  "created_at": "2026-08-25T09:04:11Z"
}
```

| Veld        | Wat het bevat                                                                                   |
| ----------- | ----------------------------------------------------------------------------------------------- |
| `id`        | Het opgeslagen bestand, mee te geven als `media_id` bij het ophalen van de bytes                |
| `url`       | Een Bird-URL, op te halen met je API-sleutel                                                    |
| `mime_type` | Het mediatype dat WhatsApp voor het bestand heeft gerapporteerd, zoals `image/jpeg`             |
| `caption`   | De tekst die het contact onder de afbeelding heeft getypt; afwezig als ze niets hebben gestuurd |

`id` en `mime_type` verschijnen alleen bij een inkomende afbeelding: Bird leert beide door het bestand op te halen, en heeft het bestand dat je hebt verstuurd nooit opgeslagen. Een uitgaande afbeelding wordt teruggelezen met de `url` die je hebt opgegeven en zonder `id`.

Behandel `mime_type` als het rapport van WhatsApp in plaats van als een garantie, en vertakt erop in plaats van op de bestandsextensie in `url`, die er geen bevat.

## De bytes ophalen

`url` en `id` verwijzen beide naar hetzelfde opgeslagen bestand: geef het bericht-ID en de media-`id` door aan de mediamethode van het kanaal, in elke SDK, de CLI, of cURL. De hub's [inkomende media ophalen](/docs/guides/whatsapp/receiving-whatsapp#fetching-inbound-media) bevat die aanroep in elke taal, samen met de redirect- en headerregels die erbij horen.

Het bericht en de media verlopen samen, 30 dagen na aankomst van het bericht; de hub's [inkomende media ophalen](/docs/guides/whatsapp/receiving-whatsapp#fetching-inbound-media) beheert dat venster en wat de reads teruggeven nadat het is verstreken. Sla elke afbeelding die je langer nodig hebt op zolang het bericht nog leesbaar is.

## De webhook-payload

`whatsapp.received` bevat de `image`-arm op de event-envelope, inclusief mediareferentie:

```json
{
  "type": "whatsapp.received",
  "timestamp": "2026-08-25T09:04:11.118Z",
  "data": {
    "whatsapp_id": "wam_01kya19eknftrs2s6p82asmvnh",
    "workspace_id": "ws_01ky7m235keycbnwyajabe1a6b",
    "direction": "inbound",
    "from": { "phone_number": "+14155550100" },
    "to": { "phone_number": "+13124495569" },
    "image": {
      "id": "waf_01kyb2m4xq7whs0d8n3prv6tez",
      "url": "https://platform.bird.com/v1/whatsapp/messages/wam_01kya19eknftrs2s6p82asmvnh/media/waf_01kyb2m4xq7whs0d8n3prv6tez",
      "mime_type": "image/jpeg",
      "caption": "Is this the right part?"
    },
    "tags": null,
    "metadata": null
  }
}
```

De webhook wordt afgevuurd wanneer het bericht binnenkomt, en dat is ook het moment waarop het bewaarvenster start. Een endpoint dat het ophalen in een wachtrij plaatst in plaats van het inline te doen, heeft dus het volledige venster om bij te werken.

## Aandachtspunten

- **Het bijschrift is van het contact.** Het komt binnen als platte tekst zonder opmaak of entity-informatie, dus render het als tekst.
- **Eén afbeelding per bericht.** Wanneer een contact meerdere foto's stuurt, ontstaan er meerdere inkomende berichten, elk met een eigen `id` en een eigen mediareferentie. Groepeer ze op `from` en aankomsttijd; er is geen array die ze bundelt.

## Volgende stappen

- [Hoe ontvangen werkt](/docs/guides/whatsapp/receiving-whatsapp): de inkomende envelope, media ophalen en de `whatsapp.received`-webhook
- [WhatsApp-afbeeldingsberichten](/docs/guides/whatsapp/message-types/images): de verzendzijde van dezelfde arm
- [Documenten ontvangen](/docs/guides/whatsapp/receiving-whatsapp/documents): dezelfde mediavorm, met de bestandsnaam van de afzender
- [WhatsApp-events](/docs/guides/whatsapp/events): de volledige eventlijst, via de API of webhooks

## 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)
