przegląd API
RealSender umożliwia wysyłanie wiadomości e-mail za pomocą API (Application Programming Interface).
W ten sposób możesz wysyłać e-maile bezpośrednio z aplikacji, bez korzystania z protokołu SMTP (Simple Mail Transfer Protocol). Obecnie obsługujemy tylko żądania POST.
Adres serwera:
https://rsXXX-api.realsender.com/mail/send
Parametry wymagane/obowiązkowe:
| Parametr |
Opis |
| użytkownik api |
nazwa użytkownika uwierzytelniania |
| apipass |
hasło uwierzytelniające |
| z |
adres e-mail nadawcy |
| Do |
adres e-mail odbiorcy |
| temat |
temat wiadomości e-mail |
| tekst |
treść wiadomości e-mail w postaci zwykłego tekstu |
| html |
treść wiadomości e-mail w formacie HTML |
Jeśli wszystko jest w porządku, wiadomość zostanie wysłana i otrzymasz pozytywną odpowiedź JSON:
{"success":true}
W przypadku błędów pojawi się coś takiego:
{"success":false,"errorMsgs":["Podaj wartość 'subject'."]}
Szczegóły API
szczegóły API
Treść musi zostać wysłana z użyciem międzynarodowego zestawu znaków UTF-8.
Aby to sprawdzić, dodaj „€uro” w temacie wiadomości i prześlij ją. Jeśli zestaw znaków jest nieprawidłowy, otrzymasz następujące ostrzeżenie JSON:
{"success":false,"errorMsgs":["Wartość „subject” nie jest poprawnie zakodowana. Musi być zakodowana w UTF-8."]}
W zależności od tego, czy wypełniłeś jedno, czy oba pola „text” i „html”, wiadomości będą wysyłane przy użyciu jednego z poniższych „Content-Type”:
| Parametr |
Opis |
| tekst |
tekst/zwykły (tylko tekst) |
| html |
tekst/html (tylko html) |
| tekst+html |
multipart/alternative (tekst i html) zadecydują, która część zostanie wyświetlona |
Parametry nieobowiązkowe/opcjonalne:
| Parametr |
Opis |
| od imienia |
opis nadawcy |
| toname |
opis odbiorcy |
| odpowiedz na |
adres e-mail, na który będą wysyłane odpowiedzi |
| ścieżka powrotu |
adres e-mail, na który będą wysyłane nieodebrane wiadomości e-mail, musi znajdować się wśród autoryzowanych nadawców RealSender |
| cc |
kopia adresu e-mail |
| nazwa cc |
opis w formie kopii węglowej |
| UDW |
adres e-mail z ukrytą kopią |
| bccname |
ukryty opis w formie kopii |
| przytwierdzać |
plik(i) do dołączenia - mogą występować wielokrotnie w formularzu - maks. waga 3 MB zawartość pliku musi być częścią wieloczęściowego protokołu HTTP POST enctype=“multipart/form-data” jest wymagany dla INPUT TYPE=FILE |
Pola „Do”, „DW” i „UDW” mogą zawierać pojedynczy adres e-mail lub listę adresów e-mail rozdzielonych przecinkami.
W ramach RealSender całkowita liczba odbiorców każdej wiadomości e-mail jest ograniczona do 25 (może zostać zwiększona do 100).
Odpowiedzi serwera są w formacie JSON (JavaScript Object Notation):
| Opis |
Odpowiedź |
| e-mail wysłany |
{"sukces":prawda} |
| e-mail NIE został wysłany |
{"success":false,"errorMsgs":["..."]} |
Przykłady API
przykłady API
Żądanie POST z
metodą CURL-less w PHP
<?php $url = 'https://rsXXX-api.realsender.com/mail/send'; $data = array('apiuser' =>'ten, który Ci podaliśmy', 'apipass' => 'ten, który Ci podaliśmy', 'from' => 'sender@example.com', 'to' => 'recipient@example.com', 'subject' => 'temat wiadomości', 'text' => 'treść wiadomości e-mail w postaci zwykłego tekstu', 'html' => 'treść wiadomości e-mail w formacie HTML'); // użyj klucza 'http', nawet jeśli żądanie wysyłasz do https://... $options = array( 'http' => array( 'header' => "Content-type: application/x-www-form-urlencoded\r\n", 'method' => 'POST', 'content' => http_build_query($data), ), ); $context = stream_context_create($options); $result = file_get_contents($url, false, $context); var_dump($result); ?>
Metoda CURL
żądania POST
curl -d 'apiuser=ten, który Ci przekazaliśmy&apipass=ten, który Ci przekazaliśmy&from=sender@example.com&to=recipient@example.com&subject=temat wiadomości&text=treść wiadomości e-mail w postaci zwykłego tekstu&html=treść wiadomości e-mail w formacie HTML'https://rsXXX-api.realsender.com/mail/send
Przykłady API z załącznikami
przykłady API z załącznikami
Żądanie POST z załącznikami (maks. 5: attach1, attach2, …)
Metoda bez CURL z PHP
<?php require_once 'HTTP/Request2.php'; $config = array('use_brackets' =>false, ); $request = new HTTP_Request2('https://rsXXX-api.realsender.com/mail/send', HTTP_Request2::METHOD_POST, $config); $data = array('apiuser' => 'ten, który Ci podaliśmy', 'apipass' => 'ten, który Ci podaliśmy', 'from' => 'sender@example.com', 'to' => 'recipient@example.com', 'subject' => 'temat wiadomości', 'text' => 'treść wiadomości e-mail w postaci zwykłego tekstu', 'html' => 'treść wiadomości e-mail w formacie HTML'); foreach ($data as $k => $d) { $request->addPostParameter($k, $d); }; $request->addUpload('attach1', './sample.pdf', 'sample.pdf', 'application/pdf'); $request->addUpload('attach2', './sample.txt', 'sample.txt', 'text/plain'); $result = $request->send(); var_dump($result); ?>
Żądanie POST z załącznikami
metoda CURL
curl -F 'apiuser=ten, który Ci podaliśmy' \ -F 'apipass=ten, który Ci podaliśmy' \ -F 'from=sender@example.com' \ -F 'to=recipient@example.com' \ -F 'subject=temat wiadomości' \ -F 'text=treść wiadomości e-mail w postaci zwykłego tekstu' \ -F 'html=treść wiadomości e-mail w formacie HTML' \ -F 'attach=@sample.pdf;type=application/pdf' \ -F 'attach=@sample.txt;type=text/plain' \ https://rsXXX-api.realsender.com/mail/send