Pregled #

Svi endpointi su REST pozivi sa JSON odgovorima. Uspješan odgovor uvijek ima "success": true i podatke u "data" objektu; greška ima "success": false i "error" poruku.

Bazni URL Svi pozivi se šalju na HTTPS.
https://www.api.reseller.ba/v1/
Obavezno koristite www. Adresa bez www. vraća 301 preusmjerenje. Po standardu (RFC 7231) HTTP klijenti pri 301 pretvaraju POST u GET, pa zahtjev stigne kao GET i API odgovori Method not allowed. Use POST.

Isto vrijedi i za sandbox. Ako vaš klijent prati preusmjerenja, obavezno isključite tu opciju ili odmah koristite adresu s www.
Odakle vrijednosti parametara? Sve što šaljete u narudžbama dohvaćate iz kataloških endpointa: ekstenzije, cijene domena i dodatna polja koja ekstenzija traži iz price_list.php, hosting pakete (njihov uuid i dostupne cikluse) iz hosting_offer.php. Postojeće usluge i njihove uuid identifikatore dohvaćate iz my_domains.php i my_hosting.php.
Identifikacija isključivo UUID-om Sve usluge (domene, hosting) se u API pozivima identificiraju javnim uuid identifikatorom koji dobijete u odgovorima. Interni brojčani identifikatori ne postoje na API granici.

Autentikacija #

Svaki zahtjev se autentificira s dva headera koja idu zajedno kao par:

HeaderOpis
X-API-UUID UUID vašeg reseller naloga. Vidljiv u kontrolnoj tabli.
X-API-KEY Vaš personalni reseller API ključ, sa mogućnošću regeneracije.
GET https://www.api.reseller.ba/v1/price_list.php
X-API-UUID:   550e8400-e29b-41d4-a716-446655440000
X-API-KEY:    your_api_key
Izuzetak: provjera domene Jedino su za whois.php kredencijali opcionalni. Ako ih šaljete, i dalje idu kao par — slanje samo jednog headera vraća 401.
Sigurnosne napomene Svi API pozivi moraju ići sa server-side koda. Nikada ne izlažite X-API-KEY u frontend/JavaScript kodu. Sistem logira svaki pokušaj pristupa s neispravnim ključem.

Greške i limiti #

HTTP kodZnačenje
400Neispravan ulaz (nedostaje polje, pogrešan format) ili poslovna greška (npr. domena zauzeta, ciklus nedostupan, ekstenzija van ponude)
401Nedostajući ili neispravni kredencijali (X-API-UUID / X-API-KEY)
405Pogrešna HTTP metoda za endpoint
429Prekoračen rate limit
500Interna greška servera
502Pozadinski sistem privremeno nedostupan — pokušajte ponovo
Rate limiti (po IP adresi) Provjera domene (whois.php): 60 zahtjeva u minuti. Svi akcijski POST endpointi (narudžbe, transferi, produženja, promjena paketa, upravljanje uslugama, EPP, nameserveri, kontakti, promjena registranta): 30 zahtjeva u minuti po IP adresi. Prekoračenje vraća 429.
// Primjer greške
{
  "success": false,
  "error":   "Field \"package_uuid\" is required."
}

Sandbox #

Testno okruženje za razvoj integracije. Iste putanje i isti format odgovora kao produkcija, ali bez ikakvih stvarnih podataka i bez posljedica.

BASE https://www.sandbox.reseller.ba/v1

Iste putanje kao produkcija — samo zamijenite baznu adresu. Popis dostupnih endpointa je niže na ovoj stranici.

Kredencijali

Javni su i isti za sve — ne treba vam nalog:

X-API-UUID: 00000000-0000-4000-8000-000000000001
X-API-KEY:  sandbox_kljuc_za_testiranje_1234567

Kako se ponaša

PonašanjeOpis
Bez stanjaSandbox ne pamti ništa između zahtjeva.
Narudžbeorder_* vraćaju uspjeh, ali se narudžba ne izvršava. Ne kreira se predračun i ništa se ne naplaćuje.
Listemy_* uvijek vraćaju istu fiksnu listu. Naručena stavka se neće pojaviti u njoj.
ValidacijaIdentična produkcijskoj — možete testirati i neuspješne puteve (neispravan uuid, privatna IP adresa, nepodržan ciklus, nepostojeći paket).
Cjenovni nivoSandbox nalog je na nivou 2 (Advanced).
Sandbox se ne može zamijeniti s produkcijom Svaki odgovor nosi "sandbox": true i polje sandbox_napomena, a odgovori na narudžbu i dodatno sandbox_upozorenje. U HTTP zaglavljima stoji X-Sandbox: true.

Primjer

POST https://www.sandbox.reseller.ba/v1/order_license.php
Content-Type: application/json; charset=utf-8
X-API-UUID:   00000000-0000-4000-8000-000000000001
X-API-KEY:    sandbox_kljuc_za_testiranje_1234567

{
  "package_uuid": "aaaaaaaa-0000-4000-8000-000000000001",
  "cycle": "monthly",
  "ip": "185.99.1.50"
}
// Odgovor
{
  "success": true,
  "sandbox": true,
  "sandbox_napomena": "Testno okruženje (sandbox). Podaci su fiktivni…",
  "data": {
    "sandbox_upozorenje": "SANDBOX: narudžba je simulirana i NIJE izvršena…",
    "proforma_invoice": { "number": "SB-2026-04128", "total": "61.51" },
    "order":  { "order_number": "RSL-4820193756", "status": 1 },
    "license":   { "name": "cPanel Admin Cloud", "ip": "185.99.1.50", "status": 1 }
  }
}

Dostupni endpointi

MetodaPutanja
GET/v1/price_list.php
GET/v1/whois.php
POST/v1/order_domain.php
POST/v1/transfer_domain.php
POST/v1/renew_domain.php
POST/v1/epp_code.php
GET POST/v1/nameservers.php
GET POST/v1/contacts.php
GET POST/v1/promijeni_registranta.php
GET/v1/my_domains.php
GET/v1/hosting_offer.php
POST/v1/order_hosting.php
GET/v1/my_hosting.php
POST/v1/renew_hosting.php
POST/v1/upgrade_hosting.php
POST/v1/manage_hosting.php
GET/v1/license_offer.php
POST/v1/order_license.php
GET/v1/my_licenses.php
POST/v1/renew_license.php
POST/v1/manage_license.php
GET/v1/dedicated_offer.php
POST/v1/order_dedicated.php
GET/v1/my_dedicated.php
POST/v1/renew_dedicated.php
POST/v1/manage_dedicated.php
GET/v1/my_profile.php
GET/v1/credit.php
GET/v1/my_documents.php
GET POST/v1/settings.php
Testiranje WHMCS modula na sandboxu U modulima je API baza fiksna. Za testiranje privremeno izmijenite funkciju resellerba_*_apiBase() da vraća https://www.sandbox.reseller.ba/v1 — i vratite je prije prelaska na produkciju.

