# WhatsApp-Bildnachrichten

Eine Bildnachricht enthält eine öffentliche URL, die WhatsApp beim Senden abruft, mit einer optionalen Beschriftung darunter.

## Ein Bild senden

Setzen Sie `image.url`:

**TypeScript**

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

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

Die vollständige Struktur fügt ein optionales `caption` hinzu:

```json
{
  "to": "+16505551234",
  "from": "+13124495648",
  "image": {
    "url": "https://cdn.example.com/receipts/a1b2c3.png",
    "caption": "Your receipt for order A1B2C3"
  }
}
```

`image` hat kein `filename`-Feld. `from` ist bei jeder Service-Nachricht erforderlich: eine Nummer, die Ihr Workspace besitzt, keine von Bird verwaltete.

## Limits

| Feld       | Grenze                                             | Geprüft von                      |
| ---------- | -------------------------------------------------- | -------------------------------- |
| Dateigröße | 5 MB                                               | nur WhatsApp, beim Abruf (async) |
| Dateityp   | JPEG oder PNG                                      | nur WhatsApp, beim Abruf (async) |
| `caption`  | bis zu 1024 Zeichen                                | Bird, bei Annahme (`422`)        |
| `url`      | absolut, `https`, mit Host, ohne rohes Leerzeichen | Bird, bei Annahme (`422`)        |

Bird prüft die Form der URL und die Länge der Beschriftung, bevor etwas in die Warteschlange gestellt wird. Dateigröße und -typ werden dabei nicht geprüft; das kann nur der eigene Abruf von WhatsApp beim Senden. Unter [Medien per URL senden](/docs/guides/whatsapp/message-types#sending-media-by-url) im Hub erfahren Sie, was diese Formprüfung abdeckt, und unter [Wenn Medien fehlschlagen](/docs/guides/whatsapp/message-types#when-media-fails), was passiert, wenn der Abruf von WhatsApp die Datei ablehnt.

## Ein eingehendes Bild lesen

Ein eingehendes Bild enthält dasselbe `image`-Objekt sowie `id` und `mime_type`, die Bird durch Abrufen der Datei ermittelt hat. Beide fehlen beim Zurücklesen einer ausgehenden Nachricht, da Bird die gesendete Datei nie selbst abgerufen hat. Unter [WhatsApp-Bilder empfangen](/docs/guides/whatsapp/receiving-whatsapp/images) finden Sie den vollständigen eingehenden Lesevorgang, die `whatsapp.received`-Payload und worauf Sie achten sollten.

## Limits und Fehlerfälle

- **Das Kundenservice-Fenster muss offen sein.** Bilder sind Service-Nachrichten und nur innerhalb eines offenen Fensters zustellbar; siehe [Kundenservice-Fenster](/docs/guides/whatsapp/message-types#the-customer-service-window) im Hub.
- **Bird lehnt `http` ab; WhatsApp selbst würde sie abrufen.** Diese Unterscheidung und die restliche URL-Formprüfung finden Sie unter [Medien per URL senden](/docs/guides/whatsapp/message-types#sending-media-by-url) im Hub.
- **Eine zu große Datei, ein falscher MIME-Typ oder eine nicht erreichbare URL schlagen alle auf dieselbe Weise fehl – und erst nach der Abrechnung.** Unter [Wenn Medien fehlschlagen](/docs/guides/whatsapp/message-types#when-media-fails) im Hub finden Sie `media_rejected` und die Tatsache, dass bei Fehlschlag trotzdem abgerechnet wird.
- **WhatsApp speichert eine abgerufene URL etwa 10 Minuten im Cache.** Wird dieselbe URL innerhalb dieses Zeitfensters erneut gesendet, wird der erste Abruf wiederverwendet statt erneut abzurufen; variieren Sie die URL (z. B. mit einem Query-Parameter), um einen neuen Abruf zu erzwingen.

## Nächste Schritte

- [WhatsApp-Service-Nachrichten](/docs/guides/whatsapp/message-types): das Kundenservice-Fenster und das Modell, das alle Service-Nachrichten teilen
- [Video](/docs/guides/whatsapp/message-types/video): dieselbe Struktur für einen Videoclip
- [Dokumente](/docs/guides/whatsapp/message-types/documents): für ein PDF, eine Tabelle oder eine andere Datei
- [WhatsApp-Nachrichten senden](/docs/guides/whatsapp/sending-whatsapp): der Request-Envelope, das `202`-Modell und sicheres erneutes Versuchen

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