# Wiadomości obrazkowe WhatsApp

Wiadomość obrazkowa zawiera publiczny URL, który WhatsApp pobiera w momencie wysyłki, z opcjonalnym podpisem pod spodem.

## Wyślij obraz

Ustaw `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](/pl-pl/dokumentacja/guides/whatsapp/message-types/images.ts.md) · [Python](/pl-pl/dokumentacja/guides/whatsapp/message-types/images.py.md) · [Go](/pl-pl/dokumentacja/guides/whatsapp/message-types/images.go.md) · [PHP](/pl-pl/dokumentacja/guides/whatsapp/message-types/images.php.md) · [CLI](/pl-pl/dokumentacja/guides/whatsapp/message-types/images.cli.md) · [MCP](/pl-pl/dokumentacja/guides/whatsapp/message-types/images.mcp.md) · [cURL](/pl-pl/dokumentacja/guides/whatsapp/message-types/images.curl.md)

Pełna struktura dodaje opcjonalny `caption`:

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

`image` nie ma pola `filename`. `from` jest wymagany w każdej wiadomości serwisowej: numer należący do Twojego obszaru roboczego, a nie zarządzany przez Bird.

## Limity

| Pole          | Ograniczenie                                       | Wymuszane przez                       |
| ------------- | -------------------------------------------------- | ------------------------------------- |
| Rozmiar pliku | 5 MB                                               | tylko WhatsApp, przy pobraniu (async) |
| Typ pliku     | JPEG lub PNG                                       | tylko WhatsApp, przy pobraniu (async) |
| `caption`     | do 1024 znaków                                     | Bird, przy przyjęciu (`422`)          |
| `url`         | bezwzględny, `https`, ma host, bez surowych spacji | Bird, przy przyjęciu (`422`)          |

Bird sprawdza kształt URL-a i długość podpisu, zanim cokolwiek trafi do kolejki. Nie sprawdza rzeczywistego rozmiaru ani typu pliku; to może zrobić dopiero pobranie wykonywane przez WhatsApp w momencie wysyłki. Zobacz w hubie [wysyłanie mediów przez URL](/docs/guides/whatsapp/message-types#sending-media-by-url), żeby dowiedzieć się, co obejmuje ta walidacja kształtu, oraz [gdy media zawodzą](/docs/guides/whatsapp/message-types#when-media-fails), żeby zobaczyć, co się dzieje, gdy pobranie przez WhatsApp odrzuci plik.

## Odczytywanie przychodzącego obrazu

Przychodzący obraz zawiera ten sam obiekt `image` oraz `id` i `mime_type`, które Bird poznał, pobierając plik. Oba są nieobecne przy odczycie wiadomości wychodzącej, ponieważ Bird nigdy nie pobierał pliku, który wysłał. Zobacz [Odbieranie obrazów WhatsApp](/docs/guides/whatsapp/receiving-whatsapp/images), żeby poznać pełny odczyt przychodzący, ładunek `whatsapp.received` i na co uważać.

## Limity i tryby awarii

- **Okno obsługi klienta musi być otwarte.** Obrazy to wiadomości serwisowe, dostarczalne tylko w otwartym oknie; zobacz w hubie [okno obsługi klienta](/docs/guides/whatsapp/message-types#the-customer-service-window).
- **Bird odrzuca `http`; WhatsApp sam by go pobrał.** To rozróżnienie i reszta walidacji kształtu URL-a znajdują się w hubie na stronie [wysyłanie mediów przez URL](/docs/guides/whatsapp/message-types#sending-media-by-url).
- **Za duży plik, nieprawidłowy typ MIME lub nieosiągalny URL kończą się tak samo i po naliczeniu opłaty.** Zobacz w hubie [gdy media zawodzą](/docs/guides/whatsapp/message-types#when-media-fails), żeby poznać `media_rejected` i fakt naliczania opłaty przy błędzie.
- **WhatsApp przechowuje pobrany URL w pamięci podręcznej przez około 10 minut.** Ponowne wysłanie identycznego URL-a w tym oknie serwuje wynik pierwszego pobrania zamiast pobierać ponownie; zmień URL (np. dodaj parametr zapytania), żeby wymusić nowe pobranie.

## Następne kroki

- [Wiadomości serwisowe WhatsApp](/docs/guides/whatsapp/message-types): okno obsługi klienta i model wspólny dla wszystkich wiadomości serwisowych
- [Wideo](/docs/guides/whatsapp/message-types/video): ta sama struktura dla klipu wideo
- [Dokumenty](/docs/guides/whatsapp/message-types/documents): dla pliku PDF, arkusza kalkulacyjnego lub innego pliku
- [Wysyłanie wiadomości WhatsApp](/docs/guides/whatsapp/sending-whatsapp): koperta żądania, model `202` i bezpieczne ponawianie

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