Cjenovnik domena #

GET /v1/price_list.php

Vraća sve domenske ekstenzije iz ponude vaše platforme sa cijenama registracije i produženja za vaš cjenovni nivo, plus valutu. Ovo je izvor vrijednosti za registraciju i transfer domena, kao i dodatnih polja koja pojedine ekstenzije traže.

Opcioni query parametar ?lang=bs|en|es određuje jezik naziva i opisa dodatnih polja. Bez njega se koristi zadani jezik platforme.

Primjer zahtjeva

GET https://www.api.reseller.ba/v1/price_list.php
X-API-UUID:   550e8400-e29b-41d4-a716-446655440000
X-API-KEY:    your_api_key

Odgovor

{
  "success": true,
  "data": {
    "level": 2,
    "currency": "BAM",
    "decimal_separator": ".",
    "total_count": 42,
    "domains": [
      {
        "extension": ".ba",
        "featured": true,
        "registration_price": "29.90",
        "renewal_price": "29.90",
        "registration_periods": {
          "1": "29.90",
          "2": "55.00",
          "5": "125.00"
        },
        "custom_fields": [
          {
            "slot": 1,
            "required": true,
            "type": "check",
            "name": "Suglasnost s uvjetima registracije",
            "description": "Potvrdite kvačicom da ste pročitali i prihvatili Pravilnik o registraciji .ba domena.",
            "validation": "^(true)$"
          },
          {
            "slot": 2,
            "required": true,
            "type": "input",
            "name": "Svrha registracije domene",
            "description": "Ukratko opišite za šta će se domena koristiti (najmanje 5 znakova).",
            "validation": "^.{5,}$"
          }
        ]
      }
    ]
  }
}
Registracijski periodi po ekstenziji Objekat registracijski_periodi sadrži samo periode koji se nude za tu ekstenziju — ključ je broj godina, vrijednost ukupna cijena za cijeli period. Period kojeg nema u objektu se ne može naručiti (u primjeru gore: 3 i 4 godine nisu dostupne). Vrijednost period pri registraciji domene mora biti jedan od ovih ključeva.
Dodatna polja po ekstenziji Niz custom_polja je prisutan samo kod ekstenzija koje dodatna polja traže; kod ostalih je prazan. Svako navedeno polje je obavezno — bez njega registracija domene vraća grešku.

slot je redni broj (1–6) i šalje se natrag kao ključ u objektu custom_polja pri narudžbi. Naziv je tekst za prikaz i može se promijeniti, slot ne može — vežite se za slot.

vrsta može biti check (kvačica; vrijednost "true"), input (slobodan tekst) ili dropdown. Kod dropdowna dolazi i niz opcije s dozvoljenim vrijednostima.

validacija je regularni izraz bez delimitera, isti onaj kojim server provjerava vrijednost. Šalje se da unos možete provjeriti prije slanja i korisniku javiti grešku odmah.

Ponuda hostinga #

GET /v1/hosting_offer.php

Vraća sve hosting pakete iz ponude vaše platforme sa cijenama za vaš cjenovni nivo po svim dostupnim ciklusima naplate. Iz ovog odgovora uzimate uuid paketa i naziv ciklusa za narudžbu hostinga.

Primjer zahtjeva

GET https://www.api.reseller.ba/v1/hosting_offer.php
X-API-UUID:   550e8400-e29b-41d4-a716-446655440000
X-API-KEY:    your_api_key

Odgovor (skraćeno)

{
  "success": true,
  "data": {
    "level": 2,
    "currency": "BAM",
    "total_count": 6,
    "packages": [
      {
        "uuid": "3f2a1b6c-9d4e-4f70-8a21-5e6d7c8b9a01",
        "name": "Business",
        "disk_space": "10 GB",
        "bandwidth": "Neograničen",
        "requires_domain": true,
        "prices": {
          "monthly": "9.90",
          "annually": "99.00"
        }
      }
    ]
  }
}
Ciklus koji nije u odgovoru se ne nudi U cijene objektu svakog paketa nalaze se samo ciklusi koji su dostupni za taj paket i vaš nivo. Slanje narudžbe s ciklusom kojeg nema u ponudi paketa vraća grešku — cijena se nikad ne izmišlja.

Provjeri dostupnost domene #

GET /v1/whois.php

Provjerava da li je tražena domena dostupna za registraciju. Podržane su samo ekstenzije koje se nalaze u reseller ponudi za vašu platformu (vidi cjenovnik). Pokušaj provjere ekstenzije izvan ponude vraća grešku.

GET parametri

ParametarTipObavezanOpis
domain string DA Puno ime domene uključujući ekstenziju (npr. mojafirma.com, example.co.ba)
format string NE text = tekstualni odgovor za WHMCS (vidi ispod). Bez parametra: JSON.
Kredencijali su opcionalni Ako šaljete kredencijale, X-API-UUID i X-API-KEY idu zajedno kao par — slanje samo jednog vraća 401.

Primjer zahtjeva

GET https://www.api.reseller.ba/v1/whois.php?domain=mojafirma.com

Odgovor

{
  "success": true,
  "data": {
    "domain":    "mojafirma.com",
    "extension": ".com",
    "available": true
  }
}

Tekstualni format (WHMCS whois.json)

Sa parametrom format=text endpoint vraća čisti tekst — namijenjen za WHMCS whois.json "https://" lookup. Odgovor je uvijek HTTP 200 (WHMCS poredi tijelo, ne HTTP kod):

STATUS: AVAILABLE
STATUS: REGISTERED
STATUS: ERROR: <poruka>

Primjer whois.json unosa za .ba ekstenzije (nemaju javni port-43 whois server):

{
  "extensions": ".ba,.edu.ba",
  "uri":        "https://www.api.reseller.ba/v1/whois.php?format=text&domain=",
  "available":  "STATUS: AVAILABLE"
}

Registruj domenu #

POST /v1/order_domain.php

Kreira narudžbu registracije domene. Domena mora biti dostupna (sistem radi provjeru) i ekstenzija mora biti u ponudi vaše platforme. Cijena se obračunava prema vašem cjenovnom nivou.

POST JSON polja

PoljeTipObavezanOpis
domainstringDAPuno ime domene (npr. primjer.org.ba)
periodintegerDABroj godina registracije: 1–5. Dozvoljen je samo period koji postoji u registracijski_periodi za tu ekstenziju u cjenovniku — svaki period ima svoju ukupnu cijenu. Nedostupan period vraća grešku.
registrantobjectDAPodaci registranta — vidi Registrant podaci
nameserversarrayDANajmanje 2, najviše 5 hostname-ova. Svaki mora biti različit. Registar odbija domenu s manje od dva nameservera, pa se narudžba bez njih ne prihvata.
custom_poljaobject*Obavezno ako ekstenzija traži dodatna polja — vidi custom_polja u cjenovniku. Ključ je slot kao string, vrijednost tekst.

Primjer zahtjeva

POST https://www.api.reseller.ba/v1/order_domain.php
Content-Type: application/json; charset=utf-8
X-API-UUID:   550e8400-e29b-41d4-a716-446655440000
X-API-KEY:    your_api_key

{
  "domain": "primjer.org.ba",
  "period": 1,
  "registrant": {
    "is_company": 0,
    "first_name": "Amir",
    "last_name": "Amirović",
    "address": "Ulica bb",
    "city": "Sarajevo",
    "postal_code": "71000",
    "country": "BA",
    "email": "amir@primjer.ba",
    "phone": "+38761111222"
  },
  "nameservers": ["ns1.primjer.ba", "ns2.primjer.ba"],
  "custom_fields": {
    "1": "true",
    "2": "Prezentacija firme i kontakt stranica"
  }
}
Nameserveri su obavezni Potrebna su najmanje dva i moraju biti različiti. Provjera se radi prije kreiranja narudžbe i predračuna, pa narudžba bez njih ne nastane i ništa se ne naplaćuje. Zadani nameserveri se ne podmeću — nameserver koji niste zadali se ne izmišlja.
Dodatna polja Prije narudžbe pročitajte custom_polja za tu ekstenziju iz price_list.php. Svako aktivno polje je obavezno; vrijednost mora zadovoljiti validacija regex, a kod dropdowna biti iz niza opcije.

Kod polja vrste check šalje se tekst "true" (ili JSON true, koji server pretvara u isto).

Vrijednost poslana za slot koji ta ekstenzija ne traži se odbija greškom — to je znak da radite po zastarjeloj definiciji polja.

Odgovor

Odgovor je ugniježđen: data sadrži četiri objekta — order, domain, proforma_invoice i currency. UUID narudžbe je data.order.uuid, a UUID domene data.domain.uuid — ne data.uuid.

{
  "success": true,
  "data": {
    "order": {
      "uuid": "945bda1a-2a36-4f7e-acfd-4c3cfd158a99",
      "order_number": "RSL-3430439926",
      "status": 1
    },
    "domain": {
      "uuid": "4dd69549-68df-4cf7-9bd5-dc73b38acc8d",
      "domain": "primjer.ba",
      "extension": ".ba",
      "registration_period": 1,
      "level": 2,
      "price": "58.67",
      "status": 1,
      "nameservers": ["ns1.primjer.ba", "ns2.primjer.ba"],
      "custom_fields": {
        "1": "true",
        "2": "Prezentacija firme"
      }
    },
    "proforma_invoice": {
      "proforma_number": "1564",
      "subtotal": "50.15",
      "vat_amount": "8.52",
      "total": "58.67",
      "currency": "KM",
      "status": "nije_placen"
    },
    "currency": {
      "code": "BAM",
      "prefix": "",
      "suffix": "KM",
      "position": "after",
      "space": 1,
      "rate": "1.000000"
    },
    "decimal_separator": ","
  }
}
Česta greška data.uuid ne postoji. Postoje data.order.uuid (narudžba) i data.domain.uuid (domena) — to su dva različita objekta i dva različita UUID-a. Za praćenje domene kroz my_domains.php koristi se data.domain.uuid.
custom_fields Prisutno samo kad ekstenzija traži dodatna polja. Ključ je slot kao string, isti onaj koji vraća price_list.php.

Transfer domene #

POST /v1/transfer_domain.php

Kreira narudžbu transfera domene ka vašoj platformi. Domena mora biti registrovana (za slobodnu domenu koristite registraciju). Cijena transfera je cijena registracije za vaš nivo i uključuje godinu produženja.

POST JSON polja

PoljeTipObavezanOpis
domainstringDAPuno ime domene
periodintegerDAIsključivo 1
eppcodestringDAEPP / authInfo kod trenutnog registrara
registrantobjectDAVidi Registrant podaci
nameserversarrayNEBez njih domena zadržava postojeće. Ako se šalju: najmanje 2, najviše 5
custom_poljaobjectzavisno od ekstenzijeKao kod registracije

Tok

Nakon plaćanja transfer se pokreće kod registra i domena dobija status 2 (čeka transfer). Kad trenutni registrar potvrdi transfer, domena prelazi u status 3 (aktivna).

.ba domene Transfer .ba domene se izvršava odmah nakon plaćanja (status 3), a domena se u istom koraku produžava za godinu dana — cijena transfera uključuje tu godinu. Novi datum isteka je onaj koji vrati registar.

Produži domenu #

POST /v1/renew_domain.php

Kreira predračun za produženje domene na period na koji je zakupljena. Domena se identificira uuid-om iz my_domains.php. Ako je uključena automatska obnova i ima kredita, predračun se naplaćuje iz kredita i domena se produžava kod registra (u roku od nekoliko minuta).

POST https://www.api.reseller.ba/v1/renew_domain.php
Content-Type: application/json; charset=utf-8
X-API-UUID:   550e8400-e29b-41d4-a716-446655440000
X-API-KEY:    your_api_key

{
  "uuid": "9c1f4a2e-7b3d-4e58-a690-1f2e3d4c5b6a"
}

Odgovor

{
  "success": true,
  "data": {
    "proforma_invoice": { "proforma_number": "1043", "total": "45.00", "currency": "KM", "status": "nije_placen" },
    "domain": {
      "uuid": "9c1f4a2e-…", "domain": "primjer.ba", "period_years": 1,
      "post_expiry_period": "redovno", "renewal_price": "45.00",
      "grace_fee": "0.00", "redemption_fee": "0.00",
      "expires_at": "2026-10-02", "new_expires_at": "2027-10-02"
    },
    "auto_renewal": { "enabled": true, "message": "…" }
  }
}

