Przejdź do głównej treści

Wysylanie wiadomosci

Wszystkie wiadomosci sa wysylane przez jeden endpoint. Pole type okresla rodzaj wysylanej wiadomosci, a pozostale pola zmieniaja sie odpowiednio. Endpoint:
POST https://api.wappfy.io/api/instances/{instanceId}/messages/send
Naglowki:
NaglowekWartosc
X-Api-KeyTwoj klucz API
Content-Typeapplication/json

Wiadomosc tekstowa

Wyslij zwykla wiadomosc tekstowa.
curl -X POST https://api.wappfy.io/api/instances/inst_abc123/messages/send \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "chat_id": "5511999998888@s.whatsapp.net",
    "type": "text",
    "text": "Hello from Wappfy!"
  }'
Odpowiedz:
{
  "data": {
    "message_id": "BAE5F2C4D3B2A1",
    "status": "sent"
  }
}

Wiadomosc z obrazem

Wyslij obraz z opcjonalnym podpisem.
curl -X POST https://api.wappfy.io/api/instances/inst_abc123/messages/send \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "chat_id": "5511999998888@s.whatsapp.net",
    "type": "image",
    "media_url": "https://example.com/photo.jpg",
    "caption": "Check out this photo!"
  }'

Wiadomosc wideo

Wyslij plik wideo z opcjonalnym podpisem.
curl -X POST https://api.wappfy.io/api/instances/inst_abc123/messages/send \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "chat_id": "5511999998888@s.whatsapp.net",
    "type": "video",
    "media_url": "https://example.com/clip.mp4",
    "caption": "Watch this!"
  }'

Wiadomosc audio

Wyslij plik audio. Wiadomosci audio pojawiaja sie jako wiadomosci glosowe w WhatsApp.
curl -X POST https://api.wappfy.io/api/instances/inst_abc123/messages/send \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "chat_id": "5511999998888@s.whatsapp.net",
    "type": "audio",
    "media_url": "https://example.com/voice-note.ogg"
  }'
Dla najlepszej kompatybilnosci uzywaj plikow .ogg zakodowanych kodekiem Opus do wiadomosci glosowych.

Wiadomosc z dokumentem

Wyslij plik jako zalacznik dokumentu.
curl -X POST https://api.wappfy.io/api/instances/inst_abc123/messages/send \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "chat_id": "5511999998888@s.whatsapp.net",
    "type": "document",
    "media_url": "https://example.com/report.pdf",
    "filename": "Q1-Report.pdf",
    "caption": "Here is the quarterly report"
  }'

Wiadomosc z lokalizacja

Wyslij pinezke z lokalizacja geograficzna.
curl -X POST https://api.wappfy.io/api/instances/inst_abc123/messages/send \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "chat_id": "5511999998888@s.whatsapp.net",
    "type": "location",
    "latitude": -23.5505,
    "longitude": -46.6333,
    "name": "Sao Paulo",
    "address": "Sao Paulo, SP, Brazil"
  }'

Ankieta

Utworz interaktywna ankiete. Odbiorcy moga glosowac na opcje bezposrednio w WhatsApp.
curl -X POST https://api.wappfy.io/api/instances/inst_abc123/messages/send \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "chat_id": "5511999998888@s.whatsapp.net",
    "type": "poll",
    "poll_name": "What day works best for the meeting?",
    "poll_options": ["Monday", "Wednesday", "Friday"],
    "poll_allow_multiple": false
  }'

Kontakt / vCard

Udostepnij wizytowke kontaktu.
curl -X POST https://api.wappfy.io/api/instances/inst_abc123/messages/send \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "chat_id": "5511999998888@s.whatsapp.net",
    "type": "contact",
    "contact_name": "Maria Silva",
    "contact_phone": "+5511988887777"
  }'

Przekazanie wiadomosci

