Dokumentacja
SMS API — dokumentacja
Kompletny przewodnik po REST API SMSIK. Uwierzytelnianie, endpointy, przykłady kodu w 6 językach, obsługa błędów.
Base URL
https://api.smsik.pl/v1
Wszystkie endpointy wymagają HTTPS. HTTP jest odrzucane.
Uwierzytelnianie
Każde żądanie musi zawierać klucz API w nagłówku X-API-Key:
X-API-Key: TWOJ_KLUCZ_API
Klucz wygenerujesz w panelu SMSIK: Ustawienia → SMS API → Nowy klucz. Możesz utworzyć wiele kluczy z osobnymi limitami.
Endpointy
/v1/sms/send
Wysyła lub planuje SMS-a.
| Pole | Typ | Opis |
|---|---|---|
| to | string | Numer odbiorcy w formacie E.164 (np. +48512017029). Wymagane. |
| message | string | Treść wiadomości (1–480 znaków). Wymagane. |
| sender | string | Nazwa nadawcy (opcjonalna). Maks. 11 znaków. |
| scheduled_at | string | ISO 8601 — planowany czas wysyłki (opcjonalne). |
| expires_at | string | ISO 8601 — data wygaśnięcia SMS-a (opcjonalne). |
| idempotency_key | string | Klucz idempotencji (opcjonalny, max 64 znaki). |
curl -X POST https://api.smsik.pl/v1/sms/send \
-H "X-API-Key: TWOJ_KLUCZ_API" \
-H "Content-Type: application/json" \
-d '{
"to": "+48512017029",
"message": "Testowa wiadomosc",
"sender": "TWOJAFIRMA"
}'
{
"status": "queued",
"id": 81231,
"to": "+48512017029",
"parts": 1,
"price_grosze": 1,
"scheduled_at": null
}
/v1/sms/status
Zwraca statusy wysłanych SMS-ów. Parametry query: updated_since, limit.
curl -H "X-API-Key: TWOJ_KLUCZ_API" \
"https://api.smsik.pl/v1/sms/status?updated_since=2026-10-05T00:00:00Z&limit=100"
Kody błędów
| HTTP | Opis | Co zrobić |
|---|---|---|
| 200 | Sukces | SMS zakolejkowany. |
| 400 | Bad Request | Błąd walidacji — sprawdź treść detail. |
| 401 | Unauthorized | Nieprawidłowy lub brak klucza API. |
| 403 | Forbidden | Konto nieaktywne lub zablokowane. |
| 429 | Rate Limit | Przekroczono limit. Zwolnij tempo wysyłki. |
| 500 | Server Error | Błąd serwera — spróbuj za chwilę. Skontaktuj się z nami, jeśli się powtarza. |
Idempotencja (bezpieczne retry)
Jeśli nie jesteś pewien, czy żądanie dotarło do serwera (np. timeout), wyślij je ponownie
z tym samym idempotency_key. SMSIK nie utworzy duplikatu —
zwróci istniejącego SMS-a.
curl -X POST https://api.smsik.pl/v1/sms/send \
-H "X-API-Key: TWOJ_KLUCZ_API" \
-H "Content-Type: application/json" \
-d '{
"to": "+48512017029",
"message": "Testowa wiadomosc",
"idempotency_key": "order-12345-confirmation"
}'