ZALOGUJ
    opened image

    Aby pracować z usługami Cloud VPS za pośrednictwem API, Zomro udostępnia wygodny interfejs do uzyskiwania informacji o dostępnych taryfach. Za pomocą funkcji v2.instances.order.pricelist można uzyskać pełną listę taryf z krótkim opisem i cenami. Następnie, używając funkcji v2.instances.order.param z podaniem ID taryfy i okresu zamówienia, można uzyskać szczegółowe charakterystyki wybranej taryfy. Poniżej znajdują się przykłady zapytań i struktura odpowiedzi dla każdej z funkcji. Te informacje pomogą Ci efektywnie zarządzać Twoimi serwerami w chmurze za pośrednictwem API Zomro.

    Aby uzyskać wszystkie dostępne taryfy dla usługi Cloud VPS, można skorzystać z następującej funkcji:

    v2.instances.order.pricelist

     

    Struktura zapytania:
    URL: 

    https://api.zomro.com/

    Metoda zapytania: POST
    Treść zapytania (form-data):

     

    Parametr Przykładowa wartość Opis wartości
    func v2.instances.order.pricelist Funkcja do uzyskiwania dostępnych taryf do zamówienia
    auth 21fc199...c43f71 Token sesji. Jest to jedna z opcji autoryzacji. Więcej o innych opcjach opisano tutaj
    out json Struktura odpowiedzi, której należy oczekiwać

     

    Oto przykład zapytania, które można wykonać z konsoli:

    curl --location 'https://api.zomro.com/' \
    --form 'func="v2.instances.order.pricelist"' \
    --form 'auth="19c8130ac494a5e7c162d246"' \
    --form 'out="json"'

     

    Po wykonaniu zapytania, potrzebne są dane, które znajdują się w następującej strukturze:
     

    doc.list.elem

     

    Oto przykład jednego z elementów, który otrzymujemy:
     

    ...,
    {
    "buttons": {
        "button": {
            "$name": "order",
            "$type": "func",
            "$key": "pricelist",
            "$theme": "primary",
            "$func": "v2.instances.order.param"
        }
    },
    "description": {},
    "detail": [
        {
            "name": {
                "$": "network"
            },
            "value": {
                "$": "IPv4 NL-2"
            }
        },
        {
            "name": {
                "$": "CPU count"
            },
            "value": {
                "$": "1"
            }
        },
        {
            "name": {
                "$": "Memory"
            },
            "value": {
                "$": "2 Gb"
            }
        },
        {
            "name": {
                "$": "Disk space"
            },
            "value": {
                "$": "12 Gb"
            }
        },
        {
            "name": {
                "$": "Port speed"
            },
            "value": {
                "$": "1 Gbit/s."
            }
        },
        {
            "name": {
                "$": "Bandwidth"
            },
            "value": {
                "$": "Unmetered traffic"
            }
        }
    ],
    "flabel": {
        "tag": [
            {
                "$": "72866a3690e44679070d48b8ffa2c963"
            },
            {
                "$": "a362f6fd19c99d07441692bf4cce537c"
            }
        ]
    },
    "id": {
        "$": "6740"
    },
    "pricelist": {
        "$": "6740"
    },
    "prices": {
        "$key": "period_6740",
        "price": {
            "$special_price": "no",
            "cost": {
                "$": "0.13"
            },
            "currency": {
                "$": "EUR"
            },
            "period": {
                "$": "-50"
            }
        }
    },
    "title": {
        "$": "Cloud Essential"
    }
    },
    ...

     

    Mając te dane, można poznać ID taryfy. W naszym przypadku wartość "6740", oraz krótkie informacje o taryfie. Aby uzyskać pełne dane o taryfie, należy skorzystać z funkcji: 

    v2.instances.order.param

    i ID taryfy oraz okresem zamówienia. 

     

    Struktura zapytania:

    URL: 

    https://api.zomro.com/

    Metoda zapytania: POST
    Treść zapytania (form-data):

    Parametr Przykładowa wartość Opis wartości
    func v2.instances.order.param Funkcja do uzyskiwania dodatkowych danych o taryfie
    auth 21fc199...c43f71 Token sesji. Jest to jedna z opcji autoryzacji. Więcej o innych opcjach opisano tutaj
    out json Struktura odpowiedzi, której należy oczekiwać
    order_period -50 Okres, na który można zamówić usługę
    pricelist 6740 ID usługi, którą należy zamówić

    Oto przykład zapytania, które można wykonać z konsoli:

    curl --location 'https://api.zomro.com/' \
    --form 'func="v2.instances.order.param"' \
    --form 'auth="579ea10f7790f5e7de91357c"' \
    --form 'out="json"' \
    --form 'order_period="-50"' \
    --form 'pricelist="6740"'

    Po wykonaniu zapytania, potrzebne są dane, które znajdują się w następującej strukturze:

    doc.slist

    Oto wartości, które otrzymano w wyniku wykonania zapytania:

    {
    "$name": "instances_os",
    "val": [
        {
            "$key": "18d0ee2e-4d57-4f40-9b56-03c1773b5831",
            "$": "AlmaLinux 8"
        },
        {
            "$key": "5da4ad83-45f6-4c0e-9a7e-7a7c18b2be6c",
            "$": "AlmaLinux 9"
        },
        {
            "$key": "3d9d9db6-325a-4d91-9bdb-6c48ad291cb6",
            "$": "CentOS Stream 8"
        },
        {
            "$key": "7d7911e3-7178-4f36-a308-d841db5fe654",
            "$": "CentOS Stream 9"
        },
        {
            "$key": "0bf4deb2-855c-4863-8518-6006d804adbb",
            "$": "Debian 10"
        },
        {
            "$key": "3010ae60-0185-4021-98da-f50013147ebd",
            "$": "Debian 11"
        },
        {
            "$key": "93878ba5-6b9e-4924-a4be-34edb623f808",
            "$": "Debian 12"
        },
        {
            "$key": "1d9dda4c-34b0-4304-a90a-8f3018722fa2",
            "$": "Rocky-Linux-8"
        },
        {
            "$key": "a8b7bcb3-6698-4264-b413-f2b866a46a70",
            "$": "Rocky-Linux-9"
        },
        {
            "$key": "479c96f1-ccc6-47a2-952c-c9e3bbdc8d07",
            "$": "Ubuntu 20.04"
        },
        {
            "$key": "f8f2573f-56c4-44c5-8469-84eee4aa64e7",
            "$": "Ubuntu 22.04"
        },
        {
            "$key": "92fabac2-69cc-46ad-8439-c377e0c90632",
            "$": "Ubuntu 23.04"
        },
        {
            "$key": "6f8476f9-93f0-4ddd-b0fd-624e930ffacd",
            "$": "Ubuntu 23.10"
        }
    ]
    },
    {
    "$name": "addon_6746",
    "val": [
        {
            "$key": "259",
            "$": "IPv4 NL-2 (0.04 EUR)"
        },
        {
            "$key": "260",
            "$": "IPv6 NL-2 (0.00 EUR)"
        }
    ]
    },
    {
    "$name": "addon_6745",
    "val": [
        {
            "$key": "58",
            "$": "1 (0.00 EUR)"
        }
    ]
    },
    {
    "$name": "addon_6744",
    "val": [
        {
            "$key": "42",
            "$": "2 Gb (0.00 EUR)"
        }
    ]
    },
    {
    "$name": "addon_6743",
    "val": [
        {
            "$key": "143",
            "$": "12 Gb (0.00 EUR)"
        }
    ]
    },
    {
    "$name": "addon_6742",
    "val": [
        {
            "$key": "246",
            "$": "1 Gbit/s. (0.00 EUR)"
        }
    ]
    },
    {
    "$name": "addon_6741",
    "val": [
        {
            "$key": "244",
            "$": "Unmetered traffic (0.00 EUR)"
        }
    ]
    },
    {
    "$name": "order_period",
    "val": [
        {
            "$msg": "yes",
            "$key": "-50",
            "$": "Day"
        }
    ]
    },
    {
    "$name": "instances_ssh_keys",
    "val": [
        {
            "$key": "283",
            "$": "new"
        },
        {
            "$key": "471",
            "$": "111"
        },
        {
            "$key": "490",
            "$": "1115"
        }
    ]
    }

     

    Ten zapis dostarcza następujących danych:

     

    Nazwa parametru Opis parametru
    instances_os Możliwe systemy operacyjne, które są dostępne do instalacji dla danej taryfy
    addon_6746 Jaki typ IP używać. Jeśli wybierzesz tylko IPv6, IPv4 nie zostanie przydzielony dla serwera. W przypadku IPv4 - zostanie przydzielony zarówno IPv6, jak i IPv4. Koszt usługi w tym przypadku wzrośnie.
    addon_6745 Liczba CPU dostępnych do zamówienia
    addon_6744 Liczba RAM dostępnych do zamówienia
    addon_6743 Rozmiar przestrzeni dyskowej na serwerze
    addon_6742 Przepustowość ruchu internetowego na serwerze
    addon_6741 Ograniczenie ilości ruchu internetowego na serwerze
    order_period Dostępne okresy płatności za usługę
    instances_ssh_keys Klucze SSH, które zostały dodane w panelu użytkownika

    Używając tych parametrów, można zamówić usługę. 

    Proponujemy również zapoznać się z artykułami, które mogą być przydatne do interakcji z produktami Cloud VPS za pomocą API: