---
title: "Wyślij pierwszą wiadomość WhatsApp"
description: "Utwórz klucz Bird API, wyślij na swój telefon wiadomość z zatwierdzonego szablonu WhatsApp bez podłączania numeru i sprawdź jej status dostarczenia."
canonical: "https://bird.com/pl-pl/dokumentacja/get-started/send-your-first-whatsapp"
---

# Wyślij pierwszą wiadomość WhatsApp

Wyślij wiadomość WhatsApp na swój telefon za pomocą Bird WhatsApp, a następnie odczytaj ją, aby potwierdzić dostarczenie. Wiadomości inicjowane przez firmę wymagają zatwierdzonego szablonu. Ten przewodnik wysyła wiadomość z zarządzanego katalogu szablonów Bird (np. `bird_delivery_update` lub `bird_otp`), który korzysta ze współdzielonego nadawcy WhatsApp zarządzanego przez Bird. Nie musisz wcześniej podłączać konta WhatsApp Business Account ani rejestrować numeru.

Zanim zaczniesz, upewnij się, że portfel Twojej organizacji ma środki. Wysyłki szablonów WhatsApp są opłacane z portfela, a Bird odrzuca wysyłkę, której saldo nie pokrywa, zwracając `402` `WalletInsufficientBalance`. Doładowanie opisuje strona [Metody płatności i portfel](/docs/knowledge-base/billing/payment-methods-wallet).

## 1. Utwórz klucz API

