NAV Navbar
shell php

Wstęp

Po prawej stronie ekranu na ciemnym tle zobaczysz przykłady wywołań API. 
			

Platforma SMSPLANET umożliwia masową wysyłkę SMS-ów oraz MMS-ów marketingowych. Umożliwiamy integrację naszej platformy z dowolnym systemem komputerowym za pomocą opisanego w niniejszej dokumentacji API.

Wersja API

2.0.3

Kodowanie

Kodowanie znaków używane podczas komunikacji z API: UTF-8

Rozpoczęcie współpracy

Aby zacząć korzystać z platformy należy założyć konto w serwisie SMSPLANET pod adresem https://panel.smsplanet.pl/register. Następnie należy uzupełnić dane firmy w zakładce 'Mój Profil' oraz doładować konto punktami (PrePaid) lub podpisać umowę abonamentową (PostPaid) co umożliwi wysyłkę wiadomości.

Filtracja adresów IP

Aby dodatkowo zabezpieczyć komunikację z naszym SMS API, można ustalić listę zaufanych adresów IP. Tylko połączenia z tej listy będą akceptowane. Filtracja adresów IP dotyczy tylko wysyłek realizowanych poprzez API. Filtracja nie dotyczy wysyłek realizowanych z poziomu panelu WWW.

Filtr można zdefiniować w panelu klienta po zalogowaniu pod adresem https://panel.smsplanet.pl/s/api

Dostępne metody

Wysłanie SMS metodą GET

curl -X GET -G \
'https://api2.smsplanet.pl/sms' \
-d key=klucz \
-d password=haslo \
-d from=TEST \
-d to=600111222 \
-d msg=Wiadomosc
			
				
				
<?php
$url = "https://api2.smsplanet.pl/sms";
$params = [
	'key' => 'klucz_api',
	'password' => 'haslo',
	'from' => 'TEST',
	'to' => '600111222',
	'msg' => 'Wiadomosc testowa'
];

$response=send_get($url, $params);
var_dump($response);

function send_get($url,$params) {
	$params_string = http_build_query($params);
	$ch = curl_init();
	curl_setopt($ch,CURLOPT_URL, $url . '?'.$params_string);
	curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
	$response = curl_exec($ch);
	curl_close ($ch); 
	return $response;
}
?>				
				


			

Przykładowa odpowiedź:

{"messageId":191919}

lub

{"errorMsg":"Niepoprawny klucz - sprawdź swój klucz API.","errorCode":101}

Adres URL

GET https://api2.smsplanet.pl/sms

Lista parametrów

Parametr Wymagany Typ Opis
key true string Klucz API identyfikujący użytkownika
password true string Hasło do API, które domyślnie jest takie samo jak hasło do panelu klienta
from true string Widoczna przez odbiorców nazwa nadawcy SMS. Można korzystać z testowej nazwy 'TEST' lub z nazw zgłoszonych poprzez panel klienta (zakładka 'Pole nadawcy') i zaakceptowanych przez administrację serwisu. W przypadku komunikacji dwukierunkowej (2WAY), należy podać specjalny numer telefonu dedykowany do komunikacji dwustronnej
msg true string Treść wiadomości. Pojedynczy SMS może mieć długość 160 znaków lub 70 znaków jeśli w wiadomości występuje przynajmniej jeden znak specjalny (w tym polskie znaki). Jeśli treść wiadomości jest dłuższa zostanie podzielona na kilka SMS (max. 6)
to true multi string array Numer odbiorcy wiadomości. Dozwolone formaty [600111222, 48600111222, +48600111222]. Element ten może występować wielokrotnie, co spowoduje wysłanie danej wiadomości do wielu odbiorców na raz. Ze względu na ograniczenia metody GET (max. ok. 2000 znaków), korzystanie z tej metody nie jest zalecane dla wysyłek powyżej 200 numerów. Nieprawidłowe numery zostaną pominięte. Jeśli numer występuje 2 lub więcej razy duplikaty zostaną pominięte
date false string Data określająca kiedy wiadomość ma być wysłana. Brak daty lub data przeszła spowodują natychmiastowe wysłanie wiadomości. Dozwolone formaty [Unixtime (np. 1276623871), dd-MM-yyyy HH:mm:ss (np. 21-05-2017 10:05:00)] Wysyłki są planowane wg polskiej strefy czasowej
name false string Nazwa wysyłki. Nadanie nazwy wysyłce, może ułatwić jej późniejsze odnalezienie w historii.
clear_polish false enum (0, 1) Jeśli wartość tego parametru wynosi 1 to wszystkie polskie znaki w treści wiadomości zostaną zastąpione na swoje odpowiedniki, np. ą=a, ć=c, ł=l, itd. Wartość domyślna: 0.
test false enum (0, 1) Jeśli wartość tego parametru wynosi 1, wiadomość nie zostanie wysłana. Zwrócona zostanie jednak standardowa odpowiedź API. Służy celom testowym. Wartość domyślna: 0.