post_expiry_period: redovno, grace ili redemption. U grace i redemption periodu naknada ide kao zasebna stavka predračuna. Obrisana (status 10), suspendovana i domena na čekanju se ne mogu obnoviti (409). Ako za domenu već postoji neplaćen predračun za obnovu, odgovor je 409 s njegovim brojem.


EPP kod #

POST /v1/epp_code.php

Šalje EPP (authInfo) kod domene na email registranta. Domena se identificira uuid-om. Kod se iz sigurnosnih razloga nikad ne vraća u API odgovoru.

{
  "uuid": "9c1f4a2e-7b3d-4e58-a690-1f2e3d4c5b6a"
}

Nameserveri domene #

GET POST /v1/nameservers.php

GET ?uuid=<uuid> vraća trenutne nameservere domene. POST mijenja nameservere na registru.

POST JSON polja

PoljeTipObavezanOpis
uuidstringDAUUID domene
nameserversarrayDALista do 5 hostname-ova
{
  "uuid": "9c1f4a2e-7b3d-4e58-a690-1f2e3d4c5b6a",
  "nameservers": ["ns1.primjer.ba", "ns2.primjer.ba"]
}

Kontakti domene #

GET POST /v1/contacts.php

GET ?uuid=<uuid> vraća kontakte domene (Registrant, Admin, Tech). POST mijenja kontakte na registru — besplatno. Mogu se poslati blokovi registrant, admin i tech (bar jedan). Kod registranta se mijenjaju adresa, grad, poštanski broj, regija, država, email i telefon; ime i naziv firme se ovim putem ne mijenjaju — to je promjena vlasnika domene i ide kroz promijeni_registranta.php.

{
  "uuid": "9c1f4a2e-7b3d-4e58-a690-1f2e3d4c5b6a",
  "registrant": { ... kontakt polja, bez imena i firme ... },
  "admin": { ... kontakt polja ... },
  "tech":  { ... kontakt polja ... }
}

Kontakt polja

name, email_address, address1, city, state_province, postal_code, country (ISO-2), phone (format +387.61123456). Za admin i tech su name i email_address obavezni; kod registranta se name ignoriše.


Promjena vlasnika (registranta) domene #

GET POST /v1/promijeni_registranta.php

Naplaćuje se. Promjena vlasnika znači promjenu naziva firme (registrant je pravno lice) odnosno imena i prezimena (registrant je fizičko lice). Uz to se šalju i ostali podaci novog vlasnika. Izmjena samo adrese, emaila, telefona i slično je besplatna i ide kroz contacts.php — ovaj endpoint je odbija.

Dostupno samo za ekstenzije koje podržavaju promjenu vlasnika i imaju cijenu promjene za vaš nivo; za ostale odgovor je 409.

GET ?uuid=<uuid domene>

Vraća trenutnog registranta (sa registra), cijenu promjene (change_price) i polje billable_change: naziv_firme ili ime_prezime — koje se polje mora promijeniti. Ako već postoji zahtjev koji čeka plaćanje, vraća pending_request: true i podatke tog zahtjeva.

POST JSON polja

PoljeObavezanOpis
uuidDAUUID domene
kompanijapravno lice: DANovi naziv firme — mora se razlikovati od trenutnog
ime, prezimefizičko lice: DANovo ime i prezime — moraju se razlikovati od trenutnih. Kod pravnog lica: kontakt osoba (opciono)
adresa, grad, zip, regija, drzavaDA (osim zip, regija)Adresa novog vlasnika (drzava = ISO-2)
telefon, emailDAKontakt novog vlasnika

POST kreira zahtjev i predračun. Nakon plaćanja promjena se automatski primjenjuje kod registra. Neplaćen zahtjev otkazujete s {"uuid": "…", "akcija": "otkazi"}.


Naruči hosting #

POST /v1/order_hosting.php

Kreira narudžbu hosting paketa i pripadajući predračun. Paket i ciklus dohvaćate iz hosting_offer.php — narudžba prolazi samo za ciklus koji je u ponudi tog paketa.

POST JSON polja

PoljeTipObavezanOpis
package_uuidstringDAuuid paketa iz ponude hostinga
cyclestringDANaziv ciklusa — vidi Ciklusi naplate
domainstringNE*Domena usluge. Obavezna ako paket ima zahtjeva_domenu: true.

Primjer zahtjeva

POST https://www.api.reseller.ba/v1/order_hosting.php
Content-Type: application/json; charset=utf-8
X-API-UUID:   550e8400-e29b-41d4-a716-446655440000
X-API-KEY:    your_api_key

{
  "package_uuid": "3f2a1b6c-9d4e-4f70-8a21-5e6d7c8b9a01",
  "cycle": "godisnja",
  "domain": "primjer.ba"
}

Odgovor

Odgovor je ugniježđen: data sadrži order, service, proforma_invoice, auto_activation i currency. UUID usluge je data.service.uuid.

{
  "success": true,
  "data": {
    "order": {
      "uuid": "e7a0565d-a746-456e-8938-68412977e573",
      "order_number": "RSL-3036365111",
      "status": 1
    },
    "service": {
      "uuid": "c3c3b3f0-db2f-42cc-a195-99e6a97aedb8",
      "package": "START HOSTING",
      "cycle": "annually",
      "cycle_months": 12,
      "domain": "primjer.ba",
      "level": 1,
      "price": "54.40",
      "status": 1,
      "dedicated_ip": false,
      "package_price": "54.40",
      "dedicated_ip_price": null
    },
    "proforma_invoice": {
      "proforma_number": "1564",
      "subtotal": "46.50",
      "vat_amount": "7.90",
      "total": "54.40",
      "currency": "KM",
      "status": "nije_placen"
    },
    "auto_activation": {
      "enabled": true,
      "message": "Automatska aktivacija: dostupan kredit pokriva iznos predračuna."
    },
    "currency": {
      "prefix": "",
      "suffix": "KM",
      "position": "after",
      "space": 1
    },
    "decimal_separator": ","
  }
}
Česta greška data.uuid ne postoji. UUID usluge je data.service.uuid, a UUID narudžbe data.order.uuid.
Dedicirana IP Kad je naručena, price UKLJUČUJE i nju — na dokumentu je jedna stavka, ne dvije. package_price i dedicated_ip_price su informativni razdvojeni iznosi.

Moje hosting usluge #

GET /v1/my_hosting.php

Lista vaših hosting usluga. Parametri: ?limit=50&offset=0 (opcionalno) ili ?uuid=<uuid> za pojedinačnu uslugu. Vraća za svaku uslugu: uuid, paket, domenu, status, cijenu, ciklus, datume, potrošnju diska/prometa i broj narudžbe.

