Dokumentacja endpointu do wysyłki e-mail przez SMTP (PHPMailer).
POST application/json Auth: Bearer token w Authorization| Adres | https://api.softspm.pl/send_email_api.php |
|---|---|
| Metoda HTTP | POST |
| Preflight | OPTIONS zwraca 204 |
| Content-Type | application/json |
| Kodowanie | UTF-8 |
Klucz API należy przekazać w nagłówku Authorization jako Bearer token:
Authorization: Bearer TWÓJ_KLUCZ_API
Uwaga: token musi znajdować się na liście kluczy API_KEYS['send_email_api.php'] po stronie serwera.
Brak nagłówka lub błędny token zwraca HTTP 401.
| Parametr | Typ | Wymagany | Opis |
|---|---|---|---|
to | string | tak | Adres e-mail odbiorcy. Musi przejść walidację FILTER_VALIDATE_EMAIL. |
subject lub title lub tytul | string | tak | Tytuł wiadomości. Max 255 znaków. |
message lub body lub content lub tresc | string | tak | Treść wiadomości. Max 20000 znaków. |
{
"to": "jan.kowalski@example.com",
"title": "Przypomnienie",
"body": "Wydarzenie odbędzie się jutro o 10:00."
}
curl -X POST "https://api.softspm.pl/send_email_api.php" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer TWÓJ_KLUCZ_API" \
-d '{
"to":"jan.kowalski@example.com",
"tytul":"Test API mail",
"tresc":"To jest test wiadomości e-mail"
}'
const response = await fetch("https://api.softspm.pl/send_email_api.php", {
method: "POST",
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer TWÓJ_KLUCZ_API"
},
body: JSON.stringify({
to: "jan.kowalski@example.com",
title: "Powiadomienie",
content: "Treść wiadomości"
})
});
const data = await response.json();
console.log(response.status, data);
{
"success": "Message has been sent"
}
| HTTP | Komunikat | Znaczenie |
|---|---|---|
| 400 | Empty JSON payload. | Puste body. |
| 400 | Invalid JSON payload. | Niepoprawna składnia JSON. |
| 400 | Missing required fields: to, subject/title/tytul, message/body/content/tresc | Brak wymaganych pól. |
| 400 | Invalid recipient e-mail address. | Niepoprawny adres e-mail odbiorcy. |
| 400 | Subject is too long. | Przekroczono limit 255 znaków. |
| 400 | Message is too long. | Przekroczono limit 20000 znaków. |
| 401 | Unauthorized - Invalid or missing API key. | Brak lub błędny Bearer token. |
| 405 | Only POST requests are allowed. | Użyto innej metody HTTP niż POST. |
| 500 | Mailer Error: message could not be sent. | Błąd SMTP/PHPMailer po stronie serwera. |
| 204 | (pusta odpowiedź) | Poprawny preflight OPTIONS. |
Access-Control-Allow-Origin: *, Allow-Methods: POST, OPTIONS, Allow-Headers: Content-Type, Authorization.AltBody).Authorization zwraca HTTP 401.to, tytułu (subject/title/tytul) lub treści (message/body/content/tresc) zwraca HTTP 400.subject/message zwracają HTTP 400.