opened image

API - Paslaugos kūrimas

Užsakant paslaugą platformoje Zomro reikia laikytis kelių svarbių etapų: paslaugos pridėjimas į krepšelį, nuolaidos kodo aktyvavimas (jei yra) ir tiesioginis paslaugos pirkimas. Šie žingsniai leidžia efektyviai naudoti nuolaidų kodų funkcionalumą užsakymo metu. Užsakymui atlikti reikia perduoti tam tikrus paslaugos parametrus, kurių išsamus aprašymas pateiktas žemiau.

Užsakymo kūrimo procesas susideda iš šių etapų:

  • Paslaugos pridėjimas į krepšelį
  • Nuolaidos kodo aktyvavimas
  • Paslaugos pirkimas iš krepšelio

Būtent tokie pirkimo etapai leidžia naudoti nuolaidų kodą užsakymo metu.

Užsakymui sukurti reikia perduoti paslaugos parametrus, kurie mus domina. Kaip gauti prieinamus parametrus, aprašyta čia.

 

Užsakymo struktūra paslaugai Cloud VPS Zomro:
 

URL: 

https://api.zomro.com/

Metodas: POST

Užklausos kūnas (Form-data):
 

ParametrasPavyzdinė reikšmėPrivalomas parametrasReikšmės aprašymas
funcv2.instances.order.paramTaipPaslaugos užsakymo funkcija
auth21fc199...c43f71NeSesijos žetonas. Tai vienas iš autorizacijos variantų. Išsamesnė informacija apie kitus variantus pateikta čia
outjsonNeKokiu formatu tikėtis atsakymo iš API
sokokTaipOperacijos patvirtinimas
order_period-50TaipCloudVPS paslaugoms taikomas kasdienis atsiskaitymas. Paslaugos pirkimui naudokite reikšmę: -50, 1,  3,  6,  12.
-50 - kasdienis atsiskaitymas, 1 - paslaugos užsakymas 1 mėnesiui, 3 - užsakymas 3 mėnesiams ir taip toliau.
licence_agreementonTaipAtitinka sutikimą su naudojimo licencija
pricelist6740TaipID tarifas, kurį reikia užsakyti. Tarifų ID galima gauti iš funkcijos v2.instances.order.pricelist. Išsamesnė informacija apie naudojimą pateikta čia
order_count1TaipPaslaugų skaičius, kurias galima užsakyti vienu užklausa
force_use_new_cartonTaipPaslaugos pridėjimas į naują billmanager krepšelį
instances_ssh_keys490NeSSH rakto ID, kurį reikia pridėti prie serverio po OS įdiegimo. Nereikia perduoti, jei parametras use_ssh_key=off
passwordMypassword1NePrieigos slaptažodis prie serverio. Linux atveju - slaptažodis root vartotojui. Windows atveju - Administrator vartotojo slaptažodis. Nereikia perduoti, jei parametras use_ssh_key=on.
Be to, slaptažodis turi turėti bent 1 didžiąją anglų kalbos raidę, 1 skaitmenį, minimalus simbolių skaičius - 8.  
servernameMyServerNeAsmeninis serverio pavadinimas
instances_os18d0ee2e-4d57-4f40-9b56-03c1773b5831TaipOperacinės sistemos UID, kurią reikia įdiegti. Operacinės sistemos UID galima gauti iš funkcijos v2.instances.order.pricelist. Išsamesnė informacija apie naudojimą pateikta čia
use_ssh_keyoffNeNaudoti SSH raktą ar ne. Gali priimti reikšmes off arba on.
addon_xxx

260

NePapildomi paslaugos parametrai. Gali būti RAM, CPU skaičius, disko dydis, duomenų srauto apimtis, IPv4 arba IPv6 tipas. Prieinami parametrai priklauso nuo tarifo. Sužinoti, kokios parinktys yra prieinamos, galima pavyzdyje, aprašytame čia
datacenter

13

TaipDuomenų centro numeris. Sužinoti, kokios parinktys yra prieinamos, galima pavyzdyje, aprašytame čia
backups_scheduleonNeSukuriant atsarginių kopijų tvarkaraštį, atsarginės kopijos kūrimo metu
backups_schedule_nameMyBackupTaip, jei naudojama reikšmė backups_scheduleAtsarginės kopijos kūrimo tvarkaraščio pavadinimas
backups_schedule_rotation_days1,2,3,4,5,6,0Taip, jei naudojama reikšmė backups_scheduleKuriomis dienomis kurti atsargines kopijas. Savaitės pradžia prasideda sekmadienį, ir turi ID - 0. Taigi pirmadienis turi reikšmę 1. Kitos savaitės dienos - atitinkamos reikšmės.
backups_schedule_rotation_time04:20Taip, jei naudojama reikšmė backups_scheduleKada sukurti atsarginę kopiją

 

 

Paslaugos užsakymo pavyzdys

Pavyzdžiui, naudojame tarifą Cloud Essential su OS Linux Ubuntu 20.04, serveris tik su IPv6 ir naudojant root vartotojo slaptažodį.

URL: 

https://api.zomro.com/

Metodas: POST

 

Užklausos kūnas (Form-data):

ParametrasReikšmė
funcv2.instances.order.param
auth21fc199...c43f71
outjson
sokok
order_period-50
licence_agreementon
pricelist

6740

order_count1
passwordMyPassword1
servernameMyServer-1
instances_os

479c96f1-ccc6-47a2-952c-c9e3bbdc8d07

use_ssh_keyoff

