API
Заказы

Заказы

Метод orders

Вы можете получить информация о заказах по методу orders

  • URL: https://api.host.gokarvon.com/v1/orders
  • Метод: GET
  • Параметры: Нет
  • Content-Type: application/json
ℹ️
orders возвращает 20 последних заказов отсортированных по дате начала

Пример ответа

{
    "data": {
        "orders": [
            {
                // Информация о заказе
            }
        ]
    }
}

Параметры ответа

Параметр Описание
orders Массив заказов

Метод orders/{id}

Вы можете получить информацию о конкретном заказе по методу orders/{id}

  • URL: https://api.host.gokarvon.com/v1/orders/{id}
  • Метод: GET
  • Параметры: ID заказа
  • Content-Type: application/json

Пример ответа

{
    "data": {
        "alertMessage": {},
        "alertTitle": {},
        "blackListSuspects": [],
        "createdAt": "2025-03-11T03:52:53.086Z",
        "deathAt": "1970-01-01T00:00:00Z",
        "from": "2025-03-12T04:00:00Z",
        "id": "d06d1c2d-31d5-4979-8946-4c3e3e6bcc6c",
        "info": null,
        "label": "Столик на балконе Behruz Pulatov",
        "locationId": "a19d3873-6f0f-456a-884f-79b4592b33f5",
        "numberOfClients": 1,
        "orderCancellation": {
            "description": "Order canceled by partner",
            "guilty": 0,
            "id": "0162e6c6-4fd7-49da-9c76-6127c45168d3",
            "orderId": "da4860ec-eadd-4bcf-b778-086a7a2a199c",
            "refundPriceCurrency": 0,
            "refundedPrice": 0,
            "status": 1
        },
        "partnerId": "5ioGXTaq1jXOxwB7F7yKTFAxTmn2",
        "paymentMode": 1,
        "price": {
            "addOns": [
                {
                    "description": "Pay for order later",
                    "id": "karvon",
                    "name": "Late payment",
                    "partnerId": "karvon",
                    "paymentType": 0,
                    "price": 0,
                    "priceCurrency": 0
                }
            ],
            "deposit": 0,
            "depositCurrency": 0,
            "partnerPrice": 0,
            "priceBreakdown": {
                "Late payment": 0,
                "product": 0,
                "serviceFee": 0
            },
            "refundablePrice": 0,
            "totalPrice": 0,
            "totalPriceCurrency": 0
        },
        "productId": "23d89adc-cd1a-437b-a1e0-2867e897bbf0",
        "productLinkId": "0baee57a-bd23-4a3a-86ca-7b3cc143b9c8",
        "status": 2,
        "to": "2025-03-12T05:00:00Z",
        "type": 12,
        "userId": "5ioGXTaq1jXOxwB7F7yKTFAxTmn2",
        "userInfo": "+998909032004"
    },
    "error": 0
}

Параметры ответа

Параметр Тип данных JSON Описание
alertMessage object Сообщение оповещения
alertTitle object Заголовок оповещения
blackListSuspects ? Список подозреваемых из черного списка Karvon которые могут быть связаны с клиентом
createdAt string Дата создания
deathAt string Дата удаления из базы данных
from string Дата начала
id string ID заказа
info string Информация
label string Название заказа
locationId string ID локации
numberOfClients number int Количество клиентов
orderCancellation object Информация об отмене заказа
partnerId string ID партнера
paymentMode number int Способ оплаты
price object Цены
productId string ID продукта
productLinkId string ID продукта
status number int Статус заказа
to string Дата окончания
type number int Тип заказа
userId string ID пользователя
userInfo string Информация о пользователе

Параметры orderCancellation

Параметр Тип данных JSON Описание
description string Описание отмены заказа
guilty number int По чьей вине отменен заказ
id string ID отмены заказа
orderId string ID заказа
refundPriceCurrency number int Валюта возврата
refundedPrice number float Возвратная цена
status number int Статус отмены заказа
По чьей вине отменен заказ guilty
Виновник Описание Название в системе Karvon
0 Партнер PARTNER
1 Пользователь USER
2 Неизвестно UNKNOWN
Статус отмены заказа status
Статус Описание Название в системе Karvon
0 Ожидание подтверждения PENDING_CANCELLATION_STATUS
1 Подтверждено CONFIRMED_CANCELLATION_STATUS

Тип оплаты paymentMode

Тип Описание Название в системе Karvon
0 Оплата онлайн через Karvon NOW
1 Оплата по прибытии LATER

Параметры price

