API, które rozumiesz bez czytania PDF-a.
Wszystko, czego potrzeba, żeby wysłać pierwszego SMS-a w 5 minut. Endpoint, pola żądania, kody błędów i webhooki – z przykładami w 5 językach.
Quickstart
1. Załóż konto
Rejestracja przez e-mail. 100 SMS gratis na start, bez podawania karty.
2. Wygeneruj Bearer Token
Token wygenerujesz w panelu klienta (lub przez biuro obsługi klienta). Zapisz go w bezpiecznym miejscu.
3. Wyślij pierwszy SMS
POST na /api/sms z payloadem JSON. Code samples niżej.
Endpoint: POST /api/sms
Główny endpoint wysyłki. Autoryzacja Bearer token, treść JSON (application/json). W odpowiedzi zwraca identyfikator wiadomości (message_id, 16 znaków hex).
Base URL
https://api.sendly.linkPola request
tostring (9–11 cyfr)wymaganeNumer odbiorcy – numeryczny łańcuch 9–11 znaków (np. 48732129001).
bodystringwymaganeTreść wiadomości, min. 1 znak. Kodowanie UCS-2 dzielone co 67 znaków; opcjonalnie GSM-7 (jedna wiadomość, maks. 160 znaków) – do włączenia w panelu.
fromstring (9–11 cyfr)Opcjonalne. Numer wirtualnego numeru komórkowego w SENDLY (numeryczny łańcuch 9–11 znaków).
curl -X POST https://api.sendly.link/api/sms \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"to": "48732129000",
"body": "Twój kod logowania: 482910"
}'Odpowiedź (200)
{ "message_id": "a906cff7719bd889" }Wysyłka masowa: POST /api/sms-multi
Ta sama wiadomość na wiele numerów (od 1 do 100). Aktywacja wyłącznie przez biuro obsługi klienta. Walidacja „wszystko albo nic" – każdy numer musi być poprawnym polskim numerem komórkowym, a numery muszą być unikalne; inaczej całe żądanie zostaje odrzucone. W odpowiedzi tablica message_ids z parami number + message_id.
Base URL
https://api.sendly.linkPola request
tostring[] (9–11 cyfr, 1–100)wymaganeTablica numerów odbiorców – każdy numeryczny łańcuch 9–11 znaków, od 1 do 100 elementów, numery unikalne.
bodystringwymaganeTreść wiadomości, min. 1 znak.
fromstring (9–11 cyfr)Opcjonalne. Numer wirtualnego numeru komórkowego w SENDLY (numeryczny łańcuch 9–11 znaków).
curl -X POST https://api.sendly.link/api/sms-multi \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"to": ["48732129001", "48732129002"],
"body": "Test SENDLY"
}'Odpowiedź (200)
{
"message_ids": [
{ "number": "48732129001", "message_id": "a906cff7719bd889" }
]
}Kody błędów
403422429Webhooki
Sendly nie wysyła statusów ani przychodzących SMS-ów samoczynnie. W panelu (Bramka SMS → Ustawienia usługi) włączasz dostarczenia i wpisujesz publiczny URL. Oba kroki są wymagane. Potem wysyłamy POST application/json – do 36 prób dostarczenia, bez śledzenia przekierowań i bez własnej autoryzacji, z aktualnego IP api.sendly.link. Odpowiedź 200 OK kończy ponawianie; 404 lub 418 także je przerywa.
Dostarczenia
W panelu klienta, sekcja Bramka SMS → Ustawienia usługi, aktywuj opcję dostarczenia (raporty statusu wysyłki).
Adres URL
W tym samym miejscu wpisz publicznie dostępny endpoint, który przyjmuje żądania POST.
Bez obu kroków – aktywacji dostarczeń i wpisania adresu – webhook nie zadziała. Nie przyjdzie ani DLR, ani SMS przychodzący.
Ponawianie webhooka – do 36 prób
Powiadomienia MESSAGE i NOTIFICATION są ponawiane do odpowiedzi 200 OK lub wyczerpania limitu. Kody 404 (Not Found) i 418 (I’m A Teapot) kończą ponawianie. API nie śledzi przekierowań ani nie autoryzuje się do webhooka.
| Zakres | Interwał |
|---|---|
| 1–10 powiadomienie | Co 1 minutę |
| 11–20 powiadomienie | Co 3 minuty |
| 21–30 powiadomienie | Co 10 minut |
| 31–35 powiadomienie | Co 1 godzinę |
| 36 powiadomienie | 12 godzin po ostatnim powiadomieniu |
type: MESSAGEWiadomość przychodząca – pola: from (numer lub nadpis), to, body.type: NOTIFICATIONPotwierdzenie statusu wysłanego SMS-a – pola: message_id oraz status: DELIVERED (dostarczono) lub ERROR (błąd).{
"type": "NOTIFICATION",
"message_id": "a906cff7719bd889",
"status": "DELIVERED"
}Checklista: SMS API + webhook
- Konto założone i zalogowane na app.sendly.link
- W panelu: Bramka SMS → Ustawienia usługi → SMS API – aktywowane
- Wygenerowany Bearer Token w nagłówku Authorization
- Wywołania na https://api.sendly.link/api/sms (albo /api/sms-multi)
- W panelu: opcja dostarczenia – aktywowana
- W panelu: wpisany publiczny URL webhooka, przyjmujący POST application/json
- Endpoint obsługuje NOTIFICATION (status wysyłki) i MESSAGE (SMS przychodzący)
Jak sprawdzić, czy SMS został dostarczony
Przy wysyłce API zwraca message_id – zapisz go u siebie. Po zmianie statusu Sendly wysyła na webhook NOTIFICATION z tym samym message_id i statusem DELIVERED albo ERROR. Po tym parujesz powiadomienie z konkretną wiadomością. Da się tak śledzić każdą wysłaną wiadomość.
3CX SMS API
Alternatywny tryb wysyłki i odbioru SMS zgodny z aktualną specyfikacją centrali 3CX Phone System. Aby go włączyć, w panelu klienta zaznacz obie opcje: SMS API oraz 3CX SMS API. Aktywacji może dokonać także biuro obsługi klienta.
Wychodzące
W sekcji SMS w 3CX podaj token wygenerowany w panelu klienta oraz adres URL: https://api.sendly.link/api/tcx
Przychodzące
W panelu klienta podaj webhook dostępny w centrali 3CX (przy aktywacji przez biuro obsługi klienta podajesz webhook, a w odpowiedzi otrzymujesz token).
Zacznij wysyłać SMS-y dzisiaj.
100 wiadomości gratis. Bez karty kredytowej. Bez abonamentu. Aktywacja w 30 sekund.