REST API · Dla deweloperów

Bramka SMS
przez REST API
w minutę

Jeden endpoint POST, klucz API z panelu, pełna dokumentacja. Integracja z PHP, Python, Node.js lub dowolnym językiem w kilka linii kodu.

HTTPS / TLS JSON Request/Response Webhooki Rate limiting
PHP
cURL
Python
Node.js
// Wyślij SMS — PHP
$ch = curl_init('https://integracjasms.pl/api/send');
curl_setopt_array($ch, [
  CURLOPT_POST => true,
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_HTTPHEADER => [
    'Content-Type: application/json',
    'X-API-Key: YOUR_API_KEY',
  ],
  CURLOPT_POSTFIELDS => json_encode([
    'phone' => '+48600123456',
    'message' => 'Twoje zamówienie gotowe!',
  ]),
]);
$res = json_decode(curl_exec($ch));
// $res->data->message_id = 4821
# Wyślij SMS — cURL
curl -X POST https://integracjasms.pl/api/send \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_API_KEY" \
  -d '{
    "phone": "+48600123456",
    "message": "Twoje zamówienie gotowe!"
  }'

# Odpowiedź:
{"success":true,"data":{"message_id":4821,
"status":"pending","current_balance":499}}
# Wyślij SMS — Python
import requests

response = requests.post(
  "https://integracjasms.pl/api/send",
  headers={
    "X-API-Key": "YOUR_API_KEY"
  },
  json={
    "phone": "+48600123456",
    "message": "Twoje zamówienie gotowe!"
  }
)
# response.json()["data"]["message_id"]
// Wyślij SMS — Node.js / fetch
const res = await fetch(
  'https://integracjasms.pl/api/send', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'X-API-Key': 'YOUR_API_KEY'
  },
  body: JSON.stringify({
    phone: '+48600123456',
    message: 'Twoje zamówienie gotowe!'
  })
});
const data = await res.json();
Dokumentacja

Dostępne endpointy

Wszystkie endpointy wymagają nagłówka X-API-Key. Odpowiedź zawsze w JSON.

POST
/api/send
Wyślij SMS
Wyślij pojedynczy SMS. Parametry: phone, message, priority (1-9), scheduled_at (ISO8601).
GET
/api/status?id={id}
Status wiadomości
Sprawdź aktualny status wysłanej wiadomości po jej ID.
GET
/api/balance
Saldo konta
Zwraca aktualne saldo SMS na koncie przypisanym do klucza API.
Możliwości

Wszystko czego potrzebujesz

Klucze API z uprawnieniami

Generuj wiele kluczy API z różnymi limitami dziennymi i miesięcznymi. Unieważnij w każdej chwili.

Webhooki

Otrzymuj powiadomienie HTTP POST gdy SMS zmieni status na sent lub failed.

Zaplanowana wysyłka

Podaj scheduled_at w formacie ISO8601 — SMS zostanie wysłany dokładnie o wybranej godzinie.

Priorytet wysyłki

Parametr priority (1–9) steruje kolejnością wysyłki w workerze. 1 = najwyższy.

Rate limiting

60 requestów/min per klucz. Nagłówki X-RateLimit-Remaining i Retry-After w odpowiedzi.

Logi requestów

Każde wywołanie API zapisane z timestampem, IP i statusem. Dostępne w panelu.

FAQ

Pytania o SMS API

Wymagany format międzynarodowy: +48XXXXXXXXX. API automatycznie odrzuca nieprawidłowe numery z kodem 400.
Tak — przez wielokrotne wywołania /api/send lub przez panel wysyłki masowej z CSV. Brak limitu dziennego po stronie API (poza saldem).
Po zmianie statusu SMS system wysyła POST na Twój URL z JSON-em zawierającym message_id, status, phone i saldo. Podpisany HMAC-SHA256.
Tak. Przy każdym wywołaniu /api/send saldo jest odliczane natychmiast. Przy nieudanej wysyłce (po wyczerpaniu retry) saldo wraca automatycznie.
HTTP 402 z error: "Brak SMS na koncie. Doładuj saldo." SMS nie trafia do kolejki.
Aktualnie dostarczamy przykłady w PHP, Python, Node.js i cURL. Oficjalne SDK w przygotowaniu.

Zacznij integrację w 5 minut

Utwórz konto, wygeneruj klucz API i wyślij pierwszego SMS-a przez API.