addon_6746

260

force_use_new_carton
datacenter13

 

Štai užklausos pavyzdys, kurį galima atlikti iš konsolės:

curl --location 'https://api.zomro.com/' \
--form 'func="v2.instances.order.param"' \
--form 'auth="211a9ac6309a9f0c340bdebf"' \
--form 'out="json"' \
--form 'sok="ok"' \
--form 'order_period="-50"' \
--form 'licence_agreement="on"' \
--form 'use_ssh_key="off"' \
--form 'pricelist="6740"' \
--form 'servername="MyServer-1"' \
--form 'password="Mypassword1"' \
--form 'instances_os="479c96f1-ccc6-47a2-952c-c9e3bbdc8d07"' \
--form 'order_count="1"' \
--form 'addon_6746="260"' \
--form 'datacenter="13"' \
--form 'force_use_new_cart="on"'

 

Po užklausos įvykdymo mums reikia duomenų, kurie yra šioje struktūroje:

doc

 

Štai reikšmės, gautos vykdant užklausą:

...,

"lineitem.id": {
    "$": "1818"
},
...

 

 

Ši reikšmė "1818", kuri yra užsakymo numeris krepšelyje, reikalinga tolesniam paslaugos aktyvavimui. Užsirašykime ją tolesniam naudojimui.

 

Po šios užklausos įvykdymo krepšelyje taip pat galima pamatyti turimą prekę.


 

Kitas etapas bus nuolaidos kodo aktyvavimas, jei toks yra. Šis etapas nėra privalomas, tačiau jei klientas turi nuolaidos kodą, būtų puiku turėti galimybę jį naudoti.

URL: 

https://api.zomro.com/

Metodas: POST

Užklausos kūnas (Form-data):

ParametrasPavyzdinė reikšmėPrivalomas parametrasReikšmės aprašymas
funccartTaipFunkcijos pavadinimas, skirtas dirbti su krepšeliu
auth21fc199...c43f71NeSesijos žetonas. Tai vienas iš autorizacijos variantų. Išsamesnė informacija apie kitus variantus pateikta čia
outjsonNeKokiu formatu tikėtis atsakymo iš API
sokokTaipOperacijos patvirtinimas
promocodePROMO_2024TaipNuolaidos kodas, kurį planuojama naudoti. 
clicked_buttonapply_promocodeTaipNuolaidos kodo aktyvavimo patvirtinimas

 

Štai užklausos pavyzdys, kurį galima atlikti iš konsolės:

curl --location 'https://api.zomro.com/' \
--form 'out="json"' \
--form 'auth="46ffb314c8d46ec1f2f1df16"' \
--form 'func="cart"' \
--form 'promocode="PROMO_2024"' \
--form 'sok="ok"' \
--form 'clicked_button="apply_promocode"'

 

Po šios užklausos įvykdymo krepšelyje galima pamatyti nuolaidos kodo aktyvavimo rezultatą:

 

 

Nuotraukoje matyti, kad nuolaidos kodas PROMO_2024 sėkmingai aktyvuotas. 
PS: Iš tikrųjų, nuolaidos kodas PROMO_2024, jūsų atveju, nėra galiojantis, jis buvo sukurtas tik šios instrukcijos rašymui.

Kitas etapas bus paslaugos aktyvavimas.

Jei nuolaidos kodas nesuteikia 100% nuolaidos, reikia papildomai sumokėti už paslaugą iš asmeninės paskyros. 

Apsvarstykime situaciją, jei nuolaidos kodas nepadengia 100% paslaugos kainos. API užklausa atrodys taip:

 URL: 

https://api.zomro.com/

Metodas: POST

Užklausos kūnas (Form-data):

ParametrasPavyzdinė reikšmėPrivalomas parametrasReikšmės aprašymas
funccartorder.create.confirmTaipFunkcija, skirta dirbti su krepšeliu
auth21fc199...c43f71NeSesijos žetonas. Tai vienas iš autorizacijos variantų. Išsamesnė informacija apie kitus variantus pateikta čia
outjsonNeKokiu formatu tikėtis atsakymo iš API
sokokTaipOperacijos patvirtinimas
elid1818TaipUžsakymo ID. Ši reikšmė gauta pridedant paslaugą į krepšelį
paymethod_id0TaipMokėjimo metodo ID. Reikšmė 0 yra standartinė ir atitinka užsakymo apmokėjimą iš asmeninės sąskaitos lėšų

 

 

Štai užklausos pavyzdys, kurį galima atlikti iš konsolės:

 

curl --location 'https://api.zomro.com/' \
--form 'out="json"' \
--form 'auth="cd63c7832f0ae5947c49ac06"' \
--form 'func="cartorder.create.confirm"' \
--form 'sok="ok"' \
--form 'elid="1818"' \
--form 'paymethod_id="0"'

 

 

Po šios užklausos įvykdymo krepšelyje šios paslaugos neturėtų būti, bendrame CloudVPS paslaugų sąraše matome mūsų paslaugą statusu "Aktyvacija vykdoma":

 

 

Paslaugos aktyvavimo proceso metu papildomų veiksmų su paslauga nėra. Po paslaugos aktyvavimo mums atsivers prieinamų veiksmų sąrašas, skirtas paslaugoms valdyti, tokiems kaip: Pradėti, Sustabdyti, Ištrinti, Keisti dydį ir kt.
 

Taip pat siūlome susipažinti su straipsniais, kurie gali būti naudingi dirbant su Cloud VPS produktais per API: