УВІЙТИ
    opened image

    Створення image

    Щоб створити image, виконайте наступний запит:

     

    URL: 

    https://api.zomro.com/

    Метод: POST

    Тіло запиту (Form-data):

    Параметр Приклад значення Обов'язковий параметр Опис значення
    func v2.image.order.param Так Функція для створення розкладу на створення резервної копії
    auth 21fc199...c43f71 Ні Токен сесії. Це один з варіантів авторизації. Докладніше про інші варіанти описано тут
    out json Так Тип відповіді, яку очікувати
    sok ok Так Підтвердження операції
    image_type image Так Тип створеного елемента. Доступне значення - image
    skipbasket on Так Рекомендується вказати «on», оскільки у випадку «off», image не буде створено  
    image_name MyImage Так Назва зображення
    region Netherlands-2 Так Дата центр, в якому зберегти image
    min_disk 1 Так Мінімальний розмір диска в ГБ, який повинен бути в instance, щоб можна було використовувати image
    min_ram 1 Так Мінімальний розмір ОЗП в ГБ, який повинен бути в instance, щоб можна було використовувати image
    disk_format iso Так Тип зображення, який створити. Доступні параметри: "iso", "ami", "ari", "aki", "vhd", "vmdk", "raw", "qcow2", "vdi". 
    os_distro ubuntu Так Назва ОС, образ якої створюється
    os_version 22 Ні Версія ОС
    architecture x86_64 Так Архітектура ОС. Доступні параметри: "x86_64", "i686", "ia64"
    url https://releases.ubuntu.com/24.04/ubuntu-24.04-live-server-amd64.iso Так Пряме посилання на зображення
    protected on Так Дозволяти чи видаляти зображення. Доступні параметри: "on", "off"
    pricelist 6854 Так ID послуги, що відповідає послузі image
    order_period -50 Так Період замовлення. Для типу послуги image використовується тільки денна оплата

     

    Приклад створення image

    Для прикладу, створимо Image з Ubuntu 24.04 https://releases.ubuntu.com/24.04/ubuntu-24.04-live-server-amd64.iso:

     

    URL: 

    https://api.zomro.com/

     

    Метод: POST

    Тіло запиту (Form-data):

    Параметр Значення
    func v2.image.order.param
    auth 21fc199...c43f71
    out json
    sok ok
    image_type image
    skipbasket on
    image_name Ubuntu24
    region Netherlands-2
    min_disk 1
    min_ram 1
    disk_format iso
    os_distro ubuntu
    os_version 24
    architecture x86_64
    url https://releases.ubuntu.com/24.04/ubuntu-24.04-live-server-amd64.iso
    protected on
    pricelist 6854
    order_period -50

     

    Ось приклад запиту, який можна виконати з консолі:

     

    curl --location 'https://api.zomro.com/' \
    --form 'func="v2.image.order.param"' \
    --form 'auth="0f6744198ec41bb23fe1c923"' \
    --form 'out="json"' \
    --form 'sok="ok"' \
    --form 'image_type="image"' \
    --form 'skipbasket="on"' \
    --form 'image_name="Ubuntu24"' \
    --form 'region="Netherlands-2"' \
    --form 'min_disk="1"' \
    --form 'min_ram="1"' \
    --form 'disk_format="iso"' \
    --form 'os_distro="ubuntu"' \
    --form 'os_version="22"' \
    --form 'architecture="x86_64"' \
    --form 'url="https://releases.ubuntu.com/24.04/ubuntu-24.04-live-server-amd64.iso"' \
    --form 'protected="on"' \
    --form 'pricelist="6854"' \
    --form 'order_period="-50"'

     

    Після виконання запиту, бачимо, що почав створювати image. Поточний статус «Saving»:

     

    Після створення image, статус зміниться з «Saving» на «Active»:

     

     Як за допомогою API можна отримати список всіх image

     

     

    Для цього виконуємо наступний формат запиту:

     URL: 

    https://api.zomro.com/

    Метод: POST

    Тіло запиту (Form-data):

    Параметр Приклад значення Обов'язковий параметр Опис значення
    func image Так Функція для отримання всіх зображень
    auth 21fc199...c43f71 Ні Токен сесії. Це один з варіантів авторизації. Докладніше про інші варіанти описано тут
    out json Так Тип відповіді, яку очікувати

    Спробуємо виконати наступний запит у консолі:

    curl --location 'https://api.zomro.com/' \
    --form 'func="image"' \
    --form 'auth="1176dc887b147a3eb1da748e"' \
    --form 'out="json"'

    Отримуємо наступний результат:

    {
        "doc": {
            ...
            "elem": [
                            {
                    "abusesuspend": {
                        "$": "off"
                    },
                    "architecture": {
                        "$": "x86_64"
                    },
                    "archived": {
                        "$": "off"
                    },
                    "autosuspend": {
                        "$": "off"
                    },
                    "billdaily": {
                        "$": "on"
                    },
                    "billhourly": {
                        "$": "off"
                    },
                    "change_pl": {
                        "$": "0"
                    },
                    ""change_pricelist": {
                        "$": "off"
                    },
                    "changepolicy": {
                        "$": "2"
                    },
                    "cost": {
                        "$": "0.00 EUR / Day"
                    },
                    "costperiod": {
                        "$": "-50"
                    },
                    "createdate": [
                        {
                            "$": "2024-07-24"
                        },
                        {
                            "$": "2024-07-24"
                        }
                    ],
                    "currency_id": {
                        "$": "153"
                    },
                    "currency_str": {
                        "$": "EUR"
                    },
                    "description": {},
                    "disk_format": {
                        "$": "iso"
                    },
                    "employeesuspend": {
                        "$": "off"
                    },
                    "expiredate": {
                        "$": "Daily charges"
                    },
                    "fleio_id": {
                        "$": "802c0ad6-c918-4769-8111-0a165a076ca4"
                    },
                    "fleio_status": {
                        "$": "Active"
                    },
                    "has_ip_pricelist": {
                        "$": "off"
                    },
                    "hypervisor_type": {
                        "$": "Any hypervisor"
                    },
                    "i_expiretime": {
                        "$": "14:44:24"
                    },
                    "i_opentime": {
                        "$": "15:45:12"
                    },
                    "id": {
                        "$": "5206258"
                    },
                    "image_name": {
                        "$": "Ubuntu24"
                    },
                    "image_size": {
                        "$": "3"
                    },
                    "image_type": {
                        "$": "Image"
                    },
                    "intname": [
                        {
                            "$": "image"
                        },
                        {
                            "$": "image"
                        }
                    ],
                    "it_accurate_billing": {
                        "$": "no"
                    },
                    "item_cost": {
                        "$": "0.0000"
                    },
                    "item_real_status": {
                        "$": "2"
                    },
                    "item_status": {
                        "$color": "green",
                        "$orig": "2",
                        "$": "Active"
                    },
                    "itemtype": {
                        "$": "27163"
                    },
                    "min_disk": {
                        "$": "1"
                    },
                    "min_ram": {
                        "$": "1"
                    },
                    "module_failed": {
                        "$": "off"
                    },
                    "module_upload_doc": {
                        "$": "off"
                    },
                    "name": {
                        "$": "Image #5206258"
                    },
                    "no_instruction": {
                        "$": "on"
                    },
                    "order_disabled": {
                        "$": "off"
                    },
                    "os_distro": {
                        "$": "Ubuntu"
                    },
                    "os_version": {
                        "$": "22"
                    },
                    "period": {
                        "$": "-50"
                    },
                    "pmmodule": {
                        "$": "pmimagemodule"
                    },
                    "price_on_request": {
                        "$": "off"
                    },
                    "pricelist": {
                        "$": "Image"
                    },
                    "pricelist_id": {
                        "$": "6854"
                    },
                    "processingmodule_failed": {
                        "$": "off"
                    },
                    "processingnode": {},
                    "protected": {
                        "$orig": "on",
                        "$": "Enable"
                    },
                    "real_expiredate": {
                        "$": "2024-07-25"
                    },
                    "region": {
                        "$": "Netherlands-2"
                    },
                    "scheduledclose": {
                        "$": "off"
                    },
                    "show_changepassword": {
                        "$": "off"
                    },
                    "show_domain_validation_button": {
                        "$": "off"
                    },
                    "show_hardreboot": {
                        "$": "off"
                    },
                    "show_movetovdc": {
                        "$": "off"
                    },
                    "show_reboot": {
                        "$": "on"
                    },
                    "show_supportpassword": {
                        "$": "off"
                    },
                    "show_vdc_loadbalancer": {
                        "$": "off"
                    },
                    "show_vdc_network": {
                        "$": "off"
                    },
                    "show_vdc_router": {
                        "$": "off"
                    },
                    "show_vdc_vm": {
                        "$": "off"
                    },
                    "show_vdc_volume": {
                        "$": "off"
                    },
                    "show_webconsole": {
                        "$": "off"
                    },
                    "specialstatus": {
                        "$": "0"
                    },
                    "stat_enabled": {
                        "$": "on"
                    },
                    "status": {
                        "$": "2"
                    },
                    "subaccount": {
                        "$": "351336"
                    },
                    "sync_feature": {
                        "$": "off"
                    },
                    "transition": {
                        "$": "off"
                    },
                    "visibility": {
                        "$": "Private"
                    }
                },
            ],
        }
    }

     

    Нас цікавлять дані, які отримані в наступній вкладеності:​​​​​​​

    doc.elem.[]

     

    Для редагування image, виконуємо наступний запит:

     URL: 

    https://api.zomro.com/

    Метод: POST

    Тіло запиту (Form-data):

    Параметр Приклад значення Обов'язковий параметр Опис значення
    func image.edit Так Функція для редагування зображення
    auth 21fc199...c43f71 Ні Токен сесії. Це один з варіантів авторизації. Докладніше про інші варіанти описано тут
    out json Так Тип відповіді, яку очікувати
    elid 5206258 Так ID image. Це значення можна отримати у відповіді на запит на отримання всіх image
    image_name Ubuntu24_new Ні Назва Image
    min_disk 2 Ні Мінімальний розмір диска instance, який потрібен для використання цього образу
    min_ram 3 Ні Мінімальний розмір пам'яті instance, який потрібен для використання цього образу
    os_distro altlinux Ні Назва ОС
    os_version 8 Ні Версія ОС
    architecture x86_64 Ні Архітектура image
    protected off Ні Дозволено чи видаляти image

    Спробуємо виконати наступний запит у консолі:

    curl --location 'https://api.zomro.com/' \
    --form 'func="image.edit"' \
    --form 'auth="00bef0b977845f71a1583a2c"' \
    --form 'out="json"' \
    --form 'sok="ok"' \
    --form 'elid="5206258"' \
    --form 'image_name="Ubuntu24_new"' \
    --form 'min_disk="2"' \
    --form 'min_ram="3"' \
    --form 'os_distro="altlinux"' \
    --form 'os_version="8"' \
    --form 'architecture="x86_64"' \
    --form 'protected="on"'

    Після виконання запиту можна переконатися, що дані image змінилися:

     

    Видалення image

     

    Для видалення Image виконуємо наступний запит:

     

    Метод: POST

    Тіло запиту (Form-data):

    Параметр Приклад значення Обов'язковий параметр Опис значення
    func image.delete Так Функція для видалення зображення
    auth 21fc199...c43f71 Ні Токен сесії. Це один з варіантів авторизації. Докладніше про інші варіанти описано тут
    out json Так Тип відповіді, яку очікувати
    elid 5206258 Так ID image. Це значення можна отримати у відповіді на запит на отримання всіх image

    Спробуємо виконати наступний запит у консолі:

    curl --location 'https://api.zomro.com/' \
    --form 'func="image.delete"' \
    --form 'auth="9f467da30d0bd6c56fed1b58"' \
    --form 'out="json"' \
    --form 'elid="5206258"'

    Також варто звернути увагу на те, що видалити image потрібно, щоб статус «protected» мав значення «off».

    Після виконання запиту, бачимо успішне видалення image.

     

    Також пропонуємо вивчити статті, які можуть бути корисними для взаємодії з продуктами Cloud VPS за допомогою API: