Úvod

InfoSMS.online poskytuje jednoduché REST API pre odosielanie a príjem SMS správ. API podporuje JSON aj XML formát a je kompatibilné so štandardom SMSGateway.

Base URL

https://infosms.online

Podporované formáty

  • JSON — preferovaný formát, header Content-Type: application/json
  • XML — kompatibilita so staršími integráciami
  • form-data — pre jednoduché POST požiadavky
ℹ️
API kľúč získate v klientskom portáli po registrácii. Reseleri s viacerými SIM kartami nájdu účtový API kľúč v sekcii portálu 🔑 API kľúč.

Autentifikácia

InfoSMS.online rozlišuje dva typy API kľúčov podľa účelu:

1. Sender API kľúč (akey) — pre SMS Brána a jednoduchý SIM Hosting

Priraďuje sa ku konkrétnemu odosielateľovi alebo SIM karte. Nájdete ho v administrácii pri konkrétnom SIM konte (mdl_user.akey). Používa sa s parametrami username + password (alebo namiesto hesla priamo akey ak má viac ako 30 znakov).

ParameterTypPopis
username string required Prihlasovací email
password string required API kľúč (sender akey danej SIM karty)

2. Účtový API kľúč (account_akey) — pre reseller multi-sender bulk

Patrí celému klientskému účtu (nie jednej SIM karte). Nájdete ho v portáli v sekcii 🔑 API kľúč. Umožňuje posielať hromadné SMS cez API — každej správe môžete zvoliť vlastného sendera. Používa sa s parametrami username + account_akey.

ParameterTypPopis
username string required Prihlasovací email klientského účtu
account_akey string required Účtový API kľúč (vygenerovaný v portáli, sekcia 🔑 API kľúč)
ℹ️
Endpointy /api/bulk/, /api/balance/ a /api/status/ používajú pre rovnaký účtový kľúč skrátené názvy parametrov user (= username) a pass (= account_akey) — ide o ten istý kľúč ako vyššie.
⚠️
Nikdy neprenášajte API kľúč v URL ako GET parameter. Vždy používajte POST body. Kľúče sú citlivé — zaobchádzajte s nimi ako s heslami.

Formát požiadaviek

API akceptuje požiadavky v JSON alebo XML formáte. Odpovede sú vrátené v rovnakom formáte ako požiadavka.

Telefónne čísla

Číslo príjemcu (to) vyžadujeme striktne v medzinárodnom formáte s predvoľbou, vrátane znaku +:

FormátPríkladPodporovaný
Medzinárodný ++421905123456✅ Áno

Iné formáty (bez znaku +, národné tvary typu 0905123456 alebo 905123456) API neakceptuje — požiadavka s takýmto číslom bude odmietnutá s chybou INVALID_NUMBER.

Kódovanie správ

Predvolene sa diakritika automaticky normalizuje (á→a, č→c...). Pre unicode SMS nastavte parameter unicode=1 — cena sa počíta podľa unicode limitu (70 znakov/SMS).

Chybové kódy

Endpointy SMS brány (/api/bulk/, /api/sim/send.php, /api/balance/, /api/account/...) vracajú chyby v jednotnom tvare {"status":"ERR"|"ERROR","msg"|"message":"popis chyby"} (resp. ekvivalentný XML element <status>ERR</status>). HTTP stavový kód 200 sa vracia aj pri čiastočnom zlyhaní v rámci hromadného odoslania (pozri pole errors).

HTTPstatusPopis
200OKÚspešné spracovanie (vrátane čiastočného zlyhania v poli errors)
400ERR / ERRORChýbajúce alebo neplatné parametre (napr. chýba text, prázdne numbers)
401ERR / ERRORNeplatné prihlasovacie údaje (user/pass)
200ERRNedostatok kreditu — text chyby obsahuje aktuálny zostatok
200errors[]Neplatné telefónne číslo v rámci hromadného odoslania — ostatné čísla sa odošlú normálne
404ERRZáznam nenájdený (napr. /api/status/ — neexistujúce msgid)

Odoslanie SMS