Параметр Тип данных JSON Описание
addOns array Дополненительные услуги
deposit number float Депозит
depositCurrency number int Валюта депозита
partnerPrice number float Цена партнера
priceBreakdown object Разбивка цены
priceBreakdown/rent number float Цена услуги
priceBreakdown/serviceFee number float Сервисный сбор
refundablePrice number float Возвратная цена
totalPrice number float Общая цена
totalPriceCurrency number int Валюта общей цены
Параметры addOns
Параметр Тип данных JSON Описание
description string Описание дополнительной услуги
id string ID дополнительной услуги
name string Название дополнительной услуги
partnerId string ID партнера
paymentType number int Тип оплаты
price number float Цена
priceCurrency number int Валюта цены
Типы оплаты paymentType
Тип Описание Название в системе Karvon
0 Фиксированная цена FIXED
1 Цена за час PER_HOUR
2 Цена за день PER_DAY

Cтатус заказа status

Статус Описание Название в системе Karvon
0 Ожидание подтверждения от партнера PENDING
1 Активный и оплаченный заказ ACTIVE
2 Отмененный заказ CANCELED
3 Оконченный заказ FINISHED
4 Заказ в процессе создания CREATING
5 Заказ в процессе предоставления услуги INPROGRESS

Категория продукта type

Категория Описание Название в системе Karvon
0 Другое OTHER
1 Аренда спортивного оборудования SPORTS_LOCATION_RENTAL
2 Аренда места для мероприятий EVENT_LOCATION_RENTAL
3 Аренда жилья HOUSING_RENTAL
4 Аренда автомобиля CAR_RENTAL
5 Аренда фотостудии PHOTO_STUDIO_RENTAL
6 Аренда оборудования EQUIPMENT_RENTAL
7 Услуги парикмахера BARBER_SERVICE
8 Услуги репетитора TUTOR_SERVICE
9 Игры на ПК PC_GAMING
10 Игры на консолях CONSOLE_GAMING
11 Аренда игровой кабины GAMING_CABIN_RENTAL
12 Ресторан RESTAURANT
13 Частный ужин PRIVATE_DINING
14 Организация мероприятий EVENT_ORGANIZATION

Метод создания orders

Вы можете создать заказ по методу orders

  • URL: https://api.host.gokarvon.com/v1/orders
  • Метод: POST
  • Параметры: В теле запроса
  • Content-Type: application/json

Пример запроса

{
    "from": "2025-04-17T23:37:31.256Z",
    "info": "No info",
    "label": "Main Zone BEHRUZJON POLATOV",
    "locationId": "b5c2aa0e-1329-4629-817e-a77810846c04",
    "numberOfClients": 60,
    "price": {
        "addOns": [],
        "deposit": 0,
        "depositCurrency": 0,
        "partnerPrice": 15000,
        "priceBreakdown": {
            "product": 15000,
            "serviceFee": 0
        },
        "refundablePrice": 15000,
        "totalPrice": 15000,
        "totalPriceCurrency": 0
    },
    "productId": "b38d4223-a766-42ea-8ba3-7e4919323ef7",
    "productLinkId": "6e719fc7-47a8-4248-bf8c-a6ab51303099",
    "to": "2025-04-18T04:37:31.256Z",
    "userInfo": "+998909032004"
}

Параметры запроса

⚠️
В теле запроса нельзя передавать другие параметры из-за безопасности. Такие запросы будут отклонены.
Параметр Тип данных JSON Описание Обязательность
from string Дата начала Обязательно
info string Информация НЕ Опционально
label string Название заказа НЕ Обязательно
locationId string ID локации Обязательно
numberOfClients number int Количество клиентов Обязательно
price object Цены НЕ Обязательно
productId string ID продукта Обязательно
productLinkId string ID привязки продукта к локации Обязательно
to string Дата окончания Обязательно
userInfo string Информация о пользователе НЕ Обязательно

Параметры price

Параметр Тип данных JSON Описание
addOns array Дополненительные услуги
deposit number float Депозит
depositCurrency number int Валюта депозита
partnerPrice number float Цена партнера
priceBreakdown object Разбивка цены
priceBreakdown/rent number float Цена услуги
priceBreakdown/serviceFee number float Сервисный сбор
refundablePrice number float Возвратная цена
totalPrice number float Общая цена
totalPriceCurrency number int Валюта общей цены

Параметры addOns

Параметр Тип данных JSON Описание
description string Описание дополнительной услуги
id string ID дополнительной услуги
name string Название дополнительной услуги
partnerId string ID партнера
paymentType number int Тип оплаты
price number float Цена
priceCurrency number int Валюта цены
Типы оплаты paymentType
Тип Описание Название в системе Karvon
0 Фиксированная цена FIXED
1 Цена за час PER_HOUR
2 Цена за день PER_DAY

