Для интеграторов

Эта документация для интеграторов, например агрегаторов, имеющих собственную платформу, позволяющую клиентам делать заказы.

С помощью вышеуказанных методов можно получить информацию (филиалы, продукты, категории и т. д.) о бренде, зарегистрированном в Delever, и отправить заказ в Delever.

Integrator User Login

post

Integrator user login

Body
client_idstringOptional

client_id

client_secretstringRequired

client_secret

grant_typestringOptional

grant_type

scopestringOptional

scope

Responses
200
OK
application/json
post
POST /v1/security/oauth/token HTTP/1.1
Host: 
Content-Type: application/x-www-form-urlencoded
Accept: */*
Content-Length: 78

"client_id='text'&client_secret='text'&grant_type='text'&scope='text'"
{
  "access_token": "text"
}

Получить филиалы

get

API для получения филиалов с адресами

Authorizations
Responses
200
OK
application/json
get
GET /v1/restaurants HTTP/1.1
Host: 
Authorization: YOUR_API_KEY
Accept: */*
{
  "places": [
    {
      "address": "text",
      "id": "text",
      "title": "text"
    }
  ]
}

Создание заказа в системе ресторана

post

API для создания заказа

Authorizations
Body
commentstringOptional

Дополнительная информация о заказе

discriminatorstringOptional

Дискриминатор схемы обьекта. Для YandexOrder равен "yandex"

eatsIdstringOptional

Сквозной идентификатор заказа на стороне Яндекс.Еды в формате DDDDDD-DDDDDDD

personsintegerOptional

Количество персон, на которых делается заказ. Может влиять на количество комплектов приборов

platformstringOptional

Идентификатор платформы. YE - Yandex Eda, DC - Delivery club

restaurantIdstringOptional

Внутренний идентификатор заведения в системе партнера, в которое передаётся заказ. Формат свободный, рекомендуется UUID4

Responses
200
OK
application/json
post
POST /v1/order HTTP/1.1
Host: 
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 459

{
  "comment": "text",
  "deliveryInfo": {
    "clientName": "text",
    "courierArrivementDate": "text",
    "phoneNumber": "text"
  },
  "discriminator": "text",
  "eatsId": "text",
  "items": [
    {
      "id": "text",
      "modifications": [
        {
          "id": "text",
          "name": "text",
          "price": 1,
          "quantity": 1
        }
      ],
      "name": "text",
      "price": 1,
      "promos": [
        {
          "discount": 1,
          "type": "text"
        }
      ],
      "quantity": 1
    }
  ],
  "paymentInfo": {
    "itemsCost": 1,
    "paymentType": "text"
  },
  "persons": 1,
  "platform": "text",
  "promos": [
    {
      "discount": 1,
      "type": "text"
    }
  ],
  "restaurantId": "text"
}
{
  "orderId": "text",
  "result": "text"
}

Получить заказ

get

API для получения заказа

Authorizations
Path parameters
orderIdstringRequired

orderId

Responses
200
OK
application/json
get
GET /v1/order/{orderId} HTTP/1.1
Host: 
Authorization: YOUR_API_KEY
Accept: */*
{
  "comment": "text",
  "deliveryInfo": {
    "clientName": "text",
    "courierArrivementDate": "text",
    "phoneNumber": "text"
  },
  "discriminator": "text",
  "eatsId": "text",
  "items": [
    {
      "id": "text",
      "modifications": [
        {
          "id": "text",
          "name": "text",
          "price": 1,
          "quantity": 1
        }
      ],
      "name": "text",
      "price": 1,
      "promos": [
        {
          "discount": 1,
          "type": "text"
        }
      ],
      "quantity": 1
    }
  ],
  "paymentInfo": {
    "itemsCost": 1,
    "paymentType": "text"
  },
  "persons": 1,
  "platform": "text",
  "promos": [
    {
      "discount": 1,
      "type": "text"
    }
  ],
  "restaurantId": "text"
}

Получить статус заказа

get

API для получения статуса заказа

Authorizations
Path parameters
orderIdstringRequired

orderId

Responses
200
OK
application/json
get
GET /v1/order/{orderId}/status HTTP/1.1
Host: 
Authorization: YOUR_API_KEY
Accept: */*
{
  "comment": "text",
  "status": "text",
  "updatedAt": "text"
}

Обновление заказа в системе ресторана

put

API для изменения заказа

Authorizations
Path parameters
orderIdstringRequired

orderId

Body
commentstringOptional

Дополнительная информация о заказе

discriminatorstringOptional

Дискриминатор схемы обьекта. Для YandexOrder равен "yandex"

eatsIdstringOptional

Сквозной идентификатор заказа на стороне Яндекс.Еды в формате DDDDDD-DDDDDDD

personsintegerOptional