Odpowiedź w przypadku powodzenia:

ParametrOpis
messageIdUnikalny identyfikator wysyłki nadany przez smsplanet. Może zostać wykorzystany np. do anulowania zaplanowanej wysyłki lub pobrania jej statusu.

Odpowiedź w przypadku niepowodzenia:

ParametrOpis
errorMsgTreść informująca o przyczynie błędu
errorCodeUnikalny kod błędu

Wysłanie SMS metodą POST (zalecane)

curl -X POST -G \
'https://api2.smsplanet.pl/sms' \
-d key=klucz \
-d password=haslo \
-d from=TEST \
-d to=600111222 \
-d msg=Wiadomosc
			
				
<?php
$url = "https://api2.smsplanet.pl/sms";
$params = [
	'key' => 'klucz_api',
	'password' => 'haslo',
	'from' => 'TEST',
	'to' => '600111222',
	'msg' => 'Wiadomosc testowa'
];

$response=send_post($url, $params);
var_dump($response);

function send_post($url,$params) {
	$params_string = http_build_query($params);
	$ch = curl_init();
	curl_setopt($ch,CURLOPT_URL, $url);
	curl_setopt($ch,CURLOPT_POST, true);
	curl_setopt($ch,CURLOPT_POSTFIELDS, $params_string);
	curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
	$response = curl_exec($ch);
	curl_close ($ch); 
	return $response;
}
?>

Przykład dla wielu numerów:


<?php
$url = "https://api2.smsplanet.pl/sms";

$params = array(
	'key' => 'KLUCZ_API',
	'password' => 'HASLO_API',
	'from' => 'TEST',
	'msg' => 'Wiadomość testowa'
);
$to = array('600111222', '700333444');

$params_string = http_build_query($params);
foreach ($to as $msisdn) {
	$params_string = $params_string . '&to=' . $msisdn;
}
$response=send_post($url, $params_string);
var_dump($response);
function send_post($url,$params_string) {
	$ch = curl_init();
	curl_setopt($ch,CURLOPT_URL, $url);
	curl_setopt($ch,CURLOPT_POST, true);
	curl_setopt($ch,CURLOPT_POSTFIELDS, $params_string);
	curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
	$response = curl_exec($ch);
	curl_close ($ch); 
	return $response;
}
?>

			

Przykładowa odpowiedź:

{"messageId":191919}

lub

{"errorMsg":"Niepoprawny klucz - sprawdź swój klucz API.","errorCode":101}

Adres URL

POST https://api2.smsplanet.pl/sms

Lista parametrów

Parametr Wymagany Typ Opis
key true string Klucz API identyfikujący użytkownika
password true string Hasło do API, które domyślnie jest takie samo jak hasło do panelu klienta
from true string Widoczna przez odbiorców nazwa nadawcy SMS. Można korzystać z testowej nazwy 'TEST' lub z nazw zgłoszonych poprzez panel klienta (zakładka 'Pole nadawcy') i zaakceptowanych przez administrację serwisu. W przypadku komunikacji dwukierunkowej (2WAY), należy podać specjalny numer telefonu dedykowany do komunikacji dwustronnej
msg true string Treść wiadomości. Pojedynczy SMS może mieć długość 160 znaków lub 70 znaków jeśli w wiadomości występuje przynajmniej jeden znak specjalny (w tym polskie znaki). Jeśli treść wiadomości jest dłuższa zostanie podzielona na kilka SMS (max. 6)
to true multi string array Numer odbiorcy wiadomości. Dozwolone formaty [600111222, 48600111222, +48600111222]. Element ten może występować wielokrotnie co spowoduje wysłanie danej wiadomości do wielu odbiorców na raz. Maksymalna ilość odbiorców w jednym żądaniu wynosi 10000. Nieprawidłowe numery zostaną pominięte. Jeśli numer występuje 2 lub więcej razy duplikaty zostaną pominięte
date false string Data określająca kiedy wiadomość ma być wysłana. Brak daty lub data przeszła spowodują natychmiastowe wysłanie wiadomości. Dozwolone formaty [Unixtime (np. 1276623871), dd-MM-yyyy HH:mm:ss (np. 21-05-2017 10:05:00)] Wysyłki są planowane wg polskiej strefy czasowej
name false string Nazwa wysyłki. Nadanie nazwy wysyłce, może ułatwić jej późniejsze odnalezienie w historii.
clear_polish false enum (0, 1) Jeśli wartość tego parametru wynosi 1 to wszystkie polskie znaki w treści wiadomości zostaną zastąpione na swoje odpowiedniki, np. ą=a, ć=c, ł=l, itd. Wartość domyślna: 0.
test false enum (0, 1) Jeśli wartość tego parametru wynosi 1, wiadomość nie zostanie wysłana. Zwrócona zostanie jednak standardowa odpowiedź API. Służy celom testowym. Wartość domyślna: 0.