Przekaz istniejaca wiadomosc do innego czatu.
curl -X POST https://api.wappfy.io/api/instances/inst_abc123/messages/send \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "chat_id": "5511888887777@s.whatsapp.net",
    "type": "forward",
    "forward_message_id": "BAE5F2C4D3B2A1",
    "forward_chat_id": "5511999998888@s.whatsapp.net"
  }'

Reakcja

Zareaguj na wiadomosc za pomoca emoji.
curl -X POST https://api.wappfy.io/api/instances/inst_abc123/messages/send \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "chat_id": "5511999998888@s.whatsapp.net",
    "type": "reaction",
    "reaction_message_id": "BAE5F2C4D3B2A1",
    "reaction": "\ud83d\udc4d"
  }'
Aby usunac reakcje, wyslij pusty ciag znakow jako wartosc reaction.

Funkcje zaawansowane

Odpowiedz na wiadomosc

Cytuj poprzednia wiadomosc, dolaczajac quoted_message_id. Dziala z kazdym typem wiadomosci.
curl -X POST https://api.wappfy.io/api/instances/inst_abc123/messages/send \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "chat_id": "5511999998888@s.whatsapp.net",
    "type": "text",
    "text": "Yes, I agree with this!",
    "quoted_message_id": "BAE5F2C4D3B2A1"
  }'

Edycja wyslanej wiadomosci

Edytuj wczesniej wyslana wiadomosc, podajac edit_message_id.
curl -X POST https://api.wappfy.io/api/instances/inst_abc123/messages/send \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "chat_id": "5511999998888@s.whatsapp.net",
    "type": "text",
    "text": "Updated message content",
    "edit_message_id": "BAE5F2C4D3B2A1"
  }'
Mozna edytowac tylko wiadomosci, ktore sam wyslales. Edycja ma ograniczenie czasowe narzucone przez WhatsApp (okolo 15 minut od wyslania).

Wzmianki

Oznacz konkretne kontakty w wiadomosci grupowej. Oznaczone kontakty otrzymaja powiadomienie.
curl -X POST https://api.wappfy.io/api/instances/inst_abc123/messages/send \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "chat_id": "120363012345678901@g.us",
    "type": "text",
    "text": "Hey @Maria and @Carlos, please review this.",
    "mentions": [
      "5511999998888@s.whatsapp.net",
      "5511888887777@s.whatsapp.net"
    ]
  }'

Formaty chat ID

FormatOpisPrzyklad
{phone}@s.whatsapp.netCzat indywidualny5511999998888@s.whatsapp.net
{id}@g.usCzat grupowy120363012345678901@g.us

Brazylijskie numery telefonow

Wappfy automatycznie obsluguje problem brazylijskiej 9. cyfry. Jesli wiadomosc nie powiedzie sie z bledem “no LID found”, system automatycznie ponowi probe z alternatywnym formatem (dodajac lub usuwajac 9. cyfre).Na przyklad, jesli 5511999998888 nie powiedzie sie, ponowi probe z 551199998888 i odwrotnie. Dzieje sie to transparentnie — nie musisz tego obslugiowac samodzielnie.

Informacje o typach wiadomosci

TypWymagane polaOpcjonalne pola
texttextquoted_message_id, edit_message_id, mentions
imagemedia_urlcaption, quoted_message_id
videomedia_urlcaption, quoted_message_id
audiomedia_urlquoted_message_id
documentmedia_urlfilename, caption, quoted_message_id
locationlatitude, longitudename, address, quoted_message_id
pollpoll_name, poll_optionspoll_allow_multiple
contactcontact_name, contact_phonequoted_message_id
forwardforward_message_id, forward_chat_id
reactionreaction_message_id, reaction

Obsluga bledow

Kod statusuOpis
400Nieprawidlowe dane wiadomosci (np. brak wymaganych pol dla danego typu).
404Instancja nie znaleziona lub nie polaczona.
422Walidacja wiadomosci nie powiodla sie (np. nieprawidlowy format numeru telefonu).
429Przekroczono limit zapytan. Zobacz Limity zapytan.
502Dostawca WhatsApp zwrocil blad. Sprawdz komunikat bledu po szczegoly.