POST /api/bulk/

Odošle SMS jednému alebo viacerým príjemcom. Endpoint je rovnaký pre jednu SMS aj pre hromadné odoslanie — rozdiel je len v počte čísel v poli numbers (pre jednu SMS stačí pole s jedným číslom).

Parametre

ParameterTypPopis
userstringrequired Prihlasovací email
passstringrequired API kľúč (account_akey, sekcia 🔑 API kľúč v portáli)
numbersarrayrequired Pole telefónnych čísel — pre jednu SMS stačí pole s jedným číslom (max 1000)
textstringrequired Text správy
fromstringoptional Odosielateľ (max 11 znakov, alfanumerický). Predvolene meno firmy z portálu.
💡
Endpoint podporuje JSON aj XML — formát sa rozpozná automaticky podľa hlavičky Content-Type (application/json alebo application/xml / text/xml). Odpoveď príde v rovnakom formáte ako požiadavka.
💡
Ku každému číslu môžete priradiť vlastné msgid (napr. ID objednávky), podľa ktorého potom dohľadáte stav doručenia cez Stav doručenia. Ak msgid nepošlete, vygenerujeme a vrátime vlastné unikátne ID.

Príklad požiadavky (jedna SMS)

JSON
XML
POST /api/bulk/
Content-Type: application/json

{
  "user":    "vas@email.sk",
  "pass":    "vas-api-kluc",
  "numbers": [{ "number": "+421905123456", "msgid": "objednavka-1234" }],
  "text":    "Vaša objednávka č. 1234 je pripravená na vyzdvihnutie.",
  "from":    "MojaFirma"
}
POST /api/bulk/
Content-Type: application/xml

<?xml version="1.0" encoding="UTF-8"?>
<request>
  <credential>
    <user>vas@email.sk</user>
    <pass>vas-api-kluc</pass>
  </credential>
  <message>
    <text>Vasa objednavka c. 1234 je pripravena na vyzdvihnutie.</text>
    <from>MojaFirma</from>
    <numbers>
      <number msgid="objednavka-1234">+421905123456</number>
    </numbers>
  </message>
</request>

Odpoveď (úspech)

JSON
XML
200 OK
{
  "status":  "OK",
  "sent":    1,
  "failed":  0,
  "credit":  4.2350,
  "results": [
    { "number": "+421905123456", "msgid": "objednavka-1234" }
  ]
}
200 OK
<?xml version="1.0" encoding="UTF-8"?>
<response>
  <status>OK</status>
  <sent>1</sent>
  <failed>0</failed>
  <credit>4.2350</credit>
  <results>
    <result><number>+421905123456</number><msgid>objednavka-1234</msgid></result>
  </results>
</response>

Pre odoslanie viacerým príjemcom naraz (max 1000 čísel) a popis čiastočného zlyhania pozri sekciu Hromadné odoslanie.

Hromadné odoslanie

POST /api/bulk/

Odošle rovnakú správu na viac čísel naraz. Maximálne 1000 čísel na jednu požiadavku.

Parametre

ParameterTypPopis
userstringrequired Prihlasovací email
passstringrequired API kľúč (account_akey)
numbersarrayrequired Pole telefónnych čísel (max 1000)
textstringrequired Text správy
fromstringoptional Odosielateľ
💡
Endpoint podporuje JSON aj XML — formát sa rozpozná automaticky podľa hlavičky Content-Type (application/json alebo application/xml / text/xml). Odpoveď príde v rovnakom formáte ako požiadavka.
💡
Každý prvok v numbers môže byť buď samotný string (telefónne číslo), alebo objekt {"number": "...", "msgid": "..."} s vlastným ID správy. Ak msgid nepošlete, vygenerujeme a vrátime vlastné unikátne ID — v oboch prípadoch ho nájdete v results[].msgid a použijete na dotaz cez Stav doručenia.

Príklad požiadavky

JSON
XML
POST /api/bulk/
Content-Type: application/json

