Перейти к содержанию

Заказ сервиса

Общая информация

В API Нимбиус заказ сервисов реализуется через следующие коллекции:

  • /api/service_orders/cart/ — корзина заказов

Список заказов в корзине

Формат запроса

GET /api/service_orders/cart/

Запрос

Пример запроса
curl -i 'https://nimbius-portal-admin:8443/api/service_orders/cart/service_requests\
?expand=resources' \
    -H 'accept: application/json' \
    -H 'authorization: Basic dXNlck5hbWU6dXNlclBhc3N3b3Jk'

Ответ

Пример ответа
{
    "name": "service_requests",
    "count": 6546,
    "subcount": 1,
    "pages": 7,
    "resources": [
        {
            "href": "https://nimbius-portal-admin/api/service_orders/cart/service_requests/21631",
            "id": "21631",
            "description": "Provisioning Service [Виртуальная машина] from [Виртуальная машина]",
            "approval_state": "pending_approval",
            "type": "ServiceTemplateProvisionRequest",
            "created_on": "2025-12-17T06:21:51Z",
            "updated_on": "2025-12-17T06:21:51Z",
            "fulfilled_on": null,
            "requester_id": "119",
            "requester_name": "keycloak-test",
            "request_type": "clone_to_service",
            "request_state": "pending",
            "message": "Service_Template_Provisioning - Request Created",
            "status": "Ok",
            "options": {
                "dialog": {
                    "dialog_tag_0_environment": "vmware",
                    "dialog_tag_0_location": "v-tst-ctr01.cloud.lab",
                    "dialog_placement_rp_name": "Nimbius01",
                    "dialog_service_name": "s-api-desc01",
                    "dialog_service_description": null,
                    "dialog_source_id": "10819",
                    "dialog_option_0_cpu_flavor": "1x1",
                    "dialog_vm_memory": 2,
                    "dialog_base_disks_size": "16",
                    "dialog_tag_0_disk_type": null,
                    "dialog_vlan": "dvs-vlan3328",
                    "dialog_vm_name": "v-api-desc01",
                    "dialog_vm_description": null,
                    "dialog_additional_disk_size": null,
                    "dialog_additional_disk_type": null,
                    "dialog_service_billing": "true",
                    "dialog_rollback_enable": "true"
                },
                "workflow_settings": {
                    "resource_action_id": "236",
                    "dialog_id": "9"
                },
                "initiator": null,
                "src_id": "4",
                "request_options": {
                    "submit_workflow": true
                },
                "cart_state": "cart",
                "requester_group": "NimbiusStend_Admins"
            },
            "userid": "keycloak-test",
            "source_id": "4",
            "source_type": "ServiceTemplate",
            "destination_id": null,
            "destination_type": null,
            "tenant_id": "1",
            "service_order_id": "6576",
            "process": false,
            "cancelation_status": null,
            "initiated_by": "user",
            "parent_id": null,
            "actions": [
                {
                    "name": "cancel",
                    "method": "post",
                    "href": "https://nimbius-portal-admin/api/service_orders/cart/service_requests/21631"
                },
                {
                    "name": "remove",
                    "method": "post",
                    "href": "https://nimbius-portal-admin/api/service_orders/cart/service_requests/21631"
                }
            ]
        }
    ],
    "actions": [
        {
            "name": "add",
            "method": "post",
            "href": "https://nimbius-portal-admin/api/service_orders/cart/service_requests"
        },
        {
            "name": "cancel",
            "method": "post",
            "href": "https://nimbius-portal-admin/api/service_orders/cart/service_requests"
        },
        {
            "name": "remove",
            "method": "post",
            "href": "https://nimbius-portal-admin/api/service_orders/cart/service_requests"
        }
    ],
    "links": {
        "self": "https://nimbius-portal-admin/api/service_orders/cart/service_requests?expand=resources\u0026offset=0",
        "next": "https://nimbius-portal-admin/api/service_orders/cart/service_requests?expand=resources\u0026offset=1000",
        "first": "https://nimbius-portal-admin/api/service_orders/cart/service_requests?expand=resources\u0026offset=0",
        "last": "https://nimbius-portal-admin/api/service_orders/cart/service_requests?expand=resources\u0026offset=6000"
    }
}

Оформление заказа

Формат запроса

POST /api/service_orders/cart/

Запрос

Пример запроса
curl -i -X POST 'https://nimbius-portal-admin:8443/api/service_orders' \
    -H 'accept: application/json' \
    -H 'authorization: Basic dXNlck5hbWU6dXNlclBhc3N3b3Jk'

Ответ

Пример ответа
{
    "results": [
        {
            "href": "https://nimbius-portal-admin/api/service_orders/6577",
            "id": "6577",
            "name": "Order # 6577",
            "tenant_id": "1",
            "user_id": "119",
            "user_name": "keycloak-test",
            "state": "cart",
            "created_at": "2025-12-17T06:24:17Z",
            "updated_at": "2025-12-17T06:24:17Z",
            "placed_at": null,
            "type": "ServiceOrderCart"
        }
    ]
}