Odpowiedź w przypadku powodzenia:

ParametrOpis
messageIdUnikalny identyfikator wysyłki nadany przez smsplanet. Może zostać wykorzystany np. do anulowania zaplanowanej wysyłki lub pobrania jej statusu.

Odpowiedź w przypadku niepowodzenia:

ParametrOpis
errorMsgTreść informująca o przyczynie błędu
errorCodeUnikalny kod błędu

Wysłanie MMS

curl -X POST -G \
'https://api2.smsplanet.pl/mms' \
-d key=klucz \
-d password=haslo \
-d from=48664079876 \
-d to=600111222 \
-d subject=Temat \
-d attachment=https://link.do/zdjecia/kotka.jpg \
-d msg=Treść
			
				
<?php
$url = "https://api2.smsplanet.pl/mms";
$params = [
	'key' => 'klucz_api',
	'password' => 'haslo',
	'from' => 'TEST',
	'to' => '600111222',
	'subject' => 'temat',
	'attachment' => 'https://link.do/zdjecia/kotka.jpg',
	'msg' => 'Wiadomość testowa'
];

$response=send_post($url, $params);
var_dump($response);

function send_post($url,$params) {
	$params_string = http_build_query($params);
	$ch = curl_init();
	curl_setopt($ch,CURLOPT_URL, $url);
	curl_setopt($ch,CURLOPT_POST, true);
	curl_setopt($ch,CURLOPT_POSTFIELDS, $params_string);
	curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
	$response = curl_exec($ch);
	curl_close ($ch); 
	return $response;
}
?>
				
			

Przykładowa odpowiedź:

{"messageId":191919}

lub

{"errorMsg":"Niepoprawny klucz - sprawdź swój klucz API.","errorCode":101}

Adres URL

POST https://api2.smsplanet.pl/mms

Lista parametrów

Parametr Wymagany Typ Opis
key true string Klucz API identyfikujący użytkownika
password true string Hasło do API, które domyślnie jest takie samo jak hasło do panelu klienta
from true string Numer telefonu nadawcy MMS. Nasz aktualny numer do obsługi MMS jest dostępny w panelu klienta po zalogowaniu.
subject true string Temat wiadomości. Zalecamy jego podanie ponieważ, niektóre modele telefonów mogą nie przyjmować MMS bez podanego tematu.
msg true string Treść wiadomości. Całkowity rozmiar MMS (wiadomość + załącznik + temat) nie może przekroczyć 100kB.
attachment false string Adres url załącznika MMS. Należy podać pełny adres url. Całkowity rozmiar MMS (wiadomość + załącznik + temat) nie może przekroczyć 100kB.
to true multi string array Numer odbiorcy wiadomości. Dozwolone formaty [600111222, 48600111222, +48600111222] Element ten może występować wielokrotnie co spowoduje wysłanie danej wiadomości do wielu odbiorców na raz Maksymalna ilość odbiorców w jednym żądaniu wynosi 10000. Nieprawidłowe numery zostaną pominięte. Jeśli numer występuje 2 lub więcej razy duplikaty zostaną pominięte
date false string Data określająca kiedy wiadomość ma być wysłana. Brak daty lub data przeszła spowodują natychmiastowe wysłanie wiadomości. Dozwolone formaty [Unixtime (np. 1276623871), dd-MM-yyyy HH:mm:ss (np. 21-05-2017 10:05:00)] Wysyłki są planowane wg polskiej strefy czasowej
clear_polish false enum (0, 1) Jeśli wartość tego parametru wynosi 1 to wszystkie polskie znaki w treści wiadomości zostaną zastąpione na swoje odpowiedniki, np. ą=a, ć=c, ł=l, itd.
test false enum (0, 1) Jeśli wartość tego parametru wynosi 1, wiadomość nie zostanie wysłana. Zwrócona zostanie jednak standardowa odpowiedź API. Służy celom testowym.

