Manual programisty: send_sms_api.php

Dokumentacja endpointu do dodawania wiadomości SMS do kolejki wysyłkowej (tabela outbox).

POST application/json Auth: api_key w body JSON

1. Endpoint

Adreshttps://api.softspm.pl/send_sms_api.php
Metoda HTTPPOST
Content-Typeapplication/json
KodowanieUTF-8

2. Autoryzacja

Klucz API należy wysłać w polu api_key w treści JSON.

Uwaga: klucz musi znajdować się na liście API_KEYS['send_sms_api.php'] po stronie serwera.

{
  "api_key": "TWÓJ_KLUCZ_API",
    "to": "+48XXXYYYZZZ",
  "message": "Treść SMS",
  "creator": "CRM"
}

3. Parametry wejściowe

ParametrTypWymaganyOpis
api_keystringtakKlucz API.
tostringtakNumer odbiorcy. Dozwolone znaki: cyfry, +, spacje, myślniki, nawiasy. Max 30 znaków.
messagestringtakTreść SMS. Max 1530 znaków.
creatorstringnieŹródło wiadomości. Domyślnie API. Max 50 znaków.

4. Przykład request (cURL)

curl -X POST "https://api.softspm.pl/send_sms_api.php" \
  -H "Content-Type: application/json" \
  -d '{
    "api_key":"TWÓJ_KLUCZ_API",
        "to":"+48XXXYYYZZZ",
    "message":"Przypomnienie o wydarzeniu jutro o 10:00",
    "creator":"HydroNexis"
  }'

5. Przykład request (JavaScript / fetch)

const response = await fetch("https://api.softspm.pl/send_sms_api.php", {
  method: "POST",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify({
    api_key: "TWÓJ_KLUCZ_API",
        to: "+48XXXYYYZZZ",
    message: "Test API SMS",
    creator: "Panel"
  })
});

const data = await response.json();
console.log(response.status, data);

6. Odpowiedzi API

6.1 Sukces (HTTP 200)

{
  "status": "success",
  "message": "SMS dodany do kolejki."
}

6.2 Błędy

HTTPKomunikatZnaczenie
400Brak danych JSON w żądaniu.Puste body.
400Niepoprawny JSON.Niepoprawna składnia JSON.
400Brakuje pola 'to' lub 'message'.Brak wymaganych pól.
400Pole to ma nieprawidłowy format.Nieprawidłowy numer telefonu.
400Wiadomość jest zbyt długa.Przekroczono limit długości message.
400Pole creator jest zbyt długie.Przekroczono limit długości creator.
401Nieautoryzowany dostęp.Błędny lub pusty klucz API.
405Dozwolona jest tylko metoda POST.Użyto innej metody HTTP.
500Błąd połączenia z bazą danych.Problem z połączeniem do DB.
500Nie udało się dodać SMS-a.Błąd przygotowania/wykonania zapytania SQL.

7. Dobre praktyki po stronie klienta

8. Checklista testów integracyjnych