{
  "user":    "vas@email.sk",
  "pass":    "vas-api-kluc",
  "numbers": [
    { "number": "+421905111111", "msgid": "klient-1001" },
    { "number": "+421905222222", "msgid": "klient-1002" },
    "+421905333333"
  ],
  "text":    "Akcia: -30% na všetky produkty do konca týždňa!",
  "from":    "MojaFirma"
}
POST /api/bulk/
Content-Type: application/xml

<?xml version="1.0" encoding="UTF-8"?>
<request>
  <credential>
    <user>vas@email.sk</user>
    <pass>vas-api-kluc</pass>
  </credential>
  <message>
    <text>Akcia: -30% na vsetky produkty do konca tyzdna!</text>
    <from>MojaFirma</from>
    <numbers>
      <number msgid="klient-1001">+421905111111</number>
      <number msgid="klient-1002">+421905222222</number>
      <number>+421905333333</number>
    </numbers>
  </message>
</request>

Odpoveď (úspech)

JSON
XML
200 OK
{
  "status":  "OK",
  "sent":    3,
  "failed":  0,
  "credit":  3.9850,
  "results": [
    { "number": "+421905111111", "msgid": "klient-1001" },
    { "number": "+421905222222", "msgid": "klient-1002" },
    { "number": "+421905333333", "msgid": "11087" }
  ]
}
200 OK
<?xml version="1.0" encoding="UTF-8"?>
<response>
  <status>OK</status>
  <sent>3</sent>
  <failed>0</failed>
  <credit>3.9850</credit>
  <results>
    <result><number>+421905111111</number><msgid>klient-1001</msgid></result>
    <result><number>+421905222222</number><msgid>klient-1002</msgid></result>
    <result><number>+421905333333</number><msgid>11087</msgid></result>
  </results>
</response>

Odpoveď (čiastočné zlyhanie)

Ak je niektoré číslo neplatné alebo sa správu nepodarí odoslať, v odpovedi pribudne pole errors s dôvodom pre každé zlyhané číslo — ostatné čísla v dávke sa odošlú normálne.

JSON
XML
200 OK
{
  "status":  "OK",
  "sent":    2,
  "failed":  1,
  "credit":  3.9850,
  "errors": [
    { "number": "+421900111222", "msg": "Neplatné telefónne číslo: +421900111222" }
  ]
}
200 OK
<?xml version="1.0" encoding="UTF-8"?>
<response>
  <status>OK</status>
  <sent>2</sent>
  <failed>1</failed>
  <credit>3.9850</credit>
  <errors>
    <error><number>+421900111222</number><msg>Neplatné telefónne číslo: +421900111222</msg></error>
  </errors>
</response>

Stav doručenia

GET /api/status/?user=&pass=&msgid=

Vráti aktuálny stav doručenia SMS podľa msgid — hodnoty z poľa results[].msgid v odpovedi Odoslanie SMS / Hromadné odoslanie (vlastné ID, ktoré ste poslali, alebo naše vygenerované).

Parametre

ParameterTypPopis
userstringrequired Prihlasovací email
passstringrequired API kľúč (account_akey)
msgidstringrequired ID správy z results[].msgid pri odoslaní
delivery_statusPopis
pendingČaká na odoslanie / stav ešte nebol potvrdený
acceptedPrijatá do siete operátora (SMSC)
deliveredDoručená príjemcovi
failedNepodarilo sa doručiť
expiredPlatnosť správy vypršala
errorChyba v routingu

Príklad požiadavky

GET /api/status/?user=vas@email.sk&pass=vas-api-kluc&msgid=objednavka-1234

Odpoveď (úspech)

200 OK
{
  "status":          "OK",
  "msgid":           "objednavka-1234",
  "delivery_status": "delivered",
  "number":          "421905123456",
  "sent_at":         "2026-06-07T14:30:00+02:00",
  "delivered_at":    "2026-06-07 14:32:10"
}

Odpoveď (nenájdené)

404
{
  "status": "ERR",
  "msg":    "Správa s daným msgid nebola nájdená."
}

Zostatok kreditu

GET /api/balance/?user=&pass=

Vráti aktuálny dostupný kredit na vašom účte. Parameter user je prihlasovací email, pass je účtový API kľúč (account_akey, sekcia 🔑 API kľúč v portáli).

200 OK
{
  "status":  "OK",
  "balance": 12.4500,
  "currency":"EUR"
}
ℹ️
Legacy XML mód (VetSoftPro / staršie integrácie): endpoint akceptuje aj POST s parametrami username (email) + password (heslo účtu) a vráti XML odpoveď:
<response><status>1</status><balance>12.4500</balance>...</response>

Odoslanie cez SIM Hosting

POST /api/sim/send.php

Odošle SMS priamo cez vašu SIM kartu. Správa musí byť bez diakritiky (automaticky normalizovaná). Vyžaduje aktívny SIM Hosting účet.

💡
SIM Hosting SMS sú odosielané z vášho vlastného telefónneho čísla — príjemca vidí vaše číslo, nie textový odosielateľ. Cena za SMS je nastavená pri danej SIM karte (zvyčajne 0,008–0,01 €).

Endpoint prijíma JSON aj form-data (application/x-www-form-urlencoded).

ParameterTypPopis
userstringrequired Prihlasovací email
passstringrequired API kľúč (sender akey danej SIM karty)
tostringrequired Telefónne číslo v medzinárodnom formáte (+421...)
textstringrequired Text správy. Diakritika bude automaticky normalizovaná.

Príklad požiadavky

POST /api/sim/send.php
Content-Type: application/json

{
  "user": "vas@email.sk",
  "pass": "vas-api-kluc",
  "to":   "+421905123456",
  "text": "Dobry den, vasa objednavka je pripravena."
}

Odpoveď (úspech)

200 OK
{
  "status": "OK",
  "idsms": 12345
}

Odpoveď (chyba)

200 / status: ERR
{
  "status": "ERR",
  "msg":    "Nedostatok kreditu. Zostatok: 0.0000 EUR"
}

Prijaté SMS (SIM)

SMS prijaté na vašu SIM kartu (server transmitter, self_hosted=0) sa nedajú vyzdvihnúť pollingom — server vám každú prijatú SMS okamžite odošle formou webhooku na callback URL nastavenú pri danej SIM karte (parameter curl, pozri sekciu SIM Management API). Technický popis nájdete v sekcii Webhook.

💡
Ak má jeden účet viac SIM kariet (reseller / multi-sender), alebo prijímate odpovede z hromadnej ankety, môže prísť viac SMS naraz — každá sa odošle ako samostatný webhook (paralelne).

Webhook

Callback URL sa nastavuje per SIM karta cez parameter curl v SIM Management API (/api/account/sim.php, pozri sekciu SIM Management — update). Server na túto URL odošle GET požiadavku s query parametrami pri dvoch typoch udalostí, rozlíšených parametrom event:

eventKedyParametre
incoming Prišla nová SMS na vašu SIM kartu id, from, sim, text, received_at
delivery Bola doručená (alebo zlyhala) odoslaná SMS idsms, status (delivered / failed), number, gw_id

Príklad — prijatá SMS

GET https://vas-server.sk/callback?event=incoming&id=1042&from=%2B421905999888&sim=%2B421000000000&text=Ahoj%2C+aky+je+termin+dodania%3F&received_at=2026-06-07+09%3A14%3A22

Príklad — stav doručenia

GET https://vas-server.sk/callback?event=delivery&idsms=12345&status=delivered&number=%2B421905123456&gw_id=...
ℹ️
Webhook sa odošle jedenkrát (bez retry), s timeoutom 5 sekúnd. Ak prijatých/doručených SMS prichádza viac naraz, odosielajú sa paralelne — každá ako samostatná požiadavka.

Hromadný multi-sender (Reseller)

POST /api/account/bulk-send.php

Odošle hromadné SMS cez SIM Hosting pričom každá správa môže mať vlastného odosielateľa (SIM kartu). Určené pre resellerov, ktorí prevádzkujú viacero SIM kariet pod jedným účtom. Autentifikácia prebieha cez účtový API kľúč (account_akey) — jeden kľúč pre celý účet, bez potreby prepínať medzi sender kľúčmi.