Пример ответа

{
    "error": 0,
    "orderId": "d06d1c2d-31d5-4979-8946-4c3e3e6bcc6c",
    "message": "Order created successfully"
}

Параметры ответа

Параметр Тип данных JSON Описание
error number int / string Ошибка
orderId string ID заказа
message string Сообщение

Пример ошибки

{
    "error": 1,
    "message": "Error message"
}
{
    "error": "Product is not available at this time"
}

Метод принятия orders/{id}/accept

Вы можете принять заказ по методу orders/{id}/accept

⚠️
Можно принять заказ только если он находится в статусе PENDING (0). Заказы созданные вам имеют статус ACTIVE (1) изначально.

Статус заказа после принятия изменится на ACTIVE (1)

  • URL: https://api.host.gokarvon.com/v1/orders/{id}/accept
  • Метод: POST
  • Параметры: ID заказа
  • Content-Type: application/json

Пример запроса

{
}

Пример ответа

{
    "error": 0,
    "message": "Order accepted successfully"
}

Пример ошибки

{
    "error": 1,
    "message": "Error message"
}
{
    "error": "Error while getting conflicts: Cannot accept not pending order"
}

Метод отмены orders/{id}/cancel

Вы можете отменить заказ по методу orders/{id}/cancel. Виновник отмены заказа будет партнер

⚠️
Можно отменить заказ только если он находится в статусе PENDING (0) или ACTIVE (1). Заказы созданные вам имеют статус ACTIVE (1) изначально.

Статус заказа после отмены изменится на CANCELED (2)

  • URL: https://api.host.gokarvon.com/v1/orders/{id}/cancel
  • Метод: POST
  • Параметры: ID заказа
  • Content-Type: application/json

Пример запроса

{
}

Пример ответа

{
    "error": 0,
    "message": "Order canceled successfully"
}

Пример ошибки

{
    "error": 1,
    "message": "Error message"
}
{
    "error": "Error: Cannot cancel not active order"
}

Метод отмены по вине клинета orders/{id}/cancelByUser

Вы можете отменить заказ по методу orders/{id}/cancelByUser. Виновник отмены заказа будет клиент

⚠️
Можно отменить заказ только если он находится в статусе ACTIVE (1) И у заказа есть правильный userId И paymentMode равен NOW (0). Заказы созданные вам имеют статус ACTIVE (1) изначально, но у них нет userId.

Статус заказа после отмены изменится на CANCELED (2)

  • URL: https://api.host.gokarvon.com/v1/orders/{id}/cancelByUser
  • Метод: POST
  • Параметры: ID заказа
  • Content-Type: application/json

Пример запроса

{
}

Пример ответа

{
    "error": 0,
    "message": "Order canceled by user successfully"
}

Пример ошибки

{
    "error": 1,
    "message": "Error message"
}
{
    "error": "Error: Cannot cancel not active order"
}

Метод старта orders/{id}/start

Вы можете начать заказ по методу orders/{id}/start. Заказ должен быть в статусе ACTIVE (1)

⚠️
Можно начать заказ только если он находится в статусе ACTIVE (1). Заказы созданные вам имеют статус ACTIVE (1) изначально.

Статус заказа после начала изменится на INPROGRESS (5)

  • URL: https://api.host.gokarvon.com/v1/orders/{id}/start
  • Метод: POST
  • Параметры: ID заказа
  • Content-Type: application/json

Пример запроса

{
}

Пример ответа

{
    "error": 0,
    "message": "Order started successfully"
}

Пример ошибки

{
    "error": 1,
    "message": "Error message"
}
{
    "error": "Error: Cannot start not active order"
}

Метод завершения orders/{id}/finish

Вы можете завершить заказ по методу orders/{id}/finish. Заказ должен быть в статусе INPROGRESS (5)

⚠️
Можно завершить заказ только если он находится в статусе INPROGRESS (5). Заказы созданные вам имеют статус ACTIVE (1) изначально.

Статус заказа после завершения изменится на FINISHED (3)

  • URL: https://api.host.gokarvon.com/v1/orders/{id}/finish
  • Метод: POST
  • Параметры: ID заказа
  • Content-Type: application/json

Пример запроса

{
}

Пример ответа

{
    "error": 0,
    "message": "Order finished successfully"
}

Пример ошибки

{
    "error": 1,
    "message": "Error message"
}
{
    "error": "Error: Cannot finish not in progress order"
}