Odpowiedź w przypadku powodzenia:

ParametrOpis
messageIdUnikalny identyfikator wysyłki nadany przez smsplanet. Może zostać wykorzystany np. do anulowania zaplanowanej wysyłki lub pobrania jej statusu.

Odpowiedź w przypadku niepowodzenia:

ParametrOpis
errorMsgTreść informująca o przyczynie błędu
errorCodeUnikalny kod błędu

Anulowanie zaplanowanej wysyłki

curl -X POST -G \
'https://api2.smsplanet.pl/cancelMessage' \
-d key=klucz \
-d password=haslo \
-d messageId=123456 \

			
				
<?php
$url = "https://api2.smsplanet.pl/cancelMessage";
$params = [
	'key' => 'klucz_api',
	'password' => 'haslo',
	'messageId' => '123456'
];

$response=send_post($url, $params);
var_dump($response);

function send_post($url,$params) {
	$params_string = http_build_query($params);
	$ch = curl_init();
	curl_setopt($ch,CURLOPT_URL, $url);
	curl_setopt($ch,CURLOPT_POST, true);
	curl_setopt($ch,CURLOPT_POSTFIELDS, $params_string);
	curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
	$response = curl_exec($ch);
	curl_close ($ch); 
	return $response;
}
?>

			

Przykładowa odpowiedź:

{"result":"OK"}

lub

{"errorMsg":"Niepoprawny klucz - sprawdź swój klucz API.","errorCode":101}

Adres URL

POST https://api2.smsplanet.pl/cancelMessage

Lista parametrów

Parametr Wymagany Typ Opis
key true string Klucz API identyfikujący użytkownika
password true string Hasło do API, które domyślnie jest takie samo jak hasło do panelu klienta
messageId true integer Unikalny identyfikator wysyłki

Odpowiedź w przypadku powodzenia:

ParametrOpis
resultPole może przyjąć tylko wartość "OK"

Odpowiedź w przypadku niepowodzenia:

ParametrOpis
errorMsgTreść informująca o przyczynie błędu
errorCodeUnikalny kod błędu

Sprawdzenie stanu konta (tylko PrePaid)

curl -X POST -G \
'https://api2.smsplanet.pl/getBalance' \
-d key=klucz \
-d password=haslo \
-d product=SMS \

			
				
<?php
$url = "https://api2.smsplanet.pl/getBalance";
$params = [
	'key' => 'klucz_api',
	'password' => 'haslo',
	'product' => 'SMS'
];

$response=send_post($url, $params);
var_dump($response);

function send_post($url,$params) {
	$params_string = http_build_query($params);
	$ch = curl_init();
	curl_setopt($ch,CURLOPT_URL, $url);
	curl_setopt($ch,CURLOPT_POST, true);
	curl_setopt($ch,CURLOPT_POSTFIELDS, $params_string);
	curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
	$response = curl_exec($ch);
	curl_close ($ch); 
	return $response;
}
?>

			

Przykładowa odpowiedź:

{"balance":251}

lub

{"errorMsg":"Niepoprawny klucz - sprawdź swój klucz API.","errorCode":101}

Adres URL

POST https://api2.smsplanet.pl/getBalance

Lista parametrów

Parametr Wymagany Typ Opis
key true string Klucz API identyfikujący użytkownika
password true string Hasło do API, które domyślnie jest takie samo jak hasło do panelu klienta
product false enum (SMS, 2WAY, MMS) Nazwa produktu dla którego sprawdzany jest stan konta. Wartość domyślna: SMS

Odpowiedź w przypadku powodzenia:

ParametrOpis
balanceIlość punktów na koncie PrePaid

Odpowiedź w przypadku niepowodzenia:

ParametrOpis
errorMsgTreść informująca o przyczynie błędu
errorCodeUnikalny kod błędu

Zgłoszenie pola nadawcy

curl -X POST -G \
'https://api2.smsplanet.pl/addSenderField' \
-d key=klucz \
-d password=haslo \
-d senderField=MOJA FIRMA \

			
				
<?php
$url = "https://api2.smsplanet.pl/addSenderField";
$params = [
	'key' => 'klucz_api',
	'password' => 'haslo',
	'senderField' => 'MOJA FIRMA'
];

$response=send_post($url, $params);
var_dump($response);

function send_post($url,$params) {
	$params_string = http_build_query($params);
	$ch = curl_init();
	curl_setopt($ch,CURLOPT_URL, $url);
	curl_setopt($ch,CURLOPT_POST, true);
	curl_setopt($ch,CURLOPT_POSTFIELDS, $params_string);
	curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
	$response = curl_exec($ch);
	curl_close ($ch); 
	return $response;
}
?>

			

Przykładowa odpowiedź:

{"result":"OK"}

lub

{"errorMsg":"Niepoprawny klucz - sprawdź swój klucz API.","errorCode":101}

Adres URL

POST https://api2.smsplanet.pl/addSenderField

Lista parametrów

Parametr Wymagany Typ Opis
key true string Klucz API identyfikujący użytkownika
password true string Hasło do API, które domyślnie jest takie samo jak hasło do panelu klienta
senderField true string Nazwa pola nadawcy - max. 11 znaków. Dopuszczalne znaki: a-z A-Z 0-9 . - + _ ! [spacja] (numer telefonu nie jest dozwolony)

Odpowiedź w przypadku powodzenia:

ParametrOpis
resultPole może przyjąć tylko wartość "OK"

Odpowiedź w przypadku niepowodzenia:

ParametrOpis
errorMsgTreść informująca o przyczynie błędu
errorCodeUnikalny kod błędu

Pobranie listy dostępnych pól nadawcy

curl -X POST -G \
'https://api2.smsplanet.pl/getSenderFields' \
-d key=klucz \
-d password=haslo \
-d product=SMS \

			
				
<?php
$url = "https://api2.smsplanet.pl/getSenderFields";
$params = [
	'key' => 'klucz_api',
	'password' => 'haslo',
	'product' => 'SMS'
];

$response=send_post($url, $params);
var_dump($response);

function send_post($url,$params) {
	$params_string = http_build_query($params);
	$ch = curl_init();
	curl_setopt($ch,CURLOPT_URL, $url);
	curl_setopt($ch,CURLOPT_POST, true);
	curl_setopt($ch,CURLOPT_POSTFIELDS, $params_string);
	curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
	$response = curl_exec($ch);
	curl_close ($ch); 
	return $response;
}
?>

			

Przykładowa odpowiedź:

{"senderFields":"TEST,Informacja,Sklep,MojaFirma"}

lub

{"errorMsg":"Niepoprawny klucz - sprawdź swój klucz API.","errorCode":101}

Adres URL

POST https://api2.smsplanet.pl/getSenderFields

Lista parametrów

Parametr Wymagany Typ Opis
key true string Klucz API identyfikujący użytkownika
password true string Hasło do API, które domyślnie jest takie samo jak hasło do panelu klienta
product false enum (SMS, 2WAY, MMS) Nazwa produktu dla którego sprawdzane są pola nadawcy. Wartość domyślna: SMS

Odpowiedź w przypadku powodzenia:

ParametrOpis
senderFieldsDostępne pola nadawcy oddzielone przecinkami

Odpowiedź w przypadku niepowodzenia:

ParametrOpis
errorMsgTreść informująca o przyczynie błędu
errorCodeUnikalny kod błędu

Generowanie raportu zbiorczego

curl -X POST -G \
'https://api2.smsplanet.pl/generateReport' \
-d key=klucz \
-d password=haslo \
-d from=01-05-2019 \
-d to=30-06-2019 

			
				
<?php
$url = "https://api2.smsplanet.pl/generateReport";
$params = [
	'key' => 'klucz_api',
	'password' => 'haslo',
	'from' => '01-05-2019',
	'to' => '30-06-2019'
];

$response=send_post($url, $params);
var_dump($response);

function send_post($url,$params) {
	$params_string = http_build_query($params);
	$ch = curl_init();
	curl_setopt($ch,CURLOPT_URL, $url);
	curl_setopt($ch,CURLOPT_POST, true);
	curl_setopt($ch,CURLOPT_POSTFIELDS, $params_string);
	curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
	$response = curl_exec($ch);
	curl_close ($ch); 
	return $response;
}
?>

			

Przykładowa odpowiedź:

{"result":"OK",
"message":
"ID;Identyfikator użytkownika;Data utworzenia;Data wysyłki;Nadawca;Treść;Wiadomości;Dostarczone;Koszt;Zwroty
1;788;21-05-2018 17:05:12;21-05-2018 17:15:00;TEST;Testowa wysyłka SMS;1;1;1;0
2;788;22-06-2018 18:06:13;22-06-2018 18:16:00;TEST;Kolejna wysyłka;1;1;1;0"

}

lub

{"errorMsg":"Niepoprawny klucz - sprawdź swój klucz API.","errorCode":101}

Adres URL

POST https://api2.smsplanet.pl/generateReport

Lista parametrów

Parametr Wymagany Typ Opis
key true string Klucz API identyfikujący użytkownika
password true string Hasło do API, które domyślnie jest takie samo jak hasło do panelu klienta
from true string Data od w formacie dd-mm-yyyy HH:MM:ss (np. 01-05-2017 00:00:00)
to true string Data do w formacie dd-mm-yyyy HH:MM:ss (np. 30-06-2017 23:59:59)
detailed false boolean true/false - definiuje czy raport ma zawierać szczegółowe informacje o każdej wysyłce (numery telefonów wraz ze statusami doręczeń). Wartość domyślna: false
responseType false string "json" lub "csv". Wartość domyślna: "json"

Odpowiedź w przypadku powodzenia:

ParametrOpis
resultPole może przyjąć tylko wartość "OK"
messageTreść raportu w formacie CSV (średnik jako separator)

Odpowiedź w przypadku niepowodzenia:

ParametrOpis
errorMsgTreść informująca o przyczynie błędu
errorCodeUnikalny kod błędu

Pobranie szczegółowych danych wysyłki

curl -X POST -G \
'https://api2.smsplanet.pl/getMessageInfo' \
-d key=klucz \
-d password=haslo \
-d messageId=123456 \

			
				
<?php
$url = "https://api2.smsplanet.pl/getMessageInfo";
$params = [
	'key' => 'klucz_api',
	'password' => 'haslo',
	'messageId' => '123456'
];

$response=send_post($url, $params);
var_dump($response);

function send_post($url,$params) {
	$params_string = http_build_query($params);
	$ch = curl_init();
	curl_setopt($ch,CURLOPT_URL, $url);
	curl_setopt($ch,CURLOPT_POST, true);
	curl_setopt($ch,CURLOPT_POSTFIELDS, $params_string);
	curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
	$response = curl_exec($ch);
	curl_close ($ch); 
	return $response;
}
?>

			

Przykładowa odpowiedź:

{"result":"OK",
"message":
Pole nadawcy: TEST Nazwa wysyłki: Treść wiadomości: wiadomość testowa Data wysyłki: 22-12-2019 17:46:34 Wysłane: 3 Dostarczone: 3 Zwroty: 0 "Numer telefonu";"Dostarczono";"Data dostarczenia";"Powód odrzucenia";"Pobrano opłatę" "000111222";"TAK";"22-12-2019 17:46:40";"";"TAK" "333444555";"TAK";"22-12-2019 17:46:40";"";"TAK" "666777888";"TAK";"22-12-2019 17:46:40";"";"TAK"
}

lub

{"errorMsg":"Niepoprawny klucz - sprawdź swój klucz API.","errorCode":101}

Adres URL

POST https://api2.smsplanet.pl/getMessageInfo

Lista parametrów

Parametr Wymagany Typ Opis
key true string Klucz API identyfikujący użytkownika
password true string Hasło do API, które domyślnie jest takie samo jak hasło do panelu klienta
messageId true multi integer array Unikalny identyfikator wysyłki - parametr ten może występować wiele razy, spowoduje to pobranie szczegółów wielu wysyłek na raz. Maksymalnie można podać do 1000 parametrów messageId w pojedynczym żądaniu.
responseType false string "json" lub "csv". Wartość domyślna: "json"

Odpowiedź w przypadku powodzenia:

ParametrOpis
resultPole może przyjąć tylko wartość "OK"
messageTreść raportu w formacie CSV (średnik jako separator). Pierwsze 7 linii zawiera informacje o wysyłce. W kolejnych liniach znajdują się szczegóły doręczeń na każdy z numerów.

Odpowiedź w przypadku niepowodzenia:

ParametrOpis
errorMsgTreść informująca o przyczynie błędu
errorCodeUnikalny kod błędu

Dodanie numeru do czarnej listy

curl -X POST -G \
'https://api2.smsplanet.pl/blacklist/add' \
-d key=klucz \
-d password=haslo \
-d msisdn=600111222 \

			
				
<?php
$url = "https://api2.smsplanet.pl/blacklist/add";
$params = [
	'key' => 'klucz_api',
	'password' => 'haslo',
	'msisdn' => '600111222'
];

$response=send_post($url, $params);
var_dump($response);

function send_post($url,$params) {
	$params_string = http_build_query($params);
	$ch = curl_init();
	curl_setopt($ch,CURLOPT_URL, $url);
	curl_setopt($ch,CURLOPT_POST, true);
	curl_setopt($ch,CURLOPT_POSTFIELDS, $params_string);
	curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
	$response = curl_exec($ch);
	curl_close ($ch); 
	return $response;
}
?>

			

Przykładowa odpowiedź:

{"result":"OK"}

lub

{"errorMsg":"Niepoprawny klucz - sprawdź swój klucz API.","errorCode":101}

Adres URL

POST https://api2.smsplanet.pl/blacklist/add

Lista parametrów

Parametr Wymagany Typ Opis
key true string Klucz API identyfikujący użytkownika
password true string Hasło do API, które domyślnie jest takie samo jak hasło do panelu klienta
msisdn true string Numer telefonu
validTo false string Data ważności w formacie dd-mm-yyyy (np. 15-09-2025)

Odpowiedź w przypadku powodzenia:

ParametrOpis
resultPole może przyjąć tylko wartość "OK"

Odpowiedź w przypadku niepowodzenia:

ParametrOpis
errorMsgTreść informująca o przyczynie błędu
errorCodeUnikalny kod błędu

Usunięcie numeru z czarnej listy

curl -X POST -G \
'https://api2.smsplanet.pl/blacklist/remove' \
-d key=klucz \
-d password=haslo \
-d msisdn=600111222 \

			
				
<?php
$url = "https://api2.smsplanet.pl/blacklist/remove";
$params = [
	'key' => 'klucz_api',
	'password' => 'haslo',
	'msisdn' => '600111222'
];

$response=send_post($url, $params);
var_dump($response);

function send_post($url,$params) {
	$params_string = http_build_query($params);
	$ch = curl_init();
	curl_setopt($ch,CURLOPT_URL, $url);
	curl_setopt($ch,CURLOPT_POST, true);
	curl_setopt($ch,CURLOPT_POSTFIELDS, $params_string);
	curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
	$response = curl_exec($ch);
	curl_close ($ch); 
	return $response;
}
?>

			

Przykładowa odpowiedź:

{"result":"OK"}

lub

{"errorMsg":"Niepoprawny klucz - sprawdź swój klucz API.","errorCode":101}

Adres URL

POST https://api2.smsplanet.pl/blacklist/remove

Lista parametrów

Parametr Wymagany Typ Opis
key true string Klucz API identyfikujący użytkownika
password true string Hasło do API, które domyślnie jest takie samo jak hasło do panelu klienta
msisdn true string Numer telefonu

Odpowiedź w przypadku powodzenia:

ParametrOpis
resultPole może przyjąć tylko wartość "OK"

Odpowiedź w przypadku niepowodzenia:

ParametrOpis
errorMsgTreść informująca o przyczynie błędu
errorCodeUnikalny kod błędu

Skracanie linków

curl -X POST -G \
'https://api2.smsplanet.pl/shortUrl' \
-d key=klucz \
-d password=haslo \
-d longUrl=https://google.com \

			
				
<?php
$url = "https://api2.smsplanet.pl/shortUrl";
$params = [
	'key' => 'klucz_api',
	'password' => 'haslo',
	'longUrl' => 'https://google.com'
];

$response=send_post($url, $params);
var_dump($response);

function send_post($url,$params) {
	$params_string = http_build_query($params);
	$ch = curl_init();
	curl_setopt($ch,CURLOPT_URL, $url);
	curl_setopt($ch,CURLOPT_POST, true);
	curl_setopt($ch,CURLOPT_POSTFIELDS, $params_string);
	curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
	$response = curl_exec($ch);
	curl_close ($ch); 
	return $response;
}
?>

			

Przykładowa odpowiedź:

{"shortUrl":"https://link.do/Qdwjg"}

lub

{"errorMsg":"Niepoprawny klucz - sprawdź swój klucz API.","errorCode":101}

Adres URL

POST https://api2.smsplanet.pl/shortUrl

Lista parametrów