💡
Endpoint podporuje JSON aj XML — formát sa rozpozná automaticky podľa hlavičky Content-Type (application/json alebo application/xml). Odpoveď príde v rovnakom formáte. Maximálny počet správ v jednom requeste: 2 000.
🔒
Každý sender je overený oproti vašim vlastným SIM kontám — nie je možné odoslať správu pod číslom, ktoré vám nepatrí. Správy s neznámym senderom sú odmietnuté individuálne (ostatné sa odošlú normálne).

Parametre požiadavky

ParameterTypPopis
usernamestringrequired Prihlasovací email klientského účtu
account_akeystringrequired Účtový API kľúč (z portálu, sekcia API kľúč)
messagesarrayrequired Pole správ, max 2 000. Každý prvok obsahuje recipient, message a voliteľne sender.

Parametre každej správy (messages[])

ParameterTypPopis
recipientstringrequired Telefónne číslo príjemcu v medzinárodnom formáte (+421900123456)
messagestringrequired Text SMS. Diakritika bude automaticky normalizovaná.
senderstringoptional Číslo SIM karty odosielateľa (musí patriť vášmu účtu). Ak chýba, použije sa prvá/predvolená SIM karta.

Príklad požiadavky

JSON
XML
POST /api/account/bulk-send.php
Content-Type: application/json

{
  "username":     "vas@email.sk",
  "account_akey": "vas-uctovy-api-kluc",
  "messages": [
    {
      "recipient": "+421900111222",
      "sender":    "421947932736",
      "message":   "Dobry den, vasa objednavka je pripravena."
    },
    {
      "recipient": "+421900333444",
      "sender":    "421948700708",
      "message":   "Upomienka: termin stretnutia zajtra o 10:00."
    },
    {
      "recipient": "+421900555666",
      "message":   "Tato sprava ide cez predvoleneho sendera."
    }
  ]
}
POST /api/account/bulk-send.php
Content-Type: application/xml

<?xml version="1.0" encoding="UTF-8"?>
<request>
  <credential>
    <username>vas@email.sk</username>
    <account_akey>vas-uctovy-api-kluc</account_akey>
  </credential>
  <messages>
    <message>
      <recipient>+421900111222</recipient>
      <sender>421947932736</sender>
      <text>Dobry den, vasa objednavka je pripravena.</text>
    </message>
    <message>
      <recipient>+421900333444</recipient>
      <sender>421948700708</sender>
      <text>Upomienka: termin stretnutia zajtra o 10:00.</text>
    </message>
  </messages>
</request>

Odpoveď (úspech)

JSON
XML
200 OK
{
  "status":  "OK",
  "sent":    2,
  "failed":  1,
  "results": [
    { "recipient": "+421900111222", "sender": "421947932736", "status": "OK",  "idsms": 12345 },
    { "recipient": "+421900333444", "sender": "421948700708", "status": "OK",  "idsms": 12346 },
    { "recipient": "+421900555666", "sender": "421947932736", "status": "ERR", "msg": "Nedostatok kreditu" }
  ]
}
200 OK
<?xml version="1.0" encoding="UTF-8"?>
<response>
  <status>OK</status>
  <sent>2</sent>
  <failed>1</failed>
  <results>
    <result><recipient>+421900111222</recipient><sender>421947932736</sender><status>OK</status><idsms>12345</idsms></result>
    <result><recipient>+421900333444</recipient><sender>421948700708</sender><status>OK</status><idsms>12346</idsms></result>
    <result><recipient>+421900555666</recipient><sender>421947932736</sender><status>ERR</status><msg>Nedostatok kreditu</msg></result>
  </results>
</response>

SIM Management API (Reseller)

POST /api/account/sim.php

Programová správa SIM kont — vytváranie, zobrazovanie, úprava a mazanie. Určené pre resellerov, ktorí distribuujú SIM karty vlastným klientom a potrebujú tento proces automatizovať. Bez limitu počtu SIM kont (limit 10 platí len pre samoregistráciu z portálu).

