SMS sporočila
Avtentikacija
Zahteve morajo vključevati API ključ v HTTP glavi.
| Glava | Vrsta | Obvezno | Opis |
|---|---|---|---|
| apikey | string | Da | API ključ, uporabljen za avtentikacijo |
Končna točka
POST https://api.lertify.app/v1/sms/messages
Zahteva
Content-Type: application/json
curl -X POST "https://api.lertify.app/v1/sms/messages" \
-H "Content-Type: application/json" \
-H "apikey: TVOJ_API_KLUČ" \
-d '{
"sender": "Lertify01",
"destinations": [
"+38640123456"
],
"message": {
"content": "Testno SMS sporočilo",
"isUnicode": false
}
}'import requests
url = "https://api.lertify.app/v1/sms/messages"
headers = {
"Content-Type": "application/json",
"apikey": "TVOJ_API_KLUČ"
}
payload = {
"sender": "Lertify01",
"destinations": [
"+38640123456"
],
"message": {
"content": "Testno SMS sporočilo",
"isUnicode": False
}
}
response = requests.post(url, headers=headers, json=payload)
print(response.status_code)
print(response.json())<?php
$url = 'https://api.lertify.app/v1/sms/messages';
$data = [
'sender' => 'Lertify01',
'destinations' => [
'+38640123456'
],
'message' => [
'content' => 'Testno SMS sporočilo',
'isUnicode' => false
]
];
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Content-Type: application/json',
'apikey: TVOJ_API_KLUČ'
]);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
$response = curl_exec($ch);
if ($response === false) {
throw new Exception(curl_error($ch));
}
$statusCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
echo "HTTP status: " . $statusCode . PHP_EOL;
echo $response;import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SendSms {
public static void main(String[] args) throws Exception {
String json = """
{
"sender": "Lertify01",
"destinations": [
"+38640123456"
],
"message": {
"content": "Testno SMS sporočilo",
"isUnicode": false
}
}
""";
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://api.lertify.app/v1/sms/messages"))
.header("Content-Type", "application/json")
.header("apikey", "TVOJ_API_KLUČ")
.POST(HttpRequest.BodyPublishers.ofString(json))
.build();
HttpClient client = HttpClient.newHttpClient();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println("HTTP status: " + response.statusCode());
System.out.println(response.body());
}
}const url = "https://api.lertify.app/v1/sms/messages";
const payload = {
sender: "Lertify01",
destinations: [
"+38640123456"
],
message: {
content: "Testno SMS sporočilo",
isUnicode: false
}
};
async function sendSms() {
const response = await fetch(url, {
method: "POST",
headers: {
"Content-Type": "application/json",
"apikey": "TVOJ_API_KLUČ"
},
body: JSON.stringify(payload)
});
const data = await response.json();
console.log("HTTP status:", response.status);
console.log(data);
}
sendSms().catch(console.error);using System;
using System.Net.Http;
using System.Text;
using System.Text.Json;
using System.Threading.Tasks;
class Program
{
static async Task Main()
{
using var client = new HttpClient();
client.DefaultRequestHeaders.Add("apikey", "TVOJ_API_KLUČ");
var payload = new
{
sender = "Lertify01",
destinations = new[]
{
"+38640123456"
},
message = new
{
content = "Testno SMS sporočilo",
isUnicode = false
}
};
var json = JsonSerializer.Serialize(payload);
var content = new StringContent(json, Encoding.UTF8, "application/json");
var response = await client.PostAsync("https://api.lertify.app/v1/sms/messages", content);
var responseBody = await response.Content.ReadAsStringAsync();
Console.WriteLine($"HTTP status: {(int)response.StatusCode}");
Console.WriteLine(responseBody);
}
}package main
import (
"bytes"
"encoding/json"
"fmt"
"io"
"net/http"
)
type Message struct {
Content string `json:"content"`
IsUnicode bool `json:"isUnicode"`
}
type SmsRequest struct {
Sender string `json:"sender"`
Destinations []string `json:"destinations"`
Message Message `json:"message"`
}
func main() {
payload := SmsRequest{
Sender: "Lertify01",
Destinations: []string{
"+38640123456",
},
Message: Message{
Content: "Testno SMS sporočilo",
IsUnicode: false,
},
}
jsonData, err := json.Marshal(payload)
if err != nil {
panic(err)
}
req, err := http.NewRequest(
http.MethodPost,
"https://api.lertify.app/v1/sms/messages",
bytes.NewBuffer(jsonData),
)
if err != nil {
panic(err)
}
req.Header.Set("Content-Type", "application/json")
req.Header.Set("apikey", "TVOJ_API_KLUČ")
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
body, err := io.ReadAll(resp.Body)
if err != nil {
panic(err)
}
fmt.Println("HTTP status:", resp.StatusCode)
fmt.Println(string(body))
}Parametri zahteve
| Polje | Vrsta | Obvezno | Opis |
|---|---|---|---|
| sender | string | Da | Ime pošiljatelja ali telefonska številka, nastavljena za uporabniški račun. |
| destinations | array[string] | Da | Seznam telefonskih številk prejemnikov. |
| message.content | string | Da | Vsebina SMS sporočila. Največ 640 znakov po obdelavi sporočila. |
| message.isUnicode | boolean | Ne (privzeto false) | Določa, ali naj se sporočilo obravnava kot Unicode. |
| deliveryReportUrl | string | Ne | URL, ki prejema webhooke s poročili o dostavi. |
| scheduledTime | long | Ne | Časovni žig Unix v sekundah, ki določa čas pošiljanja sporočila. |
| priceReport | boolean | Ne (privzeto false) | Ko je nastavljen na true, poročila o dostavi vključujejo ceno sporočila, kadar je na voljo. |
Omejitev dolžine sporočila
Največja dovoljena dolžina sporočila je: 640 znakov
Omejitev se preveri po predobdelavi sporočila. Če je message.isUnicode nastavljen na false, sistem nepodprte znake, ki niso del nabora GSM, pred izračunom dolžine sporočila po možnosti zamenja z ustreznimi znaki GSM. Če je message.isUnicode nastavljen na true, se vsebina sporočila ohrani in obdela kot Unicode.
Če je sporočilo prazno, vsebuje samo presledke ali presega 640 znakov, API vrne 400 Bad Request.
Število segmentov SMS ni enako številu znakov. Odvisno je od kodiranja in dejanske vsebine sporočila.
Segmenti SMS
API samodejno izračuna število segmentov SMS glede na vsebino in kodiranje sporočila.
| Kodiranje | Opis |
|---|---|
| GSM-7 | Uporabi se, ko je vsebina sporočila združljiva z naborom znakov GSM. |
| Unicode | Uporabi se za sporočila Unicode ali kadar je Unicode izrecno zahtevan. |
Polje segmentCount v odgovoru predstavlja število segmentov SMS za posamezno sporočilo oziroma prejemnika.
Primer: sporočilo ima segmentCount = 2, zahteva pa vsebuje 3 prejemnike. Skupno obračunano število je 6 segmentov SMS.
Načrtovano pošiljanje
Polje scheduledTime mora vsebovati časovni žig Unix, izražen v sekundah.
| Vrednost | Obnašanje |
|---|---|
| Polje je izpuščeno | Sporočilo se pošlje takoj. |
| Časovni žig je v prihodnosti | Sporočilo se načrtuje za navedeni čas. |
| Časovni žig je enak trenutnemu času ali je v preteklosti | Sporočilo se pošlje takoj. |
| Negativna vrednost | API vrne 400 Bad Request. |
Načrtovani čas se obravnava kot absolutni časovni žig Unix in je v odgovoru API vrnjen tudi v obliki UTC.
Primer načrtovanega časa
{
"scheduledTime": 1789297200
}
Ustrezen čas UTC:
2026-09-13T09:00:00Z
Pri sporočilih, poslanih takoj, polji scheduledTime in scheduledAt nista vključeni v odgovor.
Primer zahteve
{
"sender": "Lertify01",
"destinations": [
"+38640123456",
"+38640987654"
],
"message": {
"content": "Test SMS message",
"isUnicode": false
},
"deliveryReportUrl": "https://example.com/delivery-report",
"scheduledTime": 1789297200
}
Odgovor
Statusna koda
| Koda | Opis |
|---|---|
| 200 | Zahteva je bila sprejeta v obdelavo |
Uspešen odgovor
Ko je zahteva uspešno sprejeta, API vrne 202 Accepted.
Struktura odgovora
| Polje | Vrsta | Opis |
|---|---|---|
messages |
array | Seznam ustvarjenih sporočil. |
messages[].messageId |
UUID | Enolični identifikator sporočila. |
messages[].destination |
string | Telefonska številka prejemnika. |
status |
string | accepted ali scheduled. |
scheduledTime |
long | Prisotno samo pri načrtovanih sporočilih. |
scheduledAt |
datetime |
Prisotno samo pri načrtovanih sporočilih. Čas je vrnjen v obliki UTC. |
segmentCount |
integer | Število segmentov SMS za vsako posamezno sporočilo. |
Primer Odgovora - takojšnje pošiljanje
{
"messages": [
{
"messageId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"destination": "+38640123456"
},
{
"messageId": "4bb95b02-a2d7-46d8-bd66-73b65df4fe33",
"destination": "+38640987654"
}
],
"status": "accepted",
"segmentCount": 1
}
Primer odgovora - načrtovano pošiljanje
{
"messages": [
{
"messageId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"destination": "+38640123456"
}
],
"status": "scheduled",
"scheduledTime": 1789297200,
"scheduledAt": "2026-09-13T09:00:00Z",
"segmentCount": 1
}
Odgovori z napakami
| Status HTTP | Opis |
|---|---|
400 Bad Request |
Neveljavna zahteva, vsebina sporočila, pošiljatelj, ciljna telefonska številka ali načrtovani čas oziroma nezadostno stanje na računu. |
401 Unauthorized |
Neveljaven ključ API. |
500 Internal Server Error |
Prišlo je do nepričakovane napake strežnika. |
Primer odgovora z napako
{
"error": "Napaka: 401 - Ključ API ni veljaven."
}
Opombe
- Končna točka podpira pošiljanje več SMS sporočil v eni zahtevi.
- Telefonske številke morajo biti v mednarodni obliki s predpono + (npr. +38640123456).
deliveryReportUrlomogoča asinhrona obvestila o statusu dostave.
Telefonske številke
Telefonske številke morajo biti navedene v mednarodni obliki E.164. Primer:
+38640123456
Sporočila je mogoče poslati samo v države, za katere ima Lertify aktiven cenik SMS.
Če polje destinations vsebuje vsaj eno neveljavno ali nepodprto telefonsko številko, je celotna zahteva zavrnjena.
Poročilo o dostavi (Webhook)
Pregled
Če je v zahtevi podan deliveryReportUrl, bo sistem na navedeni URL pošiljal HTTP POST zahteve z informacijami o statusu dostave SMS sporočila.
Če deliveryReportUrl v zahtevi ni podan, bo sistem uporabil deliveryReportUrl, ki je konfiguriran za pošiljatelja, če je nastavljen. Če ni konfiguriran noben URL, se webhook za poročilo o dostavi ne bo poslal.
Zahteve za končno točko
- Mora sprejemati HTTP POST zahteve.
- Mora vrniti HTTP status 2xx.
- Biti mora javno dostopna s platforme Lertify.
Vsaka zahteva s poročilom o dostavi vsebuje naslednjo glavo HTTP:
X-Message-Id: 3fa85f64-5717-4562-b3fc-2c963f66afa6
Če endpoint ne vrne uspešnega odgovora 2xx, se samodejno sproži mehanizem ponovnih poskusov.
Vsebina poročila o dostavi
| Polje | Vrsta | Vedno prisotno | Opis |
|---|---|---|---|
messageId |
UUID | Da | Enolični identifikator sporočila. |
status |
string | Da | Trenutno javno stanje sporočila. |
segments |
integer | Da | Število segmentov SMS za sporočilo. |
price |
decimal | Ne | Cena sporočila. Vključena samo, če je bil zahtevan priceReport in so podatki o ceni na voljo. |
Primer brez cene
{
"messageId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"status": "DELIVERED",
"segments": 1
}
Primer s ceno
{
"messageId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"status": "DELIVERED",
"segments": 2,
"price": 0.084
}
Polje price je vključeno samo, če je bil priceReport v prvotni zahtevi za pošiljanje nastavljen na true in so podatki o ceni na voljo v obračunskem sistemu.
Če obračunska storitev ni na voljo ali cene ni mogoče pridobiti, se poročilo o dostavi kljub temu pošlje, polje price pa se izpusti.
Stanja poročila o dostavi
| Stanje | Opis |
|---|---|
SCHEDULED |
Sporočilo je bilo načrtovano za prihodnjo dostavo. |
SENT |
Sporočilo je bilo uspešno posredovano ponudniku SMS ali mobilnemu operaterju. |
DELIVERED |
Sporočilo je bilo uspešno dostavljeno na napravo prejemnika. |
FAILED |
Sporočila ni bilo mogoče poslati ali dostaviti. |
REJECTED |
Sporočilo je bilo zavrnjeno pred posredovanjem operaterju. |
UNKNOWN |
Končnega stanja dostave ni bilo mogoče določiti. |
CANCELLED |
Načrtovano sporočilo je bilo preklicano pred dostavo. |
Stanje accepted, ki ga vrne API za pošiljanje SMS, pomeni samo, da je bila zahteva sprejeta v obdelavo. Ne gre za stanje poročila o dostavi.
Poročilo o dostavi lahko med življenjskim ciklom istega sporočila vsebuje več posodobitev stanja.
Običajen življenjski cikel sporočila:
accepted -> SENT -> DELIVERED
Za načrtovana sporočila:
scheduled -> SCHEDULED -> SENT -> DELIVERED
Obračunavanje sporočil
Endpoint za pošiljanje SMS ne vrne cene sporočila. Za prejem podatkov o ceni v zahtevi omogočite poročanje o ceni:
{
"priceReport": true
}
Ko so podatki o ceni na voljo, so vključeni v poročilo o dostavi za vsako posamezno sporočilo:
{
"messageId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"status": "DELIVERED",
"segments": 2,
"price": 0.084
}
Cena je vrnjena za vsakega prejemnika posebej (messageId). Valuta je določena z nastavitvami računa ali veljavnim cenikom.
Trenutna vsebina webhooka ne vključuje ločenega polja za valuto.
Dohodna sporočila (Webhook)
Če je za pošiljatelja nastavljen inboundUrl, sistem ob prejemu dohodnega SMS sporočila na ta URL pošlje zahtevo HTTP POST.
Webhook za dohodna sporočila posreduje sporočila, ki jih končni uporabniki pošljejo na telefonsko številko ali pošiljatelja, dodeljenega v platformi Lertify.
Zahteve za webhook dohodnih sporočil
- Sprejemati mora zahteve HTTP POST.
- Vrniti mora statusno kodo HTTP 2xx.
- Biti mora javno dostopna s platforme Lertify.
Če endpoint ne vrne uspešnega odgovora, se samodejno sproži mehanizem ponovnih poskusov.
Vsebina webhooka za dohodna sporočila
| Polje | Vrsta | Opis |
|---|---|---|
Sender |
string | Telefonska številka uporabnika, ki je poslal SMS sporočilo. |
Recipient |
string | ID pošiljatelja ali telefonska številka, na katero je bilo poslano sporočilo. |
Message |
string | Vsebina prejetega SMS sporočila. |
Time |
string | Čas prejema sporočila v obliki yyyy-MM-dd HH:mm:ss. |
Primer vsebine
{
"Sender": "+38640123456",
"Recipient": "+38631234567",
"Message": "TEST",
"Time": "2026-05-15 14:32:10"
}
Primer webhook zahteve
{
"Sender": "+38640123456",
"Recipient": "+38631234567",
"Message": "TEST",
"Time": "2026-05-15 14:32:10"
}
Opombe:
-
Dohodni webhooki se pošljejo samo, če je za pošiljatelja konfiguriran
inboundUrl. -
Polje
Timeje poslano kot niz v formatu yyyy-MM-dd HH:mm:ss.
Pravilnik ponovnih poskusov
Če endpoint webhooka ne vrne odgovora HTTP 2xx, sistem ponovi dostavo po naslednji formuli:
zakasnitev = (poskus^2) + 1 minut
Največje število ponovnih poskusov: 10
| Poskus | Zakasnitev | Skupni pretečeni čas |
|---|---|---|
| 1 | 2 min | 2 min |
| 2 | 5 min | 7 min |
| 3 | 10 min | 17 min |
| 4 | 17 min | 34 min |
| 5 | 26 min | 60 min |
| 6 | 37 min | 97 min |
| 7 | 50 min | 147 min |
| 8 | 65 min | 212 min |
| 9 | 82 min | 294 min |
| 10 | 101 min | 395 min |
Odgovor ob napaki
API ob napaki vrne ustrezno HTTP statusno kodo skupaj s sporočilom o napaki, ki vsebuje aplikacijsko specifično številčno kodo napake.
Primer:
{
"error": "Error: 3 - Invalid recipient (to) number"
}
Možne aplikacijske kode napak:
| Code | Name | Description |
|---|---|---|
| 1 | MsgTooLongOrEmpty |
Sporočilo je predolgo ali prazno. |
| 2 | InvalidSender |
Neveljaven pošiljatelj (from). |
| 3 | InvalidToNumber |
Neveljavna prejemnikova telefonska številka (to). |
| 4 | NumberNotRegistered |
Telefonska številka ni registrirana. |
| 5 | ScheduledTimeInvalid |
scheduledTime mora biti veljaven Unix časovni žig. |
| 6 | BalanceTooLow |
Stanje na računu je prenizko za pošiljanje sporočila. |
| 7 | Rejected |
Sporočilo je bilo zavrnjeno. |
| 8 | ServerError |
Notranja napaka strežnika. |
Če je ena ali več ciljnih telefonskih številk neveljavnih, sporočilo o napaki vsebuje tudi seznam neveljavnih številk:
{
"error": "Error: 3 - Invalid recipient (to) number | Invalid destination numbers: +38640123, 041123456"
}
Email2SMS
Lertify Email2SMS omogoča pošiljanje SMS sporočil tako, da uporabnik pošlje strukturirano e-poštno sporočilo na svoj konfigurirani Email2SMS naslov. Sistem iz telesa e-pošte prebere ključ API, pošiljatelja, prejemnike, vsebino sporočila in izbirne nastavitve ter nato zahtevo posreduje v Lertify SMS sistem.
če e-poštni naslov pošiljatelja ni avtoriziran za ta račun.
Kako uporabljati Email2SMS
- Pošljite e-pošto – Sporočilo pošljite na naslov
email2sms@lertify.app. -
Uporabite dovoljen e-poštni naslov – Privzeto lahko zahtevo pošljete iz kateregakoli e-poštnega naslova. Če je pri
API ključu nastavljen en ali več dovoljenih e-poštnih naslovov, bodo sprejete samo zahteve, poslane iz teh naslovov. -
V telo e-pošte dodajte oznake – Obvezne oznake so
#apikey#,#sender#,
#startdestination#…#enddestination#ter#startcontent#…#endcontent#. -
Dodajte prejemnike – Telefonske številke lahko v razdelku s prejemniki ločite z novo vrstico, podpičjem ali
vejico. -
Po želji dodajte dodatne nastavitve – Uporabite lahko
#defaultcc#,#isunicode#,
#scheduledtime#,#pricereport#in#callbackurl#. -
Pošljite e-pošto – Če je zahteva veljavna, se SMS sporočilo odda v pošiljanje. Če so v vsebini napake, sistem
pošlje povratno e-pošto z opisom napake.
Obvezna polja
| Oznaka | Vrsta | Obvezno | Opis |
|---|---|---|---|
#apikey# |
UUID | Da | Ključ API. Uporablja se za identifikacijo računa in skupaj z naslovom From za avtorizacijo. |
#sender#
|
string | Da | Ime pošiljatelja ali telefonska številka, ki jo sme uporabljati račun. |
#startdestination# …#enddestination#
|
section | Da | Seznam ene ali več ciljnih telefonskih številk. |
#startcontent# …#endcontent#
|
section | Da | Vsebina SMS sporočila. |
Izbirna polja
| Oznaka | Vrsta | Obvezno | Opis |
|---|---|---|---|
#defaultcc# |
string | Ne | Privzeta klicna številka države za lokalne številke. Privzeto 386. |
#isunicode# |
boolean | Ne | true ali false. Privzeto false. |
#scheduledtime# |
long | Ne | Čas načrtovanega pošiljanja v obliki Unix časovnega žiga v sekundah, npr. 1789290000. |
#pricereport# |
boolean | Ne | true ali false. Privzeto false. Zahteva vključitev cene v poročilo o dostavi, kadar je na voljo. |
#callbackurl# |
string | Ne | URL za poročila o dostavi SMS. |
Minimalni primer e-pošte
#apikey#
12345678-1234-1234-1234-123456789abc
#sender#
Lertify
#startdestination#
040123456
#enddestination#
#startcontent#
Testno SMS sporočilo
#endcontent#
V tem primeru se številka 040123456 pretvori z uporabo privzete države 386 v +38640123456.
Celoten primer e-pošte
#apikey#
12345678-1234-1234-1234-123456789abc
#sender#
Lertify
#defaultcc#
386
#isunicode#
false
#scheduledtime#
1789290000
#pricereport#
False
#callbackurl#
https://example.com/delivery-report
#startdestination#
+38640123456
0038640987654
031555111; 041222333
#enddestination#
#startcontent#
Testno SMS sporočilo poslano prek Email2SMS.
#endcontent#
Pravila za telefonske številke
Email2SMS pred oddajo zahteve normalizira prejemnike glede na #defaultcc#. Pravila so:
- Če se številka začne z
+, ostane nespremenjena. - Če se začne z
00, se00zamenja z+. - Če se začne z
0, se začetna0odstrani in doda privzeta klicna številka države. - Če nima nobene od navedenih predpon, se pred številko doda privzeta klicna številka države.
- Podvojene številke se odstranijo.
#defaultcc#
386
040123456 -> +38640123456
0038640123456 -> +38640123456
+38640123456 -> +38640123456
Po normalizaciji veljajo pravila SMS sistema. Telefonske številke morajo biti veljavne in podprte za pošiljanje; če je ciljna številka neveljavna ali nepodprta, je lahko zahteva zavrnjena.
Več prejemnikov
V razdelku za prejemnike so podprti naslednji ločilniki: nova vrstica, vejica in podpičje.
#startdestination#
040123456
040987654,031555111;+385911234567
#enddestination#
Načrtovano pošiljanje
Polje #scheduledtime# določa čas načrtovanega pošiljanja SMS sporočila. Vrednost mora biti podana kot Unix časovni žig v sekundah.
#scheduledtime#
1789290000
Če polje #scheduledtime# ni navedeno, se SMS sporočilo pošlje takoj.
Če vrednost ni veljavno celo število oziroma veljaven Unix časovni žig v sekundah, zahteva za načrtovano pošiljanje ni veljavna.
Unicode in dolžina sporočila
Polje #isunicode# določa obravnavo vsebine sporočila. Če je false, se SMS obravnava po pravilih GSM, kadar je to mogoče. Če je true, se vsebina ohrani in obdela kot Unicode.
Dovoljeno je največ 640 znakov po obdelavi vsebine.
Poročila o dostavi in cena
Z oznako #callbackurl# določite URL, kamor se pošiljajo poročila o dostavi. Z #pricereport# true zahtevate, da poročilo vključuje tudi ceno, kadar je ta na voljo. Poročila se obravnavajo po enakih pravilih kot pri Lertify SMS API.
#pricereport#
true
#callbackurl#
https://example.com/delivery-report
Avtentikacija in varnost
Email2SMS uporablja preverjanje ključa API in e-poštnega naslova pošiljatelja:
- Ključ v
#apikey#mora biti veljaven UUID. - Če za ključ API ni določen noben dovoljen e-poštni naslov, se lahko Email2SMS zahteva pošlje iz kateregakoli e-poštnega naslova.
- Če je za ključ API določen en ali več dovoljenih e-poštnih naslovov, mora biti e-pošta poslana iz enega od teh naslovov.
- Če e-poštni naslov ni dovoljen za uporabljeni ključ API, SMS sporočilo ni poslano.
API ne posredujte tretjim osebam.
Obdelava napak
| Primer | Obnašanje |
|---|---|
| Prazen body | E-pošta se šteje kot obdelana; SMS se ne pošlje. |
Manjka #apikey# ali ključ ni UUID |
E-pošta se šteje kot obdelana; SMS se ne pošlje. |
| From ni avtoriziran za API ključ | E-pošta se zavrne in SMS se ne pošlje. |
Manjka #sender# |
Pošiljatelj prejme e-pošto z napako. |
| Manjka destination razdelek ali nima prejemnikov | Pošiljatelj prejme e-pošto z napako. |
| Manjka content razdelek | Pošiljatelj prejme e-pošto z napako. |
| SMS validacija zavrne zahtevo | Pošiljatelj prejme e-pošto z opisom napake. |
| Začasna sistemska/HTTP napaka ali timeout | E-pošta ostane neoznačena kot obdelana, da jo je mogoče ponovno poskusiti. |
Naslov povratnega sporočila ob validacijski napaki je: Lertify Email2SMS – Error
Sintaksa oznak
Oznake so občutljive na velike in male črke in morajo biti zapisane natančno tako, kot je določeno v dokumentaciji, torej z malimi črkami.
Pri enovrstičnih vrednostih se vrednost prebere iz naslednje vrstice za oznako.
#sender#
Lertify01
#isunicode#
false
Pri večvrstičnih razdelkih sistem prebere celotno vsebino med začetno in končno oznako.
#startcontent#
Besedilo sporočila je lahko
zapisano v več vrsticah.
#endcontent#
Enako velja za razdelek s prejemniki:
#startdestination#
+38640123456
+38640987654
#enddestination#
Za pravilno obdelavo morata biti pri večvrstičnih razdelkih vedno prisotni tako začetna kot končna oznaka.