Модели перечислены отдельно и раскрываются также непосредственно у методов, где они используются.
Billing17 полей
idinteger · int64
Идентификатор биллинга. Проставляется автоматически
namestring
Наименование операции биллинга
productIdinteger · int64
Идентификатор товара, для которого рассчитан биллинг
itemIdinteger · int64
привязка к единице хранения на складе
orderIdinteger · int64
Заказ по которому был рассчитан биллинг
pricenumber · double
Поле price.
volumeinteger · int32
объем для операций, которые зависят от объема
weightinteger · int32
Поле weight.
quantityinteger · int32
Поле quantity.
totalPricenumber · double
Поле totalPrice.
tariffIdinteger · int64
идентификатор тарифа для хранения или короба
linkedClientIdinteger · int64
идентификатор клиента фулфилмента
clientIdinteger · int64
идентификатор клиента самого фулфилмента
fromstring · date-time
дата тарификации от
tostring · date-time
дата тарификации до
datestring · date-time
дата операции
userIdinteger · int64
идентификатор пользователя фулфилмента, который добавил операцию
FindResponseBilling1 полей
rowsBilling[]
Строки с результатом поиска
Контракт ошибок
Как API возвращает прикладные ошибки
Код ошибки одинаков для всех локалей, а текст для пользователя переводится сервером. Поэтому бизнес-логику стройте по error, а localMessage используйте только для отображения.
error
Стабильный машинный код ошибки для логики интеграции.
localMessage
Готовое сообщение на языке пользователя API-токена.
params
Значения
文
Язык localMessage определяется полем lang пользователя, которому принадлежит API-токен. Язык страницы документации и заголовок Accept-Language его не переключают; если язык пользователя не указан, используется русский.
RUПользователь с локалью ru
{
"error": "error_brand_already_exists",
"localMessage": "Бренд Base уже существует",
"params": {
"name": "Base"
}
}
Идентификатор биллинга. Проставляется автоматически
name
string
Нет
Наименование операции биллинга
productId
integer · int64
Нет
Идентификатор товара, для которого рассчитан биллинг
itemId
integer · int64
Нет
привязка к единице хранения на складе
orderId
integer · int64
Нет
Заказ по которому был рассчитан биллинг
price
number · double
Нет
Поле price.
volume
integer · int32
Нет
объем для операций, которые зависят от объема
weight
integer · int32
Нет
Поле weight.
quantity
integer · int32
Нет
Поле quantity.
totalPrice
number · double
Нет
Поле totalPrice.
tariffId
integer · int64
Нет
идентификатор тарифа для хранения или короба
linkedClientId
integer · int64
Нет
идентификатор клиента фулфилмента
clientId
integer · int64
Нет
идентификатор клиента самого фулфилмента
from
string · date-time
Нет
дата тарификации от
to
string · date-time
Нет
дата тарификации до
date
string · date-time
Нет
дата операции
userId
integer · int64
Нет
идентификатор пользователя фулфилмента, который добавил операцию
{
"rows": "string"
}
Ошибки5
Прикладные ошибки обычно возвращаются как JSON с полями error, localMessage и params. Ориентируйтесь на error; локализованный текст может меняться. Как API возвращает прикладные ошибки ↑
401auth_required
Требуется авторизация
Заголовок Authorization отсутствует, пуст или содержит недействительный токен.
400error_access_denied
Недостаточно прав
Токен существует, но его роль не позволяет выполнить операцию.
500error_unknown
Непредвиденная ошибка
Внутренняя ошибка. Сохраните время запроса и обратитесь в поддержку, не повторяя мутацию вслепую.
400error_no_client
Клиент не найден или был удален. Напишите в поддержку
Персональная ошибка этого метода. Для программной логики используйте стабильный код error_no_client; localMessage содержит приведённый выше перевод.
400error_subscription_expired
У вас закончился срок действия тарифа. Оплатите тариф для продолжения использования сервиса.
Персональная ошибка этого метода. Для программной логики используйте стабильный код error_subscription_expired; localMessage содержит приведённый выше перевод.