Status uslugeZnačenje
1Na čekanju
2U obradi
3Aktivna

Ponuda licenci #

GET /v1/license_offer.php

Kompletna ponuda licenci s cijenama prema vašem cjenovnom nivou. Licence su grupisane u kategorije, a svaka nosi uuid koji koristite pri narudžbi.

Primjer zahtjeva

GET https://www.api.reseller.ba/v1/license_offer.php
X-API-UUID: 550e8400-e29b-41d4-a716-446655440000
X-API-KEY:  your_api_key

Odgovor (skraćeno)

{
  "success": true,
  "data": {
    "level": 2,
    "currency": { "code": "BAM", "suffix": "KM", "position": "after", "space": 1 },
    "decimal_separator": ",",
    "categories": [ { "name": "cPanel/WHM" }, { "name": "CloudLinux" } ],
    "total_count": 24,
    "licenses": [
      {
        "uuid":         "3f2a1b6c-9d4e-4f70-8a21-5e6d7c8b9a01",
        "name":        "cPanel Admin Cloud",
        "category":   "cPanel/WHM",
        "host_type":    "virtual",
        "max_accounts": 5,
        "term_months": 1,
        "featured":    true,
        "prices":       { "monthly": "61.51" }
      }
    ]
  }
}
Polje licenceTipOpis
uuidstringIdentifikator za narudžbu
nazivstringNaziv licence
kategorijastringGrupa kojoj licenca pripada
host_typestringvirtual ili dedicated — tip servera za koji licenca vrijedi
max_accountsint|nullMaksimalan broj naloga; null = neograničeno
cijene.mjesecnastringCijena za vaš nivo, mjesečno
Licence su isključivo mjesečne Licenca se zakupljuje na mjesec dana i obnavlja svaki mjesec. Duži ciklusi ne postoje — polje cycle pri narudžbi prima samo monthly.

Naruči licencu #

POST /v1/order_license.php

Kreira narudžbu licence i pripadajući predračun. Licenca se vezuje za IP adresu servera koju šaljete u zahtjevu — bez nje se ne može aktivirati.

POST JSON polja

PoljeTipObavezanOpis
package_uuidstringDAuuid licence iz ponude licenci
cyclestringDAUvijek monthly — licence se zakupljuju samo mjesečno
ipstringDAJavna IPv4 ili IPv6 adresa servera na koji se licenca vezuje
Ograničenja IP adrese Adresa mora biti javna — privatni i rezervisani opsezi (10.x, 192.168.x, 172.16–31.x, 127.x) se odbijaju s 400. Na istu IP adresu ne može ići druga licenca; pokušaj vraća 409.

Primjer zahtjeva

POST https://www.api.reseller.ba/v1/order_license.php
Content-Type: application/json; charset=utf-8
X-API-UUID:   550e8400-e29b-41d4-a716-446655440000
X-API-KEY:    your_api_key

{
  "package_uuid": "3f2a1b6c-9d4e-4f70-8a21-5e6d7c8b9a01",
  "cycle": "monthly",
  "ip": "185.99.1.50"
}

Odgovor

{
  "success": true,
  "data": {
    "proforma_invoice": { "number": "P-2026-00412", "total": "61.51", "currency": "KM", "status": "nije_placen" },
    "order":  { "uuid": "…", "order_number": "RSL-0000100042", "status": 1 },
    "license":   { "uuid": "…", "name": "cPanel Admin Cloud", "ip": "185.99.1.50", "status": 1 }
  }
}

Licenca ostaje u statusu Na čekanju dok se predračun ne plati. Nakon uplate se aktivira i dobiva licenseid — stanje pratite kroz my_licenses.php.


Moje licence #

GET /v1/my_licenses.php

Lista vaših licenci. Parametri: ?limit=50&offset=0 (opcionalno) ili ?uuid=<uuid> za pojedinačnu licencu.

PoljeTipOpis
uuidstringIdentifikator licence
nazivstringNaziv licence u trenutku kupovine
kategorijastringGrupa kojoj licenca pripada
statusintVidi tabelu statusa ispod
greskastring|nullRazlog neuspjeha — popunjeno samo kod statusa 4
ipstringIP adresa na koju je licenca vezana
licenseidstring|nullBroj licence kod proizvođača; null dok nije aktivirana
hostnamestring|nullHostname servera, ako je poznat
cijenastringMjesečna cijena po kojoj je prodana
datum_aktivacijestring|nullDatum i vrijeme aktivacije
datum_istekastring|nullDatum isteka tekućeg mjeseca
broj_narudzbestring|nullBroj narudžbe kojom je licenca kupljena
Status licenceZnačenje
1Na čekanju — narudžba zaprimljena, čeka se uplata
3Aktivna
4Neuspjela — razlog u polju greska
5Istekla
7Otkazana
9Suspendirana

Produži hosting uslugu #

POST /v1/renew_hosting.php

Kreira predračun za sljedeći period usluge. Usluga se produžava ciklusom koji već ima — ciklus se pri obnovi ne mijenja.

POST JSON polja

PoljeTipObavezanOpis
uuidstringDAuuid usluge iz Moje hosting usluge

Cijena se ne šalje — određuje je sistem prema vašem cjenovnom nivou i ciklusu koji usluga ima.

Primjer zahtjeva

POST https://www.api.reseller.ba/v1/renew_hosting.php
Content-Type: application/json; charset=utf-8
X-API-UUID:   550e8400-e29b-41d4-a716-446655440000
X-API-KEY:    your_api_key

{
  "uuid": "7c1e9a2b-4d38-4f61-9b02-1a5c8e7d3f40"
}

Odgovor

{
  "success": true,
  "data": {
    "proforma_invoice": { "proforma_number": "P-2026-00518", "total": "19.56", "currency": "KM", "status": "nije_placen" },
    "service": {
      "uuid": "7c1e9a2b-…", "package": "BUSINESS HOSTING", "domain": "primjer.ba",
      "cycle_months": 1, "expires_at": "2026-08-20", "new_period_until": "2026-09-19"
    },
    "auto_activation": { "enabled": true, "message": "Automatska obnova: dostupan kredit…" }
  }
}

Kada je obnova moguća

Stanje uslugeObnova
AktivnaMoguća
Istekla, unutar roka za obnovuMoguća
Istekla, rok prošao409 — potrebna ponovna aktivacija
Suspendirana409 — prvo reaktivirajte uslugu
Otkazana409
Na čekanju (još nije aktivirana)409
Postojeći neplaćeni predračun Ako za uslugu već postoji neplaćen predračun za obnovu, novi se ne kreira. Odgovor je 409 s brojem postojećeg predračuna — platite njega ili sačekajte obradu.