💡
Autentifikácia prebieha rovnakým účtovým API kľúčom (account_akey) ako pri hromadnom odosielaní SMS. Kľúč nájdete v portáli v sekcii 🔑 API kľúč.
⚠️
Endpoint podporuje JSON aj XML — formát sa rozpozná automaticky podľa hlavičky Content-Type. Odpoveď príde v rovnakom formáte ako request.

Prehľad akcií

actionPopisKľúčové parametre
listZoznam všetkých SIM kont vrátane akey
createVytvorenie jedného alebo viacerých SIM kont, vráti akeysims[]
updateZmena čísla, ceny, stavu alebo typu transmitterasim_id
deleteZmazanie SIM kontasim_id

Spoločné parametre každého requestu

ParameterTypPopis
usernamestringrequiredPrihlasovací email klientského účtu
account_akeystringrequiredÚčtový API kľúč (z portálu, sekcia API kľúč)
actionstringrequiredlist / create / update / delete

SIM Management — list

Vráti zoznam všetkých SIM kont priradených k účtu, vrátane ich akey (potrebné pre nastavenie Android appky).

JSON
XML
{
  "username":     "vas@email.sk",
  "account_akey": "vas-uctovy-api-kluc",
  "action":       "list"
}
<?xml version="1.0" encoding="UTF-8"?>
<request>
  <credential>
    <username>vas@email.sk</username>
    <account_akey>vas-uctovy-api-kluc</account_akey>
  </credential>
  <action>list</action>
</request>
200 OK
{
  "status": "OK",
  "count":  2,
  "sims": [
    { "id": 41, "myphone": "421947932736", "sim_price": 0.008, "active": 1, "self_hosted": 1, "akey": "a1b2c3..." },
    { "id": 42, "myphone": "421948700708", "sim_price": 0.010, "active": 1, "self_hosted": 0, "akey": "d4e5f6..." }
  ]
}

SIM Management — create

Vytvorí jedno alebo viacero SIM kont naraz. Pre každé úspešne vytvorené konto vráti vygenerovaný akey — ten je potrebné zadať do Android appky.

Parametre každého záznamu v sims[]

ParameterTypPopis
myphonestringrequiredČíslo SIM karty — len číslice, medzinárodný formát bez + (napr. 421900123456)
self_hostedintoptional1 = Klient transmitter — appka na telefóne klienta (default); 0 = Server transmitter — SIM karta na vašom serveri
sim_pricefloatoptionalCena za SMS v EUR. Default 0.008.
activeintoptional1 = aktívna (default), 0 = neaktívna
contact_emailstringoptionalKontaktný email pre notifikácie. Default = email účtu.
curlstringoptionalWebhook URL pre server transmitter (self_hosted=0) — prijaté SMS aj stav doručenia, pozri sekciu Webhook.
JSON
XML
{
  "username":     "vas@email.sk",
  "account_akey": "vas-uctovy-api-kluc",
  "action":       "create",
  "sims": [
    {
      "myphone":    "421900111222",
      "self_hosted": 1,
      "sim_price":  0.008
    },
    {
      "myphone":       "421900333444",
      "self_hosted":   0,
      "sim_price":     0.010,
      "contact_email": "klient@example.sk",
      "curl":          "https://vas-server.sk/callback"
    }
  ]
}
<?xml version="1.0" encoding="UTF-8"?>
<request>
  <credential>
    <username>vas@email.sk</username>
    <account_akey>vas-uctovy-api-kluc</account_akey>
  </credential>
  <action>create</action>
  <sims>
    <sim>
      <myphone>421900111222</myphone>
      <self_hosted>1</self_hosted>
      <sim_price>0.008</sim_price>
    </sim>
    <sim>
      <myphone>421900333444</myphone>
      <self_hosted>0</self_hosted>
      <sim_price>0.010</sim_price>
      <curl>https://vas-server.sk/callback</curl>
    </sim>
  </sims>