W panelu przejdź do **Platform tools** > [**API keys**](https://bird.com/dashboard/w/api-keys) i utwórz klucz z zakresem `whatsapp:write`, który obejmuje wysyłanie i odczytywanie wiadomości. Klucze są przypisane do regionu i wyglądają jak `bk_us1_...` lub `bk_eu1_...`. Region w prefiksie wskazuje, który host API wywołać: `https://us1.platform.bird.com` lub `https://eu1.platform.bird.com`.

![Strona API Keys w panelu Bird z listą kluczy, ich zamaskowanym prefiksem, zakresami i czasem ostatniego użycia](/images/docs/dashboard-api-keys.png)

Pełny klucz jest wyświetlany **tylko raz**, podczas tworzenia. Skopiuj go w bezpieczne miejsce, a następnie wyeksportuj na potrzeby przykładów cURL:

```bash
export BIRD_API_KEY="bk_us1_..."
```

## 2. Wyślij wiadomość z szablonu

Wyślij na swój telefon zatwierdzony szablon `bird_delivery_update` z zarządzanego katalogu Bird albo użyj `bird_otp`, aby wysłać jednorazowy kod weryfikacyjny. Nazwy zarządzanych szablonów zaczynają się od `bird_`, a wiadomości są wysyłane ze współdzielonego numeru Bird, więc pomiń `from`. Zainstaluj Bird SDK dla swojego języka, korzystając z [przewodnika SDK](/docs/get-started/quickstarts). Jeśli używasz karty [Bird CLI](/docs/cli), najpierw je zainstaluj (`curl -fsSL https://cli.bird.com/install.sh | sh`) i uwierzytelnij się z uprawnieniami do zapisu (`bird auth login --scope whatsapp:write`).

W kartach SDK zastąp przykładowy klucz API, a `+15551234567` zastąp swoim numerem komórkowym w formacie [E.164](https://en.wikipedia.org/wiki/E.164). CLI korzysta z Twojego logowania, a karta cURL używa `BIRD_API_KEY`.

**TypeScript**

```typescript
import { BirdClient } from "@messagebird/sdk";

const bird = new BirdClient({ apiKey: "bk_XXXXXXXXXXXXXXXXXXXXXXXX" });

const msg = await bird.whatsapp.send({
  to: "+15551234567",
  template: {
    slug: "bird_delivery_update",
    components: [
      {
        type: "body",
        parameters: [
          { type: "text", name: "ref", text: "A1B2C3D4" },
          { type: "text", name: "date", text: "10 Jul 2026" },
        ],
      },
    ],
  },
});

console.log(msg.id, msg.status);
```

Examples: [TypeScript](/pl-pl/dokumentacja/get-started/send-your-first-whatsapp.ts.md) · [Python](/pl-pl/dokumentacja/get-started/send-your-first-whatsapp.py.md) · [Go](/pl-pl/dokumentacja/get-started/send-your-first-whatsapp.go.md) · [PHP](/pl-pl/dokumentacja/get-started/send-your-first-whatsapp.php.md) · [CLI](/pl-pl/dokumentacja/get-started/send-your-first-whatsapp.cli.md) · [MCP](/pl-pl/dokumentacja/get-started/send-your-first-whatsapp.mcp.md) · [cURL](/pl-pl/dokumentacja/get-started/send-your-first-whatsapp.curl.md)

Jeśli Twój klucz zaczyna się od `bk_eu1_`, wywołaj zamiast tego `https://eu1.platform.bird.com`.

API odpowiada kodem `202 Accepted` i utworzoną wiadomością. Jej `id` zaczyna się od `wam_`, a jej `status` ma wartość `accepted`: Bird przyjął wiadomość i dostarcza ją asynchronicznie. Zachowaj `id` na potrzeby następnego kroku.

## 3. Sprawdź status dostarczenia

Pobierz wiadomość według jej identyfikatora `wam_`. Zastąp `WHATSAPP_MESSAGE_ID` wartością `id` z kroku 2, a przykładowy klucz API w zakładkach SDK zastąp własnym:

**TypeScript**

```typescript
import { BirdClient } from "@messagebird/sdk";

const bird = new BirdClient({ apiKey: "bk_XXXXXXXXXXXXXXXXXXXXXXXX" });

const msg = await bird.whatsapp.get("WHATSAPP_MESSAGE_ID");

console.log(msg.id, msg.status);
```

Examples: [TypeScript](/pl-pl/dokumentacja/get-started/send-your-first-whatsapp.ts.md) · [Python](/pl-pl/dokumentacja/get-started/send-your-first-whatsapp.py.md) · [Go](/pl-pl/dokumentacja/get-started/send-your-first-whatsapp.go.md) · [PHP](/pl-pl/dokumentacja/get-started/send-your-first-whatsapp.php.md) · [CLI](/pl-pl/dokumentacja/get-started/send-your-first-whatsapp.cli.md) · [cURL](/pl-pl/dokumentacja/get-started/send-your-first-whatsapp.curl.md)

Pole `status` informuje, na jakim etapie jest wiadomość:

- `accepted`: Bird przyjął wiadomość i przygotowuje się do przekazania jej do WhatsApp.
- `sent`: WhatsApp zaakceptował wiadomość, a `sent_at` zapisuje, kiedy to nastąpiło.
- `delivered`: WhatsApp potwierdził dostarczenie na urządzenie odbiorcy, a `delivered_at` zapisuje, kiedy to nastąpiło. Gdy odbiorca przeczyta wiadomość, ustawiane jest `read_at`, a `status` pozostaje `delivered`.
- `failed` lub `rejected`: wiadomość nie dotarła do telefonu. `last_error` podaje przyczynę, a [Zdarzenia statusu wiadomości](/docs/guides/whatsapp/events/message-status) zawierają listę kodów błędów.

Odpytuj API, dopóki status nie przestanie mieć wartości `accepted` ani `sent`, albo zasubskrybuj [webhooki WhatsApp](/docs/guides/whatsapp/webhooks), aby otrzymywać każdą zmianę statusu dostarczenia i odczytu (`whatsapp.sent`, `whatsapp.delivered`, `whatsapp.read`, `whatsapp.failed`). Współdzielone numery zarządzane przez Bird służą tylko do wysyłki i nie przekazują odpowiedzi przychodzących do Twojego obszaru roboczego; aby otrzymywać odpowiedzi, [podłącz własny numer](/docs/guides/whatsapp/numbers/connect). Każda wiadomość pojawia się też na stronie [**Messages**](https://bird.com/dashboard/w/whatsapp/messages) wraz z osią czasu zdarzeń.

## Napraw nieudaną wysyłkę

- **`402` `WalletInsufficientBalance`**: środki w portfelu nie pokrywają kosztu wiadomości. Doładuj portfel, a następnie wyślij ponownie.
- **`403` `InsufficientScope`**: klucz API nie ma zakresu `whatsapp`. Zmień zakresy klucza lub utwórz klucz z zakresem `whatsapp:write`.
- **`422` `WhatsAppInvalidRecipient`**: numer `to` nie jest prawidłowym numerem telefonu w formacie E.164. Sprawdź początkowy znak `+`, kod kraju i cyfry numeru abonenta.

## Następne kroki

- [Wysyłanie wiadomości WhatsApp](/docs/guides/whatsapp/sending-whatsapp): wysyłaj szablony i dowolne wiadomości serwisowe w 24-godzinnym oknie obsługi klienta.
- [Szablony WhatsApp](/docs/guides/whatsapp/templates): przeglądaj zarządzany katalog (`bird_otp`, `bird_delivery_update` i inne) lub [utwórz własne szablony](/docs/guides/whatsapp/authoring-templates).
- [Połącz numer telefonu](/docs/guides/whatsapp/numbers/connect): użyj własnego konta WhatsApp Business Account i numeru nadawcy, aby Twój obszar roboczy mógł także odbierać przychodzące odpowiedzi.
- [Webhooki WhatsApp](/docs/guides/whatsapp/webhooks): odbieraj potwierdzenia doręczenia i odczytu (oraz wiadomości przychodzące, gdy używasz własnego połączonego numeru).
- [Dokumentacja WhatsApp API](/docs/api/reference/create-whatsapp-message): pełny schemat żądań i odpowiedzi.

## 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)
- [Connect WhatsApp](/whatsapp-api) (product)

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