Количество персон, на которых делается заказ. Может влиять на количество комплектов приборов

platformstringOptional

Идентификатор платформы. YE - Yandex Eda, DC - Delivery club

restaurantIdstringOptional

Внутренний идентификатор заведения в системе партнера, в которое передаётся заказ. Формат свободный, рекомендуется UUID4

Responses
200
OK
application/json
put
PUT /v1/order/{orderId} HTTP/1.1
Host: 
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 459

{
  "comment": "text",
  "deliveryInfo": {
    "clientName": "text",
    "courierArrivementDate": "text",
    "phoneNumber": "text"
  },
  "discriminator": "text",
  "eatsId": "text",
  "items": [
    {
      "id": "text",
      "modifications": [
        {
          "id": "text",
          "name": "text",
          "price": 1,
          "quantity": 1
        }
      ],
      "name": "text",
      "price": 1,
      "promos": [
        {
          "discount": 1,
          "type": "text"
        }
      ],
      "quantity": 1
    }
  ],
  "paymentInfo": {
    "itemsCost": 1,
    "paymentType": "text"
  },
  "persons": 1,
  "platform": "text",
  "promos": [
    {
      "discount": 1,
      "type": "text"
    }
  ],
  "restaurantId": "text"
}
{
  "result": "text"
}

Отменить заказ

delete

API для отмены заказа

Authorizations
Path parameters
orderIdstringRequired

orderId

Body
commentstringOptional
eatsIdstringOptional
Responses
200
OK
application/json
delete
DELETE /v1/order/{orderId} HTTP/1.1
Host: 
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 34

{
  "comment": "text",
  "eatsId": "text"
}
{
  "message": null
}

Выдача актуального на текущий момент меню ресторана

get

Integrator Позиции, содержащие схематические или логические несоответствия (слишком длинная строка, цена равная 0.00) могут быть проигнорированы. Актуальная версия модели ответа - application/vnd.eats.menu.composition.v2+json

Authorizations
Path parameters
restaurantIdstringRequired

restaurantId

Responses
200
OK
application/json
get
GET /v1/menu/{restaurantId}/composition HTTP/1.1
Host: 
Authorization: YOUR_API_KEY
Accept: */*
{
  "categories": [
    {
      "id": "text",
      "images": [
        {
          "updatedAt": "text",
          "url": "text"
        }
      ],
      "name": "text",
      "parentId": "text",
      "sortOrder": 1
    }
  ],
  "items": [
    {
      "categoryId": "text",
      "description": "text",
      "id": "text",
      "images": [
        {
          "hash": "text",
          "url": "text"
        }
      ],
      "isCatchweight": true,
      "measure": 1,
      "measureUnit": "text",
      "modifierGroups": [
        {
          "id": "text",
          "maxSelectedModifiers": 1,
          "minSelectedModifiers": 1,
          "modifiers": [
            {
              "id": "text",
              "maxAmount": 1,
              "minAmount": 1,
              "name": "text",
              "price": 1,
              "serviceCodesUz": {
                "mxikCodeUz": "text",
                "packageCodeUz": "text"
              },
              "vat": 1
            }
          ],
          "name": "text",
          "sortOrder": 1
        }
      ],
      "name": "text",
      "nutrients": [
        {
          "calories": "text",
          "carbohydrates": "text",
          "fat": "text",
          "is_deactivated": true,
          "proteins": "text"
        }
      ],
      "price": 1,
      "serviceCodesUz": {
        "mxikCodeUz": "text",
        "packageCodeUz": "text"
      },
      "sortOrder": 1,
      "vat": 1,
      "weightQuantum": 1
    }
  ],
  "lastChange": "text"
}

Выдача позиций меню недоступных для заказа на текущий момент

get

Integrator Позиции, содержащие схематические или логические несоответствия (слишком длинная строка, остаток равен -10.00) могут быть проигнорированы. Актуальная версия модели ответа - application/vnd.eats.menu.availability.v2+json

Authorizations
Path parameters
restaurantIdstringRequired

restaurantId

Responses
200
OK
application/json
get
GET /v1/menu/{restaurantId}/availability HTTP/1.1
Host: 
Authorization: YOUR_API_KEY
Accept: */*
{
  "items": [
    {
      "itemId": "text",
      "stock": 1
    }
  ],
  "modifiers": [
    {
      "modifierId": "text",
      "stock": 1
    }
  ]
}

Выдача акционных блюд в связке с меню

get
Authorizations
Path parameters
restaurantIdstringRequired

restaurantId

Responses
200
OK
application/json
get
GET /v1/menu/{restaurantId}/promos HTTP/1.1
Host: 
Authorization: YOUR_API_KEY
Accept: */*
{
  "promoItems": [
    {
      "id": "text",
      "promoId": "text"
    }
  ]
}

Last updated