</request>
200 OK
{
  "status":  "OK",
  "created": 2,
  "failed":  0,
  "results": [
    { "myphone": "421900111222", "status": "OK", "id": 42, "akey": "a1b2c3d4...", "self_hosted": 1, "sim_price": 0.008, "active": 1 },
    { "myphone": "421900333444", "status": "OK", "id": 43, "akey": "e5f6g7h8...", "self_hosted": 0, "sim_price": 0.010, "active": 1 }
  ]
}

SIM Management — update

Zmení údaje existujúceho SIM konta. Stačí poslať len polia, ktoré chcete zmeniť — ostatné zostanú nezmenené.

ParameterTypPopis
sim_idintrequiredID SIM konta (z list alebo create)
myphonestringoptionalNové číslo SIM karty
sim_pricefloatoptionalNová cena za SMS
activeintoptional1 = aktivovať, 0 = deaktivovať
self_hostedintoptional0 = Server, 1 = Klient
curlstringoptionalNová callback URL
contact_emailstringoptionalNový kontaktný email
JSON
XML
{
  "username":     "vas@email.sk",
  "account_akey": "vas-uctovy-api-kluc",
  "action":       "update",
  "sim_id":       42,
  "active":       0,
  "sim_price":    0.012
}
<?xml version="1.0" encoding="UTF-8"?>
<request>
  <credential>
    <username>vas@email.sk</username>
    <account_akey>vas-uctovy-api-kluc</account_akey>
  </credential>
  <action>update</action>
  <sim_id>42</sim_id>
  <active>0</active>
  <sim_price>0.012</sim_price>
</request>
200 OK
{
  "status":      "OK",
  "id":          42,
  "myphone":     "421900111222",
  "sim_price":   0.012,
  "active":      0,
  "self_hosted": 1
}

SIM Management — delete

Natrvalo zmaže SIM konto. Táto akcia je nevratná.

⚠️
Po zmazaní SIM konta prestane fungovať Android appka s príslušným akey. Všetky SMS v odosielacej fronte pre toto konto budú tiež zmazané.
ParameterTypPopis
sim_idintrequiredID SIM konta na zmazanie
JSON
XML
{
  "username":     "vas@email.sk",
  "account_akey": "vas-uctovy-api-kluc",
  "action":       "delete",
  "sim_id":       42
}
<?xml version="1.0" encoding="UTF-8"?>
<request>
  <credential>
    <username>vas@email.sk</username>
    <account_akey>vas-uctovy-api-kluc</account_akey>
  </credential>
  <action>delete</action>
  <sim_id>42</sim_id>
</request>
200 OK
{
  "status":     "OK",
  "deleted_id": 42,
  "myphone":    "421900111222"
}

Príklad: PHP

SMS Brána — jedna SMS

<?php
$ch = curl_init('https://infosms.online/api/bulk/');
curl_setopt_array($ch, [
    CURLOPT_POST           => true,
    CURLOPT_POSTFIELDS     => json_encode([
        'user'    => 'vas@email.sk',
        'pass'    => 'vas-api-kluc',
        'numbers' => ['+421905123456'],
        'text'    => 'Vasa objednavka je pripravena.',
        'from'    => 'MojaFirma',
    ]),
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HTTPHEADER     => ['Content-Type: application/json'],
]);
$result = json_decode(curl_exec($ch), true);
curl_close($ch);
echo $result['status'] === 'OK' ? "Odoslaných: {$result['sent']}" : $result['msg'];

Reseller — SIM Management (create + list)

<?php
function simApi($action, $payload) {
    $ch = curl_init('https://infosms.online/api/account/sim.php');
    curl_setopt_array($ch, [
        CURLOPT_POST           => true,
        CURLOPT_POSTFIELDS     => json_encode(array_merge([
            'username'     => 'vas@email.sk',
            'account_akey' => 'vas-uctovy-api-kluc',
            'action'       => $action,
        ], $payload)),
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_HTTPHEADER     => ['Content-Type: application/json'],
    ]);
    $r = json_decode(curl_exec($ch), true);
    curl_close($ch);
    return $r;
}