Parametr Wymagany Typ Opis
key true string Klucz API identyfikujący użytkownika
password true string Hasło do API, które domyślnie jest takie samo jak hasło do panelu klienta
longUrl true string Pełny adres URL, który chcemy skrócić
customAlias false string Własny (proponowany) alias dla skróconego linku. Jeśli alias nie będzie zajęty, zostanie użyty w skróconym linku. Domyślnie alias to losowy ciąg znaków.

Odpowiedź w przypadku powodzenia:

ParametrOpis
shortUrlWygenerowany skrócony link

Odpowiedź w przypadku niepowodzenia:

ParametrOpis
errorMsgTreść informująca o przyczynie błędu
errorCodeUnikalny kod błędu

Liczenie długości SMS

Metoda pozwala na sprawdzenie, na jaką ilość SMSów zostanie podzielona nasza wiadomość. Maksymalna długość pojedynczej wiadomości wynosi 6 części (6 SMS).

curl -X GET -G \
'https://api2.smsplanet.pl/sms/parts-count' \
-d key=klucz \
-d password=haslo \
-d content=treść SMSa do sprawdzenia \

			
				
<?php
$url = "https://api2.smsplanet.pl/sms/parts-count";
$params = [
	'key' => 'klucz_api',
	'password' => 'haslo',
	'content' => 'treść SMSa do sprawdzenia'
];

$response=send_post($url, $params);
var_dump($response);

function send_post($url,$params) {
	$params_string = http_build_query($params);
	$ch = curl_init();
	curl_setopt($ch,CURLOPT_URL, $url);
	curl_setopt($ch,CURLOPT_POST, true);
	curl_setopt($ch,CURLOPT_POSTFIELDS, $params_string);
	curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
	$response = curl_exec($ch);
	curl_close ($ch); 
	return $response;
}
?>

			

Przykładowa odpowiedź:

3

Adres URL

GET https://api2.smsplanet.pl/sms/parts-count

Lista parametrów

Parametr Wymagany Typ Opis
key true string Klucz API identyfikujący użytkownika
password true string Hasło do API, które domyślnie jest takie samo jak hasło do panelu klienta
content true string Treść wiadomości, dla której chcemy sprawdzić na jaką ilość części zostanie podzielona

Odpowiedź:

Zawsze zwracana jest liczba (integer) podająca ilość części SMS

Odbieranie SMS

			
			

Platforma umożliwia skonfigurowanie przekierowania wiadomości SMS, które otrzymaliśmy z numeru dwukierunkowego (2WAY). Wszystkie odebrane wiadomości trafiają do panelu klienta, również po przekierowaniu. Przekierowanie może odbywać się na 3 sposoby:

Przekierowanie należy skonfigurować w panelu klienta:

https://panel.smsplanet.pl/s/receive/settings

Menu: "Odbieranie wiadomości" -> "Ustawienia"

Kody błędów API

Lista błędów zwracanych przez API wraz z kodami

Kod Opis
100 Błąd parsowania danych - sprawdź czy wysyłasz poprawne dane.
101 Niepoprawny klucz - sprawdź swój klucz API.
102 Niepoprawne hasło API. Domyślne hasło jest takie samo jak hasło do panelu.
103 Niepoprawne pole nadawcy
104 Wiadomość jest zbyt długa. Limit wynosi 6 sms na wiadomość.
105 Wykorzystano ustawiony limit na wysyłki.
106 Lista odbiorców jest pusta. Upewnij się, że wprowadzono przynajmniej jeden numer nie znajdujący się na czarnej liście.
108 Data [%s] jest niepoprawna. Dozwolony format daty opisany jest w specyfikacji.
109 Brak wystarczających środków na koncie.
110 Adres IP [%s] nie znajduje się na liście dozwolonych adresów.
111 Limit ilości odbiorców wynosi 10000
113 Niepoprawne pole nadawcy '%s' dla produktu innego niż MMS.
114 Wiadomość MMS może zawierać tylko jeden załącznik
115 Rozmiar wiadomości przekracza %s kB

Statusy doręczeń SMS

W przypadku braku poprawnego dostarczenia wiadomości, w raporcie wysyłki będzie można odznaleźć status błędu z tym związany.

Pełna lista błędnych statusów doręczeń SMS:

Numer Status
1 Wstępnie odrzucony
2 Nieprawidłowy operator
3 Brak kanału do wysłania SMS
4 Niedozwolona treść SMS - wulgaryzmy
5 Niedozwolona treść SMS - Premium
6 Niedozwolona treść Nadpisu
7 Wygasł
8 Skasowany
9 Niedostarczony
10 Nieznany błąd
11 Odrzucony