Specyfikacja v1.0

Dokumentacja SMS API

ACTIO SMS API przesyła komunikaty przez HTTP. Dostępne są dwa wzajemnie wykluczające się tryby: SMS API (REST) oraz 3CX SMS API. Token wygenerujesz w panelu klienta lub przez biuro obsługi.

1. SMS API (REST)

Domyślny tryb działania, przeznaczony dla aplikacji obsługujących REST API. Token wygenerujesz i pobierzesz w panelu klienta (alternatywnie u biura obsługi klienta).

1.1 Wysyłka wiadomości

POST https://msg-api.actio.pl/api/sms

Typ zawartości: application/json · Autoryzacja: Bearer token

Pola ciała żądania

PoleTypOpis
fromłańcuch numeryczny, 9–11 znakówNumer wirtualnego numeru komórkowego w ACTIO
tołańcuch numeryczny, 9–11 znakówDocelowy numer komórkowy
bodyłańcuch, min. 1 znakTreść wiadomości

Przykładowe żądanie

curl -X POST https://msg-api.actio.pl/api/sms \
  -H "Authorization: Bearer TWOJ_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "from": "48732129000",
    "to": "48732129001",
    "body": "Test ACTIO"
  }'

Odpowiedź 200

Wiadomość przyjęta do wysyłki. Ciało zawiera message_id (16 znaków hex).

{"message_id":"a906cff7719bd889"}

Błędy

KodZnaczenie
403Problem z autoryzacją
422Problem z walidacją danych

Ciało błędu może zawierać pola errors.token, errors.from, errors.to, errors.body (tablice komunikatów).

{"errors":{"token":["Invalid token"]}}

Wiadomości wychodzące są kodowane w UCS-2 i dzielone co 60 znaków. Opcjonalnie można włączyć kodowanie GSM-7 (pojedyncza wiadomość do 160 znaków) – w panelu klienta lub przez dyspozycję do biura obsługi.

1.2 Wysyłka na wiele numerów

Wysyłka tej samej wiadomości na wiele numerów. Aktywacja funkcji dla tokena wyłącznie przez biuro obsługi klienta.

POST https://msg-api.actio.pl/api/sms-multi

Pola ciała żądania

PoleTypOpis
fromłańcuch numeryczny, 9–11 znakówNumer wirtualnego numeru komórkowego w ACTIO
totablica łańcuchów (9–11 znaków), 1–100 elementówDocelowe numery komórkowe (unikalne)
bodyłańcuch, min. 1 znakTreść wiadomości

Przykładowe żądanie

curl -X POST https://msg-api.actio.pl/api/sms-multi \
  -H "Authorization: Bearer TWOJ_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "from": "48732129000",
    "to": ["48732129001", "48732129002"],
    "body": "Test ACTIO"
  }'

Walidacja numerów działa na zasadzie „wszystko albo nic" – każdy numer musi być poprawnym polskim numerem komórkowym i być unikalny, w przeciwnym razie całe żądanie jest odrzucane.

Odpowiedź 200

Pole message_ids – tablica obiektów z polami number i message_id.

{"message_ids":[{"number":"48732129001","message_id":"a906cff7719bd889"}]}

1.3 Odbiór wiadomości (webhook)

Wiadomości przychodzące są wysyłane na webhook podany w panelu klienta (lub w dyspozycji do BOK). Podejmowana jest jedna próba dostarczenia; API nie śledzi przekierowań i nie autoryzuje się do webhooka. Żądanie pochodzi z aktualnego adresu IP domeny msg-api.actio.pl.

Metoda: POST · Typ zawartości: application/json

PoleTypOpis
typełańcuchDla wiadomości przychodzącej: MESSAGE
fromłańcuchPrezentacja numeru źródłowego (lub nadpis nazwy)
tołańcuch numerycznyDocelowy numer telefonu
bodyłańcuchTreść wiadomości
{"type":"MESSAGE","from":"48732129000","to":"48732129001","body":"Test sms"}

1.4 Potwierdzenie dostarczenia (webhook)

Aby otrzymywać powiadomienia o dostarczeniu, włącz tę opcję w panelu klienta lub przez dyspozycję do BOK. Powiadomienia trafiają na webhook (jedna próba dostarczenia).

PoleTypOpis
typełańcuchDla statusu: NOTIFICATION
message_idłańcuchIdentyfikator wiadomości zwrócony po przyjęciu do wysyłki
statusłańcuchDELIVERED – dostarczono, ERROR – błąd
{"type":"NOTIFICATION","message_id":"a906cff7719bd889","status":"DELIVERED"}

2. 3CX SMS API

Obsługuje wysyłkę i odbiór wiadomości zgodnie z aktualną specyfikacją centrali 3CX Phone System. Aby aktywować, w panelu klienta zaznacz obie opcje: SMS API oraz 3CX SMS API.

Połączenia wychodzące

W sekcji SMS w 3CX podaj token (z panelu klienta) oraz adres URL:

https://msg-api.actio.pl/api/tcx

Wiadomości przychodzące

W panelu klienta podaj webhook dostępny w centrali 3CX. Aktywacji może dokonać też biuro obsługi klienta – wówczas po podaniu webhooka w odpowiedzi przesłany zostanie token.

Zaczynasz integrację SMS API?

Wygeneruj token w panelu klienta albo napisz do nas – pomożemy uruchomić wysyłkę i webhooki.