Promjena paketa hostinga #

POST /v1/upgrade_hosting.php

Prelazak na drugi paket, uz isti ciklus naplate. Neiskorišteni dio trenutnog perioda računa se kao kredit, novi paket se računa za preostale dane, a razlika je doplata.

PoljeTipObavezanOpis
uuidstringDAuuid usluge
package_uuidstringDAuuid novog paketa iz hosting_offer.php
SlučajRezultat
Doplata veća od 0 (veći paket)Predračun za doplatu; paket se mijenja nakon plaćanja (uz auto_activation i dovoljno kredita — automatski). changed: false, polje calculation sadrži obračun.
Doplata 0 (manji ili jednak paket)Paket se mijenja odmah, bez predračuna i bez povrata razlike. changed: true.

Usluga s vlastitom IP adresom zadržava IP; novi paket mora nuditi IP za vaš nivo i ciklus. Ako server odbije novi paket (npr. zauzeto više prostora nego što novi paket dozvoljava), usluga ostaje na starom paketu.


Upravljanje hosting uslugom #

POST /v1/manage_hosting.php

Suspenzija, skidanje suspenzije i terminacija hosting naloga na serveru.

PoljeTipObavezanOpis
uuidstringDAuuid usluge
actionstringDAsuspend, unsuspend ili terminate
confirmbooleanza terminatetrue — terminacija briše nalog i nepovratna je

Suspendovana usluga se ne obnavlja automatski — tako WHMCS suspenzija zaustavlja obnovu (vidi Obnova usluga).


Produži licencu #

POST /v1/renew_license.php

Kreira predračun za sljedeći mjesec licence. Licence se zakupljuju i obnavljaju isključivo mjesečno.

POST JSON polja

PoljeTipObavezanOpis
uuidstringDAuuid licence iz Moje licence

Primjer zahtjeva

POST https://www.api.reseller.ba/v1/renew_license.php
Content-Type: application/json; charset=utf-8
X-API-UUID:   550e8400-e29b-41d4-a716-446655440000
X-API-KEY:    your_api_key

{
  "uuid": "9a4f2c81-6b30-4e75-8d19-3f7b2e5a1c68"
}

Odgovor je istog oblika kao kod hostinga, s blokom licenca umjesto usluga. Ista pravila vrijede i za stanja u kojima obnova nije moguća, kao i za postojeći neplaćeni predračun.


Terminacija licence #

POST /v1/manage_license.php

Trajno ukida licencu kod cPanela. Licenca se ne suspenduje — naplaćuje se dok postoji, pa se licenca koju klijent više ne koristi terminira. Neplaćeni predračun za obnovu te licence se otkazuje.

PoljeTipObavezanOpis
uuidstringDAuuid licence iz my_licenses.php
actionstringDAterminate
confirmbooleanDAtrue

Obnova usluga, rokovi i istek #

Na nalogu postoje dvije odvojene postavke (reseller panel, Postavke; API: settings.php):

PostavkaOdnosi se naUključena
auto_activationNove narudžbe i promjenu paketaPredračun se odmah naplaćuje iz kredita i usluga se aktivira
auto_renewalObnovu postojećih uslugaPredračun za obnovu se naplaćuje iz kredita i usluga se produžava; šalje vam se samo račun

Ako kredita nema dovoljno, predračun ostaje neplaćen i čeka uplatu ili dopunu kredita — ništa se ne naplaćuje djelimično.

Automatska obnova UGAŠENA

Za domene, hosting, licence i dedicated servere predračun za obnovu izdaje se unaprijed, prije isteka (broj dana zavisi od ciklusa usluge) i šalje vam se mailom. Usluga se produžava čim je predračun plaćen. Obnovu možete pokrenuti i sami, u bilo kojem trenutku, pozivom renew endpointa.

Automatska obnova UPALJENA

UslugaKada se obnavlja
DomenaIsključivo na vaš poziv renew_domain.php (WHMCS ga šalje sam). Predračun se odmah naplaćuje iz kredita i domena se produžava kod registra.
Hostinghosting_grace dana nakon isteka, ako usluga nije suspendovana ni terminirana
Dedicated serverhosting_grace dana nakon isteka, ako server nije suspendovan ni terminiran
Licencalicence_grace dana nakon isteka, ako licenca nije terminirana
Zašto se hosting, serveri i licence obnavljaju nakon isteka WHMCS provisioning moduli ne šalju komandu za produženje hostinga i licenci, ali šalju suspenziju i terminaciju. Rok od hosting_grace / licence_grace dana (vrijednosti vidite u my_profile.php) je vaš prostor: ako klijent ne plati i vi uslugu suspendujete ili terminirate, obnova se ne izvršava i kredit se ne skida. Ako ništa ne poduzmete, usluga se produžava.

Uslugu ili licencu uvijek možete produžiti i ručno, pozivom renew_hosting.php, renew_dedicated.php ili renew_license.php, odnosno iz WHMCS modula.

Novi period nakon obnove

Domena: stari datum isteka + broj godina. Hosting, licence i serveri: stari datum isteka + ciklus, bez prekida — obnova plaćena nekoliko dana nakon isteka ne pomjera datum. Ako je usluga stajala istekla duže od cijelog ciklusa, novi period počinje od dana plaćanja.

Šta se dešava s neobnovljenom uslugom

UslugaNakon isteka
HostingViše od hosting_grace dana: suspenzija. 60. dan: terminacija (nalog se briše sa servera), neplaćeni predračun se otkazuje. Plaćanje prije terminacije skida suspenziju i produžava uslugu.
Dedicated serverViše od hosting_grace dana: suspenzija (mreža isključena). 60. dan: terminacija.
Licenca1. dan: status istekla. Više od licence_grace dana: terminacija kod cPanela — licenca se ne suspenduje, jer se naplaćuje dok postoji.
DomenaGrace period, pa redemption period (dani po ekstenziji — vidi cjenovnik); uz obnovu se tada naplaćuje i naknada za grace odnosno redemption, kao zasebna stavka predračuna. 60. dan domena prelazi u status obrisana i više se ne može obnoviti.

Moje domene #

GET /v1/my_domains.php

Lista vaših domena. Parametri: ?limit=50&offset=0 (opcionalno). Vraća za svaku domenu: uuid, naziv, status, cijenu, datume i broj narudžbe — uuid odavde koristite za produženje, EPP, nameservere i kontakte.