// Vytvorenie dvoch SIM kont
$res = simApi('create', [
    'sims' => [
        ['myphone' => '421900111222', 'self_hosted' => 1],
        ['myphone' => '421900333444', 'self_hosted' => 1],
    ]
]);
foreach ($res['results'] as $s) {
    echo "{$s['myphone']} — akey: {$s['akey']}\n";
}

// Zoznam všetkých SIM kont
$list = simApi('list', []);
foreach ($list['sims'] as $s) {
    echo "{$s['myphone']} — active: {$s['active']}\n";
}

Reseller — hromadné multi-sender cez SIM Hosting

<?php
$ch = curl_init('https://infosms.online/api/account/bulk-send.php');
curl_setopt_array($ch, [
    CURLOPT_POST           => true,
    CURLOPT_POSTFIELDS     => json_encode([
        'username'     => 'vas@email.sk',
        'account_akey' => 'vas-uctovy-api-kluc',
        'messages'     => [
            ['recipient' => '+421900111222', 'sender' => '421947932736', 'message' => 'Text pre prveho.'],
            ['recipient' => '+421900333444', 'sender' => '421948700708', 'message' => 'Text pre druheho.'],
        ],
    ]),
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HTTPHEADER     => ['Content-Type: application/json'],
]);
$result = json_decode(curl_exec($ch), true);
curl_close($ch);
echo "Odoslaných: {$result['sent']}, chýb: {$result['failed']}";

Príklad: Python

import requests

# Odoslanie SMS cez InfoSMS.online API

url  = 'https://infosms.online/api/bulk/'
data = {
    'user':    'vas@email.sk',
    'pass':    'vas-api-kluc',
    'numbers': ['+421905123456'],
    'text':    'Vaša objednávka je pripravená.',
    'from':    'MojaFirma',
}

response = requests.post(url, json=data)
result   = response.json()

if result['status'] == 'OK':
    print(f"Odoslaných: {result['sent']}, zostatok: {result['credit']}")
else:
    print(f"Chyba: {result['msg']}")

Príklad: cURL

# Odoslanie SMS (SMS Brána)
curl -X POST https://infosms.online/api/bulk/ \
  -H "Content-Type: application/json" \
  -d '{"user":"vas@email.sk","pass":"vas-api-kluc","numbers":["+421905123456"],"text":"Test SMS","from":"MojaFirma"}'

# Reseller — hromadné multi-sender (JSON)
curl -X POST https://infosms.online/api/account/bulk-send.php \
  -H "Content-Type: application/json" \
  -d '{
    "username":     "vas@email.sk",
    "account_akey": "vas-uctovy-api-kluc",
    "messages": [
      {"recipient":"+421900111222","sender":"421947932736","message":"Text 1"},
      {"recipient":"+421900333444","sender":"421948700708","message":"Text 2"}
    ]
  }'

# Reseller — hromadné multi-sender (XML)
curl -X POST https://infosms.online/api/account/bulk-send.php \
  -H "Content-Type: application/xml" \
  -d '<?xml version="1.0"?><request><credential><username>vas@email.sk</username><account_akey>vas-uctovy-api-kluc</account_akey></credential><messages><message><recipient>+421900111222</recipient><sender>421947932736</sender><text>Text 1</text></message></messages></request>'

# Zostatok kreditu
curl "https://infosms.online/api/balance/?user=vas@email.sk&pass=vas-api-kluc"

Príklad: Node.js

// Odoslanie SMS cez InfoSMS.online API
// npm install node-fetch

import fetch from 'node-fetch';

const url  = 'https://infosms.online/api/bulk/';
const data = {
  user:    'vas@email.sk',
  pass:    'vas-api-kluc',
  numbers: ['+421905123456'],
  text:    'Vaša objednávka je pripravená.',
  from:    'MojaFirma',
};

const res    = await fetch(url, {
  method:  'POST',
  headers: { 'Content-Type': 'application/json' },
  body:    JSON.stringify(data),
});
const result = await res.json();

if (result.status === 'OK') {
  console.log(`Odoslaných: ${result.sent}, zostatok: ${result.credit}`);
} else {
  console.error(`Chyba: ${result.msg}`);
}