Status domeneZnačenje
1Na čekanju
3Aktivna
4Neuspjela
5Istekla

Ponuda dedicated servera #

GET /v1/dedicated_offer.php

Kompletna ponuda dedicated servera s cijenama za vaš cjenovni nivo, zajedno s dostupnim konfigurabilnim opcijama.

Serveri se zakupljuju isključivo mjesečno Duži ciklus se ne nudi. U bloku prices postoji samo monthly.

Odgovor

Odgovor ima dva dijela: packages (serveri) i options (dodatne opcije koje se biraju pri narudžbi).

{
  "success": true,
  "data": {
    "level": 2,
    "currency": { "code": "BAM", "suffix": "KM", "position": "after" },
    "decimal_separator": ",",
    "total_count": 11,
    "packages": [
      {
        "uuid": "3f1c8a20-68df-4cf7-9bd5-dc73b38acc8d",
        "name": "2 x 18 Core Xeon Gold 6254",
        "subtitle": "DELL PowerEdge R640",
        "featured": false,
        "sold_out": false,
        "specification": {
          "model": "DELL PowerEdge R640",
          "cpu": "Xeon Gold 6254",
          "cpu_count": 2,
          "cores": 36,
          "cpu_speed": "32 x 3.10 GHz",
          "hyperthreading": true,
          "ram_included": "64 GB",
          "ram_type": "DDR 4",
          "disks_included": [
            { "name": "960 GB SSD Enterprise", "count": 2 }
          ],
          "drive_bays": 8,
          "included_ip_addresses": 1
        },
        "available_options": {
          "ram":  ["ram-1", "ram-2", "ram-3"],
          "raid": ["raid-1", "raid-2"],
          "disk_slots": [
            ["disk-6", "disk-7"],
            ["disk-6", "disk-7"]
          ]
        },
        "prices": { "monthly": "799.20" }
      }
    ],
    "options": {
      "ram": [
        {
          "code": "ram-2",
          "name": "Nadogradnja na 128 GB",
          "free": false,
          "prices": { "monthly": "96.00" }
        }
      ],
      "disks": [ ... ],
      "internet": [ ... ],
      "management": [ ... ],
      "cpanel": [ ... ],
      "raid": [ ... ],
      "ip": [ ... ],
      "operating_systems": [ ... ]
    }
  }
}
Kako povezati paket i opcije Blok options nabraja sve opcije na platformi. available_options unutar paketa kaže koje od njih taj paket nudi — poklapanje ide po polju code.

disk_slots je niz nizova: jedan unos po fizičkom slotu, jer se disk bira zasebno za svaki slot.
Što je već uključeno u cijenu ram_included i disks_included opisuju konfiguraciju koja dolazi uz server. Opcije iz options su nadogradnje i naplaćuju se dodatno.
PoljeTipOpis
uuidstringIdentifikator paketa — koristi se pri narudžbi
namestringNaziv servera
subtitlestringKratak opis, obično model kućišta
featuredboolIstaknut u ponudi
sold_outboolTrenutno nedostupan
specificationobjectOpis hardvera; vidi primjer iznad
available_optionsobjectKodovi opcija koje ovaj paket nudi
prices.monthlystringVaša mjesečna cijena za vaš nivo

Narudžba dedicated servera #

POST /v1/order_dedicated.php

Naručuje dedicated server s odabranom konfiguracijom. Kreira narudžbu i predračun; server ostaje na statusu 1 do isporuke.

Isporuka je ručna Dedicated server je fizička mašina i ne aktivira se automatski. Nakon uplate server čeka da ga tehnička služba pusti u rad; IP adresa i root pristup pojavljuju se tek tada.
Auto-aktivacija iz kredita Kad je na nalogu uključena automatska aktivacija, predračun se odmah naplaćuje iz vašeg kredita: izdaje se račun, stara avansna faktura se stornira i izdaje se nova na preostali iznos — sve automatski, s dokumentima na e-mail. Server i tada čeka ručnu isporuku (status ostaje 1). Bez dovoljno kredita predračun ostaje neplaćen i čeka uplatu.

Zahtjev

{
  "package_uuid": "dddddddd-0000-4000-8000-000000000002",
  "cycle": "monthly",
  "hostname": "srv1.primjer.ba",
  "options": ["ram-2", "raid-2", "cp-1", "os-1"],
  "disks": ["disk-7", "disk-6"],
  "extra_ip": 4
}
PoljeObaveznoOpis
package_uuiddauuid iz dedicated_offer.php
cycledaUvijek monthly — serveri se zakupljuju mjesečno
hostnameneŽeljeni hostname; može se postaviti i kasnije
optionsneKodovi nadogradnji: memorija, RAID, link, administracija, kontrolni panel, OS
disksneKodovi diskova po slotu, redom
extra_ipneBroj dodatnih IP adresa (0 ako se ne naručuju)
Opcija koju paket ne nudi je greška Kod koji nije naveden u available_options tog paketa vraća 400 — ne preskače se u tišini. Isto vrijedi za disk u slotu koji ga ne podržava i za dvije opcije iste vrste.
Diskovi idu po slotu disks je niz gdje prvi element pripada prvom slotu, drugi drugom i tako dalje. Prazan slot se šalje kao prazan string:

"disks": ["disk-7", "", "disk-6"]

Broj elemenata ne smije premašiti broj slotova iz specification.drive_bays.

Odgovor

{
  "success": true,
  "data": {
    "order": {
      "uuid": "7c2f9a10-4e88-4a31-b0d2-1f5e77c3a904",
      "order_number": "RSL-4839947402",
      "status": 1
    },
    "server": {
      "uuid": "b41d7e60-9c2a-4f18-8ad5-3e90b21c7f56",
      "name": "2 x 18 Core Xeon Gold 6254",
      "model": "DELL PowerEdge R640",
      "hostname": "srv1.primjer.ba",
      "cycle": "monthly",
      "cycle_months": 1,
      "level": 2,
      "price": "1044.06",
      "package_price": "849.15",
      "options_price": "194.91",
      "selected_options": ["Nadogradnja na 128 GB", "RAID 10"],
      "ordered_ip_addresses": 4,
      "status": 1
    },
    "proforma_invoice": {
      "number": "1587",
      "subtotal": "892.36",
      "vat_amount": "151.70",
      "total": "1044.06",
      "currency": "KM",
      "status": "unpaid"
    },
    "currency": { "prefix": "", "suffix": "KM", "position": "after" },
    "decimal_separator": ","
  }
}
Česta greška data.uuid ne postoji. UUID narudžbe je data.order.uuid, a UUID servera data.server.uuid — za praćenje kroz my_dedicated.php koristi se drugi.
KodGreška
400Neispravan kod opcije ili opcija koju paket ne nudi
400Disk u slotu koji ga ne podržava, ili više diskova nego slotova
400Dvije opcije iste vrste (npr. dvije memorije)
400Više IP adresa nego što je dozvoljeno
404Server nije u ponudi

Moji dedicated serveri #

GET /v1/my_dedicated.php

Lista vaših servera. Parametri: ?limit=50&offset=0 (opcionalno) ili ?uuid=<uuid> za pojedinačni server.

Isporuka je ručna Dedicated server je fizička mašina i ne aktivira se automatski. Nakon uplate server ostaje na statusu 1 dok ga tehnička služba ne pusti u rad. Root pristup i IP adrese pojavljuju se tek tada.
PoljeTipOpis
uuidstringIdentifikator servera
namestringNaziv paketa u trenutku kupovine
modelstringModel mašine (npr. DELL PowerEdge R640)
hostnamestringHostname, ako je postavljen
statusintVidi tabelu statusa ispod
levelintVaš cjenovni nivo u trenutku kupovine
cyclestringUvijek monthly
pricestringUkupna mjesečna cijena, s odabranim opcijama
package_pricestringSamo server, bez opcija
options_pricestringZbir odabranih opcija
main_ipstringGlavna IP adresa; prazno dok server nije isporučen
main_ipv6stringGlavna IPv6 adresa, ako je dodijeljena
ordered_ip_addressesintBroj naručenih dodatnih IP adresa
leased_ip_addressesintBroj stvarno dodijeljenih dodatnih IP adresa
root_usernamestringRoot korisničko ime
specificationobjectOpis hardvera
configurationobjectOdabrane opcije s cijenom po kojoj su naplaćene
leased_atstring|nullDatum zakupa
expires_atstring|nullDatum isteka tekućeg mjeseca
terminated_atstring|nullDatum terminacije, ako je usluga terminirana
Cijene u configuration su zamrznute Prikazuju iznos koji je vrijedio pri narudžbi, ne trenutni cjenovnik. Cjenovnik se može promijeniti, a vama se naplaćuje ono što je dogovoreno.
Status serveraZnačenje
1Čeka isporuku — uplata zaprimljena, server se priprema
2Aktivan
3Suspendiran
4Terminiran
5Otkazan
6Fraud

Produži dedicated server #

POST /v1/renew_dedicated.php

Kreira predračun za sljedeći mjesec servera, po ugovorenoj cijeni servera (paket + opcije odabrane pri narudžbi).

PoljeTipObavezanOpis
uuidstringDAuuid servera iz Moji serveri

Obnova je moguća za aktivan server i za server istekao unutar roka hosting_grace. Suspendovan, terminiran ili otkazan server daje 409; isto i ako već postoji neplaćen predračun za obnovu. Odgovor ima isti oblik kao renew_hosting.php (umjesto package i domain vraća hostname).


Upravljanje dedicated serverom #

POST /v1/manage_dedicated.php

Restart, mreža, suspenzija i terminacija servera. Izvršava se kroz DCIM; status se mijenja tek kad DCIM potvrdi akciju.

PoljeTipObavezanOpis
uuidstringDAuuid servera
actionstringDAreboot, network_on, network_off, suspend, unsuspend, terminate
confirmbooleanza terminatetrue — terminacija je nepovratna

Na suspendovanom serveru dozvoljeni su samo unsuspend i terminate. Odgovor vraća service.status i stanje mreže (network: on / off).


Moji dokumenti #

GET /v1/my_documents.php

Zadnji predračuni i računi. Parametar: ?limit=10 (1–50, default 10). Svaki dokument sadrži uuid, broj, datume, iznos, valutu i status. Status predračuna: 0 = nije plaćen, 1 = plaćen.


Moj profil #

GET /v1/my_profile.php

Vraća vaše profil podatke u registrant formatu — spremno za opciju "registruj na moje podatke" pri narudžbi domene.


Kredit #

GET /v1/credit.php

Trenutno stanje vašeg kredita: { kredit: { iznos, valuta, broj_avansnog_racuna, datum } }. Bez aktivnog avansa iznos je 0.00.


Postavke #

GET POST /v1/settings.php

GET vraća { postavke: { auto_aktivacija: 0|1 } }. POST { "auto_aktivacija": 0|1 } mijenja postavku i vraća novo stanje. Auto-aktivacija znači da se usluge aktiviraju automatski nakon plaćanja.


Registrant podaci #

Objekat registrant koji se šalje pri registraciji i transferu domene:

PoljeObavezanOpis
pravno_liceDA0 = fizičko lice, 1 = pravno lice (firma)
ime, prezimeDAIme i prezime registranta / kontakt osobe
naziv_firmeNE*Naziv firme — za pravna lica
id_brojNE*ID broj — za pravna lica
pdv_brojNEPDV broj — za PDV obveznike
adresa, grad, postanski_brojDAAdresa registranta
drzavaDAISO-2 kod države (npr. BA, HR, DE)
email, telefonDAKontakt registranta (telefon u međunarodnom formatu)
Polja za pravna lica Za pravno_lice: 1 obavezno pošaljite i naziv_firme i id_broj. Nepotpuni podaci vraćaju poslovnu grešku sa opisom polja koje nedostaje.

Ciklusi naplate #

Polje cycle pri narudžbi hostinga prima jednu od sljedećih vrijednosti (string):

VrijednostPeriodBroj mjeseci
mjesecnaMjesečno1
kvartalnaKvartalno3
polugodisnjaPolugodišnje6
godisnjaGodišnje12
dvogodisnjaDvogodišnje24
trogodisnjaTrogodišnje36
cetverogodisnjaČetverogodišnje48
petogodisnjaPetogodišnje60
Dostupnost po paketu Koje cikluse konkretni paket nudi vidite u cijene objektu tog paketa u ponudi hostinga. Ciklus kojeg nema u ponudi paketa se ne može naručiti.
Domene Domene ne koriste cikluse — period se šalje kao broj godina u polju period: registracija 1–5 godina (dostupnost po ekstenziji iz registracijski_periodi u cjenovniku), transfer trenutno 1 godina.
Licence Licence se zakupljuju i obnavljaju isključivo mjesečno. Polje cycle pri narudžbi licence prima samo vrijednost monthly — duži ciklusi ne postoje i vraćaju 400.