Pular para o conteúdo principal

Delivery Direto Admin API (1.0.0)

Download OpenAPI specification:Download

Esta é a especificação do Delivery Direto Admin API, que é referente às operações no painel do administrativo das lojas do Delivery Direto.

Notas gerais:

  • Todos os Endpoints requerem o uso de um ID do Delivery Direto. Esse ID identifica unicamente uma loja e deve ser passado pelos Headers.

    • Nome do Header: X-DeliveryDireto-ID
  • Todas as integrações criadas a partir de 01/12/2021 devem enviar o Header X-DeliveryDireto-Client-Id em todas as requisições, contendo o client_id utilizado pela integração. Integrações criadas antes dessa data tem até o dia 01/02/2022 para se adaptar.

Authentication

Operações de autenticação utilizando OAuth2

Realizar autenticação utilizando OAuth

Authorizations:
deliverydiretoId

Responses

Response samples

Content type
application/json
{
  • "access_token": "3d4fcad2...",
  • "token_type": "bearer",
  • "expires_in": 21600,
  • "refresh_token": "4ad2123c..."
}

Administrators

Informações sobre os administradores e operadores

Lista de administradores e operadores

Authorizations:
(deliverydiretoIdoauth)
query Parameters
offset
integer >= 0
Default: 0

Posição inicial do objeto a ser retornado.

limit
integer <= 100
Default: 30

Quantidade de objetos a ser retornado.

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Criar um administrador ou operador

Authorizations:
(deliverydiretoIdoauth)
Request Body schema: application/json

Dados do administrador

firstName
required
string
lastName
required
string
email
required
string
mobilePhone
string or null
document
string or null
level
required
string
hasPermissionToEditOrder
required
boolean
hasPermissionToDeleteOrder
required
boolean

Responses

Request samples

Content type
application/json
{
  • "firstName": "João",
  • "lastName": "da Silva",
  • "email": "joaodasilva@mailinator.com",
  • "mobilePhone": "11911111111",
  • "document": "12345678912",
  • "level": "COMMON",
  • "hasPermissionToEditOrder": true,
  • "hasPermissionToDeleteOrder": true
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Editar dados de um administrador ou operador

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

Identificador do administrador ou operador

Request Body schema: application/json

Dados do administrador ou operador

hasPermissionToEditOrder
boolean or null
Default: true

Pode editar um pedido?

hasPermissionToDeleteOrder
boolean or null
Default: true

Pode apagar um pedido?

firstName
string or null

O primeiro nome do administrador ou operador.

lastName
string or null

O sobrenome do administrador ou operador.

email
string or null

O e-mail do administrador ou operador.

password
string or null

Senha do administrador ou operador.

Responses

Request samples

Content type
application/json
{
  • "hasPermissionToEditOrder": true,
  • "hasPermissionToDeleteOrder": true,
  • "firstName": "João",
  • "lastName": "da Silva",
  • "email": "joaodasilva@mailinator.com",
  • "password": "senha123"
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Apagar um operador (somente operadores podem ser apagados via API)

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

Identificador do operador

Responses

Response samples

Content type
application/json
{
  • "status": "fail",
  • "errors": [
    ]
}

Configurações do administrador logado

Authorizations:
(deliverydiretoIdoauth)

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Registra o device do administrador para receber notificações de novos pedidos

Authorizations:
(deliverydiretoIdoauth)

Responses

Response samples

Content type
application/json
{
  • "status": "fail",
  • "errors": [
    ]
}

Informações sobre o administrador logado

Authorizations:
(deliverydiretoIdoauth)

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Informações sobre os fatores de autenticação ativos do administrador logado

Authorizations:
(deliverydiretoIdoauth)

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Inicia o processo de cadastro do fator de autenticação TOTP (aplicativo autenticador)

Authorizations:
(deliverydiretoIdoauth)

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Confirma o cadastro do fator de autenticação TOTP (aplicativo autenticador)

Authorizations:
(deliverydiretoIdoauth)
Request Body schema: application/json

Dados usados para confirmar o cadastro do fator

confirmationTotpCode
required
string

O código gerado pelo aplicativo autenticador.

Responses

Request samples

Content type
application/json
{
  • "confirmationTotpCode": "123456"
}

Response samples

Content type
application/json
{
  • "status": "success"
}

Lista os códigos de recuperação disponíveis para o administrador, caso ele os tenha.

Authorizations:
(deliverydiretoIdoauth)

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Gera novos códigos de recuperação para o administrador.

Authorizations:
(deliverydiretoIdoauth)

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Banners

Informações sobre banners promocionais de uma loja

Lista os banners promocionais da loja

Authorizations:
(deliverydiretoIdoauth)

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Cria um novo banner promocional

Authorizations:
(deliverydiretoIdoauth)
Request Body schema: application/json

Informações do novo banner

name
required
string

Nome do banner

photoUrl
required
string or null

URL da imagem do banner

platforms
Array of strings
Items Enum: "WEB" "ANDROID" "IOS"

Plataformas no qual o banner está habilidado para ser exibido

status
string
Default: "ACTIVE"
Enum: "ACTIVE" "INACTIVE"

Status do banner

type
string
Enum: "EXTERNAL_URL" "ITEM" "CATEGORY" "LOYALTY_PROGRAM" "MEMBER_GET_MEMBER" "REWARDS" "VOUCHER"

Tipo de banner

viewOrder
integer

Posição do banner utilizado para ordenação

ExternalUrlBannerDataDTO (object) or ItemBannerDataDTO (object) or CategoryBannerDataDTO (object) or LoyaltyProgramBannerDataDTO (object) or MemberGetMemberBannerDataDTO (object) or RewardsBannerDataDTO (object) or VoucherBannerDataDTO (object)

Dados extras de acordo com o tipo de banner

Array of objects (BannerAvailabilityDTO)

Horários que o banner fica disponível

Responses

Request samples

Content type
application/json
{
  • "name": "Promoção black friday",
  • "platforms": [
    ],
  • "status": "ACTIVE",
  • "type": "EXTERNAL_URL",
  • "viewOrder": 1,
  • "extraData": {},
  • "availabilities": [
    ]
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Lista os tipos de banners promocionais da loja

Authorizations:
(deliverydiretoIdoauth)

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Altera a posição dos banners promocionais informados

Authorizations:
(deliverydiretoIdoauth)
Request Body schema: application/json

Lista com os ids dos banners, na posição final dos banners

any

Responses

Request samples

Content type
application/json
null

Response samples

Content type
application/json
{
  • "status": "error",
  • "code": "invalid_fields",
  • "message": "Preencha os campos corretamente!"
}

Atualiza um banner promocional

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer <int64>

Identificador do banner

Request Body schema: application/json

Informações novas do banner

name
required
string

Nome do banner

photoUrl
required
string or null

URL da imagem do banner

platforms
Array of strings
Items Enum: "WEB" "ANDROID" "IOS"

Plataformas no qual o banner está habilidado para ser exibido

status
string
Default: "ACTIVE"
Enum: "ACTIVE" "INACTIVE"

Status do banner

type
string
Enum: "EXTERNAL_URL" "ITEM" "CATEGORY" "LOYALTY_PROGRAM" "MEMBER_GET_MEMBER" "REWARDS" "VOUCHER"

Tipo de banner

viewOrder
integer

Posição do banner utilizado para ordenação

ExternalUrlBannerDataDTO (object) or ItemBannerDataDTO (object) or CategoryBannerDataDTO (object) or LoyaltyProgramBannerDataDTO (object) or MemberGetMemberBannerDataDTO (object) or RewardsBannerDataDTO (object) or VoucherBannerDataDTO (object)

Dados extras de acordo com o tipo de banner

Array of objects (BannerAvailabilityDTO)

Horários que o banner fica disponível

Responses

Request samples

Content type
application/json
{
  • "name": "Promoção black friday",
  • "platforms": [
    ],
  • "status": "ACTIVE",
  • "type": "EXTERNAL_URL",
  • "viewOrder": 1,
  • "extraData": {},
  • "availabilities": [
    ]
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Apaga um banner promocional

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

Identificador do banner

Responses

Response samples

Content type
application/json
{
  • "status": "error",
  • "code": "invalid_fields",
  • "message": "Preencha os campos corretamente!"
}

Realiza o upload da imagem para utilizar no banner promocional

Authorizations:
(deliverydiretoIdoauth)
Request Body schema: multipart/form-data
file
required
string <file>

Arquivo a ser enviado

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": "string"
}

Business Hours

Informações sobre o horário de funcionamento da loja

Lista os horários de funcionamento da loja

Authorizations:
(deliverydiretoIdoauth)

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Criar os horários de funcionamento da loja

Authorizations:
(deliverydiretoIdoauth)
Request Body schema: application/json

Dados do horário de funcionamento

required
Array of objects (CreateBusinessHourDTO)

Lista de horários de funcionamento

Array
required
ISO8601Time (string)

Horário inicial de operação.

required
ISO8601Time (string)

Horário final de operação.

weekday
required
integer [ 1 .. 7 ]

Dia da semana desse horário de operação. Onde 1 representa o domingo e 7 o sábado.

Responses

Request samples

Content type
application/json
{
  • "businessHours": [
    ]
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Atualiza um horário de funcionamento da loja

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

Identificador desse horário de operação.

Request Body schema: application/json

Dados do horário de funcionamento

required
ISO8601Time (string)

Horário inicial de operação.

required
ISO8601Time (string)

Horário final de operação.

weekday
required
integer [ 1 .. 7 ]

Dia da semana desse horário de operação. Onde 1 representa o domingo e 7 o sábado.

Responses

Request samples

Content type
application/json
{
  • "shiftStart": "09:00:00-03:00",
  • "shiftEnd": "09:00:00-03:00",
  • "weekday": 3
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Apaga um horário de funcionamento da loja

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

Identificador desse horário de operação.

query Parameters
force
boolean

Força a exclusão do horário de funcionamento

Responses

Response samples

Content type
application/json
{
  • "status": "fail",
  • "errors": [
    ]
}

Lista configurações do horário de funcionamento da loja

Authorizations:
(deliverydiretoIdoauth)

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Atualiza as configurações do horário de funcionamento da loja

Authorizations:
(deliverydiretoIdoauth)
Request Body schema: application/json

Configurações do horário de funcionamento da loja a ser modificadas

timezone
string or null
acceptScheduledOrders
boolean or null
onlyScheduledOrders
boolean or null
maxDaysToSchedule
integer or null
advanceValueScheduledOrders
integer or null
advanceTypeScheduledOrders
string or null
alertEmailScheduledOrders
boolean or null

Responses

Request samples

Content type
application/json
{
  • "timezone": "string",
  • "acceptScheduledOrders": true,
  • "onlyScheduledOrders": true,
  • "maxDaysToSchedule": 0,
  • "advanceValueScheduledOrders": 0,
  • "advanceTypeScheduledOrders": "string",
  • "alertEmailScheduledOrders": true
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Categories

Informações sobre as categorias dos produtos

Listar as categorias

Authorizations:
(deliverydiretoIdoauth)
query Parameters
id
integer

Id da categoria.

name
string

Nome da categoria.

offset
integer >= 0
Default: 0

Posição inicial do objeto a ser retornado.

limit
integer <= 100
Default: 30

Quantidade de objetos a ser retornado.

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Criar uma nova categoria

Authorizations:
(deliverydiretoIdoauth)
Request Body schema: application/json
status
string or null
Enum: "ACTIVE" "DELETED"

Status da categoria

showOnMobile
boolean or null
hiddenWhenUnavailable
boolean or null
showOnlyImage
boolean or null
name
required
string
description
required
string
viewOrder
required
integer

Responses

Request samples

Content type
application/json
{
  • "status": "ACTIVE",
  • "showOnMobile": true,
  • "hiddenWhenUnavailable": true,
  • "showOnlyImage": true,
  • "name": "Bebidas",
  • "description": "Bebidas diversas não alcoólicas",
  • "viewOrder": 0
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Atualizar categoria

Authorizations:
(deliverydiretoIdoauth)
path Parameters
categoryId
required
integer

ID da categoria.

Request Body schema: application/json
showOnMobile
boolean or null
hiddenWhenUnavailable
boolean or null
showOnlyImage
boolean or null
status
string or null
name
string or null

Nome da categoria

description
string or null

Descrição da categoria

viewOrder
integer or null

Ordem de listagem da categoria

Responses

Request samples

Content type
application/json
{
  • "showOnMobile": true,
  • "hiddenWhenUnavailable": true,
  • "showOnlyImage": true,
  • "status": "string",
  • "name": "Bebidas",
  • "description": "Bebidas diversas não alcoólicas",
  • "viewOrder": 0
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Apagar uma categoria

Authorizations:
(deliverydiretoIdoauth)
path Parameters
categoryId
required
integer

ID da categoria.

Responses

Response samples

Content type
application/json
{
  • "status": "error",
  • "code": "invalid_fields",
  • "message": "Preencha os campos corretamente!"
}

Upload da imagem da categoria

Authorizations:
(deliverydiretoIdoauth)
path Parameters
categoryId
required
integer

ID da categoria.

Request Body schema: multipart/form-data
file
required
string <file>

Arquivo a ser enviado

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Ordenar as categorias

Faz uma ordenação automática, de forma assíncrona, das categorias. A ordenação é feita de forma ascendente primeiro pelo viewOrder e depois pelo name.

Authorizations:
(deliverydiretoIdoauth)

Responses

Category Availabilities

Informações dos horário de disponibilidade da categoria

Lista os horários que esta categoria está disponível

Authorizations:
(deliverydiretoIdoauth)
path Parameters
categoryId
required
integer

ID da categoria.

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Cria uma novo horário de disponibilidade para a categoria

Authorizations:
(deliverydiretoIdoauth)
path Parameters
categoryId
required
integer

ID da categoria.

Request Body schema: application/json

Dados da disponilibidade da categoria a ser adicionado

required
ISO8601Time (string)

Horário inicial no qual a categoria fica disponível no formato HH:mm. Ex: 14:34.

required
ISO8601Time (string)

Horário final no qual a categoria fica disponível no formato HH:mm. Ex: 14:34.

weekday
required
integer

Responses

Request samples

Content type
application/json
{
  • "periodStart": "09:00:00-03:00",
  • "periodEnd": "09:00:00-03:00",
  • "weekday": 3
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Apagar um período

Authorizations:
(deliverydiretoIdoauth)
path Parameters
categoryId
required
integer

ID da categoria.

id
required
integer

ID do período a ser excluído.

Responses

Response samples

Content type
application/json
{
  • "status": "error",
  • "code": "invalid_fields",
  • "message": "Preencha os campos corretamente!"
}

Cria um conjunto de novos horários de disponibilidade para uma categoria

Authorizations:
(deliverydiretoIdoauth)
path Parameters
categoryId
required
integer

ID da categoria.

Request Body schema: application/json

Dados da disponilibidades da categoria a ser adicionado

required
Array of objects (CategoryAvailabilityDTO)

Lista de disponibilidades

Array
required
ISO8601Time (string)

Horário inicial no qual a categoria fica disponível

required
ISO8601Time (string)

Horário final no qual a categoria fica disponível

weekday
required
integer

Responses

Request samples

Content type
application/json
{
  • "categoryAvailabilities": [
    ]
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Checkoutquestions

Informações sobre perguntas ao fechar o pedido

Lista as perguntas ao fechar pedido

Authorizations:
(deliverydiretoIdoauth)

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Cria nova pergunta ao fechar pedido

Authorizations:
(deliverydiretoIdoauth)
Request Body schema: application/json

Dados da nova pergunta

answerType
required
string
Value: "TEXT"

Tipo de resposta da questão

status
required
string
Enum: "ACTIVE" "INACTIVE"

Status da questão

viewOrder
required
integer

Posição da pergunta utilizado para ordenação

id
integer or null

Identificador da pergunta

brandId
integer or null

O identificador da rede que criou a pergunta.

storeId
integer or null

O identificador da loja que criou a pergunta.

question
required
string

Texto da pergunta

required
required
boolean

Se a questão é obrigatória de ser respondida

Responses

Request samples

Content type
application/json
{
  • "answerType": "TEXT",
  • "status": "ACTIVE",
  • "viewOrder": 1,
  • "id": 123,
  • "brandId": 123,
  • "storeId": 123,
  • "question": "true",
  • "required": true
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Atualiza pergunta ao fechar pedido

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

Identificador da pergunta

Request Body schema: application/json

Dados da pergunta

answerType
required
string
Value: "TEXT"

Tipo de resposta da questão

status
required
string
Enum: "ACTIVE" "INACTIVE"

Status da questão

viewOrder
required
integer

Posição da pergunta utilizado para ordenação

id
integer or null

Identificador da pergunta

brandId
integer or null

O identificador da rede que criou a pergunta.

storeId
integer or null

O identificador da loja que criou a pergunta.

question
required
string

Texto da pergunta

required
required
boolean

Se a questão é obrigatória de ser respondida

Responses

Request samples

Content type
application/json
{
  • "answerType": "TEXT",
  • "status": "ACTIVE",
  • "viewOrder": 1,
  • "id": 123,
  • "brandId": 123,
  • "storeId": 123,
  • "question": "true",
  • "required": true
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Apaga pergunta ao fechar pedido

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

Identificador da pergunta

Responses

Customers

Informações sobre os clientes

Lista de endereços de um cliente

Authorizations:
(deliverydiretoIdoauth)
path Parameters
customersId
required
integer

ID do cliente.

query Parameters
offset
integer >= 0
Default: 0

Posição inicial do objeto a ser retornado.

limit
integer <= 100
Default: 30

Quantidade de objetos a ser retornado.

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Cria um novo endereço para um cliente

Authorizations:
(deliverydiretoIdoauth)
path Parameters
customersId
required
integer

ID do cliente.

Request Body schema: application/json
street
required
string
number
required
string
zipcode
required
string
neighborhood
required
string
city
required
string
state
required
string
complement
required
string
reference_point
string or null
lat
number or null <float>

A latitude do endereço sendo criado. Opcional, caso não seja informado, o endereço será geolocalizado.

lng
number or null <float>

A longitude do endereço. Opcional, caso não seja informado, o endereço será geolocalizado.

Responses

Request samples

Content type
application/json
{
  • "street": "Rua Drausio",
  • "number": "123",
  • "zipcode": "05511-010",
  • "neighborhood": "Butantã",
  • "city": "São Paulo",
  • "state": "SP",
  • "complement": "Próximo ao posto de gasolina",
  • "reference_point": "Próximo à praça",
  • "lat": -23.45,
  • "lng": -45.67
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Apaga um endereço de um cliente numa determinada loja

Authorizations:
(deliverydiretoIdoauth)
path Parameters
customersId
required
integer

ID do cliente.

id
required
integer

ID do endereço.

Responses

Response samples

Content type
application/json
{
  • "status": "fail",
  • "errors": [
    ]
}

Lista de clientes

Authorizations:
(deliverydiretoIdoauth)
query Parameters
firstName
string

Primeiro nome do cliente

lastName
string

Sobrenome do cliente

email
string

E-mail do cliente

telephone
string

Telefone do cliente

document
string

Documento (CPF) do cliente formatado: 000.000.000-00

offset
integer >= 0
Default: 0

Posição inicial do objeto a ser retornado.

limit
integer <= 100
Default: 30

Quantidade de objetos a ser retornado.

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Cria um novo cliente

Authorizations:
(deliverydiretoIdoauth)
Request Body schema: application/json
(ISO8601Date (string or null))

A data de nascimento do cliente no formato AAAA-MM-DD. Ex: 1984-05-30

firstName
required
string

O primeiro nome do cliente

lastName
string

O sobrenome do cliente

email
string

O e-mail do cliente.

telephone
required
string

O telefone do cliente sem formatação com DDD. Ex: (11) 91111-1111 => 11911111111

document
string

O CPF do cliente formatado. Ex: 123.123.123-12

Responses

Request samples

Content type
application/json
{
  • "birthDate": "2020-01-01",
  • "firstName": "João",
  • "lastName": "da Silva",
  • "email": "joaodasilva@mailinator.com",
  • "telephone": "11911111111",
  • "document": "12345678912"
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Atualiza os dados de um cliente

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

ID do cliente.

Request Body schema: application/json
(ISO8601Date (string or null))

A data de nascimento do cliente no formato AAAA-MM-DD. Ex: 1984-05-30

firstName
string or null

O primeiro nome do cliente

lastName
string or null

O sobrenome do cliente

email
string or null

O e-mail do cliente.

telephone
string or null

O telefone do cliente sem formatação com DDD. Ex: (11) 91111-1111 => 11911111111

document
string or null

O CPF do cliente formatado. Ex: 123.123.123-12

Responses

Request samples

Content type
application/json
{
  • "birthDate": "2020-01-01",
  • "firstName": "João",
  • "lastName": "da Silva",
  • "email": "joaodasilva@mailinator.com",
  • "telephone": "11911111111",
  • "document": "12345678912"
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Apaga um cliente

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

ID do cliente.

Responses

Response samples

Content type
application/json
{
  • "status": "fail",
  • "errors": [
    ]
}

Estatísticas de um cliente

Authorizations:
(deliverydiretoIdoauth)
path Parameters
customersId
required
integer

ID do cliente.

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Delivery Areas

Informações sobre áreas de entrega

Lista as áreas de entrega da loja

Authorizations:
(deliverydiretoIdoauth)
query Parameters
name
string

Busca por nome da área de entrega

deliveryAreaId
integer

Busca pelo identificador da área de entrega

type
string
Enum: "CIRCLE" "POLYGON"

Tipo da área de entrega.

offset
integer
Default: 0

Posição inicial do objeto a ser retornado.

limit
integer <= 100
Default: 30

Quantidade de objetos a ser retornado.

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Cria uma área de entrega

Authorizations:
(deliverydiretoIdoauth)
Request Body schema: application/json

Dados da área de entrega a ser criada

type
required
string or null
Enum: "CIRCLE" "POLYGON"

O tipo de area de entrega

  • CIRCLE: Raio
  • POLYGON: Área poligonal
(GeographicalPoint (object or null))

A localização do centro da área de entrega. Se o campo 'type' for 'CIRCLE', então este campo deve ser preenchido

required
object (Money)

Uma descrição de quantidade de dinheiro

(ISO8601Time (string or null))

O horário no qual começa a inativação da área de entrega.

(ISO8601Time (string or null))

O horário no qual termina a inativação da área de entrega.

(ISO8601Time (string or null))

Caso presente, indica o período final da aplicação da taxa dinâmica.

(Money (object or null))

Caso presente, indica o valor que deve ser adicionado a taxa de entrega durante o período de aplicação da taxa dinâmica.

name
required
string or null

Nome da área de entrega

zipCode
string or null
address
string or null
neighborhood
string or null
radius
number or null <float>

O raio da área de entrega, em metros. Se o campo "type" for "CIRCLE", então este campo deve ser preenchido

(ISO8601Time (string or null))
Array of objects or null (GeographicalPoint)

O polígono da área, definido pela sequência de pontos geográficos que o definem. Se o campo "type" for "POLYGON", então este campo deve ser preenchido

minimumWaitingMinutes
required
integer

O tempo mínimo de entrega dessa área, em minutos.

maximumWaitingMinutes
required
integer

O tempo máximo de entrega dessa área, em minutos.

Responses

Request samples

Content type
application/json
{
  • "type": "POLYGON",
  • "center": {
    },
  • "price": {
    },
  • "inactivationStart": "09:00:00-03:00",
  • "inactivationEnd": "09:00:00-03:00",
  • "dynamicPriceEnd": "09:00:00-03:00",
  • "dynamicPrice": {
    },
  • "name": "string",
  • "zipCode": "string",
  • "address": "string",
  • "neighborhood": "string",
  • "radius": 100,
  • "dynamicPriceStart": "09:00:00-03:00",
  • "polygon": [
    ],
  • "minimumWaitingMinutes": 30,
  • "maximumWaitingMinutes": 90
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Lista as configurações gerais da área de entrega

Authorizations:
(deliverydiretoIdoauth)

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Atualiza as configurações gerais da área de entrega

Authorizations:
(deliverydiretoIdoauth)
Request Body schema: application/json

Configurações gerais da área de entrega a serem atualizadas

enablePostCheckoutEta
boolean or null
Default: false

Exibir estimativa do tempo de espera

(Money (object or null))

Valor minimo do pedido para ter taxa de entrega grátis. Se este valor for zero, então não há valor mínimo.

(ISO8601DateTime (string or null))

Data e hora que a taxa de entrega ficará zerada. Ex: até o dia 2021-04-31 15:30:00 as taxas de entrega ficarão zeradas. Após essa data, o valor da taxa de entrega voltará ao normal. Se este valor for null, este recurso será desativado.

(Money (object or null))

Pedido mínimo de delivery. Se este valor for null, não há valor mínimo do pedido.

(Money (object or null))

Valor mínimo do pedido para ser retirado. Se este valor for null, então este recurso está desativado e o valor mínimo da retirada é igual ao do delivery, acho que é legal deixar documentado isso. Para usar este recurso, o campo 'takeoutTime' deverá conter algum valor positivo maior que zero.

takeoutStatus
boolean or null
Default: false

Habilita ou desabilita a retirada na loja

takeoutTime
integer or null

Quantidade de minutos que o cliente poderá retirar o pedido. Ex: 5 minutos. Após 5 minutos do pedido a ser aprovado, o cliente poderá retirar o pedido. Se este valor for zerado, então este recurso está desativado

Responses

Request samples

Content type
application/json
{
  • "enablePostCheckoutEta": true,
  • "freeDeliveryMinimumOrder": {
    },
  • "freeDeliveryTimeout": "2020-01-01T09:00:00-03:00",
  • "minimumOrder": {
    },
  • "takeoutMinimumOrder": {
    },
  • "takeoutStatus": true,
  • "takeoutTime": 5
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Atualiza uma área de entrega

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

identificador da área de entrega.

Request Body schema: application/json

Dados da área de entrega a ser atualizada

One of
type
string or null
Value: "POLYGON"

O tipo de area de entrega

  • CIRCLE: Raio
  • POLYGON: Área poligonal
required
object (Money)

Uma descrição de quantidade de dinheiro

(ISO8601Time (string or null))

O horário no qual começa a inativação da área de entrega.

(ISO8601Time (string or null))

O horário no qual termina a inativação da área de entrega.

(ISO8601Time (string or null))

Caso presente, indica o período inicial da aplicação da taxa dinâmica.

(ISO8601Time (string or null))

Caso presente, indica o período final da aplicação da taxa dinâmica.

(Money (object or null))

Caso presente, indica o valor que deve ser adicionado a taxa de entrega durante o período de aplicação da taxa dinâmica.

name
string or null

Nome da área de entrega

zipCode
string or null
address
string or null
neighborhood
string or null
(GeographicalPoint (object or null))
radius
number or null <float>
Array of objects or null (GeographicalPoint)

O polígono da área, definido pela sequência de pontos geográficos que o definem. Se o campo "type" for "POLYGON", então este campo deve ser preenchido

minimumWaitingMinutes
integer or null

O tempo mínimo de entrega dessa área, em minutos.

maximumWaitingMinutes
integer or null

O tempo máximo de entrega dessa área, em minutos.

inactivationStatus
boolean or null

Status da programação de inativação

dynamicPriceStatus
boolean or null

Status do preço dinâmico

isActive
boolean or null

Status da área de entrega

Responses

Request samples

Content type
application/json
Example
{
  • "type": "POLYGON",
  • "price": {
    },
  • "inactivationStart": "09:00:00-03:00",
  • "inactivationEnd": "09:00:00-03:00",
  • "dynamicPriceStart": "09:00:00-03:00",
  • "dynamicPriceEnd": "09:00:00-03:00",
  • "dynamicPrice": {
    },
  • "name": "string",
  • "zipCode": "string",
  • "address": "string",
  • "neighborhood": "string",
  • "center": {
    },
  • "radius": 0,
  • "polygon": [
    ],
  • "minimumWaitingMinutes": 30,
  • "maximumWaitingMinutes": 90,
  • "inactivationStatus": false,
  • "dynamicPriceStatus": true,
  • "isActive": true
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Apaga uma área de entrega

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

identificador da área de entrega.

Responses

Response samples

Content type
application/json
{
  • "status": "error",
  • "code": "invalid_fields",
  • "message": "Preencha os campos corretamente!"
}

Atualiza algumas configurações em massa

Atualiza os campos minimumWaitingTime, maximumWaitingTime e price de todas as área de entrega e de todas os locais específicos. Esta operação pode demorar.

Authorizations:
(deliverydiretoIdoauth)
Request Body schema: application/json

Dados a serem atualizados

(Money (object or null))

Taxa de entrega da área

name
string or null
zipCode
string or null
address
string or null
neighborhood
string or null
type
string or null
(GeographicalPoint (object or null))
radius
number or null <float>
(ISO8601Time (string or null))
(ISO8601Time (string or null))
(Money (object or null))
(ISO8601Time (string or null))
(ISO8601Time (string or null))
minimumWaitingMinutes
integer or null

O tempo mínimo de entrega a ser configurado para todas as áreas, em minutos.

maximumWaitingMinutes
integer or null

O tempo máximo de entrega a ser configurado para todas as áreas, em minutos.

Responses

Request samples

Content type
application/json
{
  • "price": {
    },
  • "name": "string",
  • "zipCode": "string",
  • "address": "string",
  • "neighborhood": "string",
  • "type": "string",
  • "center": {
    },
  • "radius": 0,
  • "inactivationStart": "09:00:00-03:00",
  • "inactivationEnd": "09:00:00-03:00",
  • "dynamicPrice": {
    },
  • "dynamicPriceStart": "09:00:00-03:00",
  • "dynamicPriceEnd": "09:00:00-03:00",
  • "minimumWaitingMinutes": 30,
  • "maximumWaitingMinutes": 90
}

Response samples

Content type
application/json
{
  • "status": "error",
  • "code": "invalid_fields",
  • "message": "Preencha os campos corretamente!"
}

Verifica se a loja entrega no endereço especificado

Authorizations:
(deliverydiretoIdoauth)
Request Body schema: application/json

Dados a serem atualizados

One of
(ISO8601DateTime (string or null))

O horário de agendamento do pedido. Caso nulo, calcula a taxa para pedidos não agendados. Se a área de entrega ou o local específico possui um horário de ativação, este campo será usado.

street
required
string
number
required
string
zipcode
required
string
neighborhood
required
string
city
required
string
state
required
string
complement
required
string
reference_point
string or null

Responses

Request samples

Content type
application/json
Example
{
  • "scheduling": "2020-01-01T09:00:00-03:00",
  • "street": "Rua Drausio",
  • "number": "123",
  • "zipcode": "05511-010",
  • "neighborhood": "Butantã",
  • "city": "São Paulo",
  • "state": "SP",
  • "complement": "Próximo ao posto de gasolina",
  • "reference_point": "Próximo à praça"
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Reportar um CEP com problema

Authorizations:
(deliverydiretoIdoauth)
Request Body schema: application/json

CEP

zipcode
required
string

CEP com problema

Responses

Request samples

Content type
application/json
{
  • "zipcode": "05511-010"
}

Response samples

Content type
application/json
{
  • "status": "error",
  • "code": "invalid_fields",
  • "message": "Preencha os campos corretamente!"
}

Item Availabilities

Informações sobre as disponibilidades dos items

Lista os horários que este item está disponível

Authorizations:
(deliverydiretoIdoauth)
path Parameters
itemId
required
integer

ID do item.

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Cria uma novo horário de disponibilidade para um item

Authorizations:
(deliverydiretoIdoauth)
path Parameters
itemId
required
integer

ID do item.

Request Body schema: application/json

Dados da disponilibidade do item a ser adicionado

required
ISO8601Time (string)

Horário inicial no qual o item fica disponível no formato HH:mm. Ex: 14:34.

required
ISO8601Time (string)

Horário final no qual o item fica disponível no formato HH:mm. Ex: 14:34.

weekday
required
integer

Responses

Request samples

Content type
application/json
{
  • "periodStart": "09:00:00-03:00",
  • "periodEnd": "09:00:00-03:00",
  • "weekday": 3
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Apagar um período

Authorizations:
(deliverydiretoIdoauth)
path Parameters
itemId
required
integer

ID do item.

id
required
integer

ID do período a ser excluído.

Responses

Response samples

Content type
application/json
{
  • "status": "error",
  • "code": "invalid_fields",
  • "message": "Preencha os campos corretamente!"
}

Cria um conjunto de novos horários de disponibilidade para um item

Authorizations:
(deliverydiretoIdoauth)
path Parameters
itemId
required
integer

ID do item.

Request Body schema: application/json

Dados da disponilibidades do item a ser adicionado

required
Array of objects (ItemAvailabilityDTO)

Lista de disponibilidades

Array
required
ISO8601Time (string)

Horário inicial no qual o item fica disponível.

required
ISO8601Time (string)

Horário final no qual o item fica disponível. Caso esse período seja antes do periodo inicial, significa que o periodo se estende após o dia indicado. Exemplo: um período com weekday de segunda-feira, que começa as 22:00 e termina as 02:00, indica que o período começa as 22:00 de segunda e termina as 02:00 de terça.

weekday
required
integer

Responses

Request samples

Content type
application/json
{
  • "itemAvailabilities": [
    ]
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Items

Informações sobre os item de uma categoria

Lista os itens de uma categoria

Authorizations:
(deliverydiretoIdoauth)
path Parameters
categoryId
required
integer

ID da categoria.

query Parameters
id
integer

ID do item.

name
string

Nome do item.

showDetails
boolean
Default: false

Mostra as variações e as opções do item

offset
integer >= 0
Default: 0

Posição inicial do objeto a ser retornado.

limit
integer <= 100
Default: 30

Quantidade de objetos a ser retornado.

Responses

Response samples

Content type
application/json
Example
{
  • "status": "success",
  • "data": {
    }
}

Criar um novo item

Authorizations:
(deliverydiretoIdoauth)
path Parameters
categoryId
required
integer

ID da categoria.

Request Body schema: application/json
required
object (Money)

Uma descrição de quantidade de dinheiro

type
string
Default: "CUSTOM"
Enum: "CUSTOM" "FIXED"

Tipo do item

status
string
Default: "ACTIVE"
Enum: "ACTIVE" "SHORT_SUPPLY" "HIDDEN"

Status do item

ACTIVE: Item Ativo

SHORT_SUPPLY: Item em falta, aparece no cardápio, mas não dá para selecionar

HIDDEN: Item oculto, não mostra no cardápio

hiddenWhenUnavailable
boolean or null
Default: false

Ocultar item se estiver fora do horário de disponibilidade

viewOrder
integer >= 1
Default: 1

Ordem de listagem do item

isFractional
integer
Default: 0

É item fracionário

showAtCheckout
boolean or null
Default: true

Este item aparece no checkout

(ISO8601Date (string or null))

O dia limite no qual este item irá utilizar a marcação de 'Item Novo'

(Money (object or null))

Preço cheio do item. Ex. De R$10,00 por R$20,00. O valor deste atributo seria R$10,00.

description
string or null
customCode
string or null
name
required
string

Responses

Request samples

Content type
application/json
{
  • "price": {
    },
  • "type": "CUSTOM",
  • "status": "ACTIVE",
  • "hiddenWhenUnavailable": true,
  • "viewOrder": 1,
  • "isFractional": 1,
  • "showAtCheckout": true,
  • "dayLimitWithTheBadge": "2021-06-16",
  • "promotionalOldPrice": {
    },
  • "description": "Refrigerante Light de 350ml gelada",
  • "customCode": "string",
  • "name": "Refrigerante Light"
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Lista de todos itens

Authorizations:
(deliverydiretoIdoauth)
query Parameters
id
integer

ID do item.

name
string

Nome do item.

showDetails
boolean
Default: false

Mostra as variações e as opções do item

offset
integer >= 0
Default: 0

Posição inicial do objeto a ser retornado.

limit
integer <= 100
Default: 30

Quantidade de objetos a ser retornado.

Responses

Response samples

Content type
application/json
Example
{
  • "status": "success",
  • "data": {
    }
}

Atualizar item

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

ID do item.

Request Body schema: application/json
type
string or null
Default: "CUSTOM"
Enum: "CUSTOM" "FIXED"

Tipo do item

status
string or null
Default: "ACTIVE"
Enum: "ACTIVE" "SHORT_SUPPLY" "HIDDEN"

Status do item

ACTIVE: Item Ativo

SHORT_SUPPLY: Item em falta, aparece no cardápio, mas não dá para selecionar

HIDDEN: Item oculto, não mostra no cardápio

viewOrder
integer or null >= 1
Default: 1

Ordem de listagem do item

categoryId
integer or null

ID da categoria

(Money (object or null))

Valor do item

(ISO8601Date (string or null))

O dia limite no qual este item irá utilizar a marcação de 'Item Novo'

(Money (object or null))

Preço cheio do item. Ex. De R$10,00 por R$20,00. O valor deste atributo seria R$10,00.

description
string or null
hiddenWhenUnavailable
boolean or null

Esconder o item quando estiver indisponível

customCode
string or null
showAtCheckout
boolean or null

Este item aparece no checkout

name
string or null

Nome do item

isFractional
integer or null

É item fracionário

Responses

Request samples

Content type
application/json
{
  • "type": "CUSTOM",
  • "status": "ACTIVE",
  • "viewOrder": 1,
  • "categoryId": 0,
  • "price": {
    },
  • "dayLimitWithTheBadge": "2021-06-16",
  • "promotionalOldPrice": {
    },
  • "description": "Refrigerante Light de 350ml gelada",
  • "hiddenWhenUnavailable": true,
  • "customCode": "string",
  • "showAtCheckout": true,
  • "name": "Refrigerante Light",
  • "isFractional": 0
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Apagar item

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

ID do item a ser excluído.

Responses

Response samples

Content type
application/json
{
  • "status": "error",
  • "code": "invalid_fields",
  • "message": "Preencha os campos corretamente!"
}

Upload da imagem do item

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

ID do item.

Request Body schema: multipart/form-data
file
required
string <file>

Imagem a ser enviado

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Remover imagem do item

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

ID do item.

Responses

Response samples

Content type
application/json
{
  • "status": "error",
  • "code": "invalid_fields",
  • "message": "Preencha os campos corretamente!"
}

Ordenar os itens de uma categoria

Faz uma ordenação automática, de forma assíncrona, dos itens de uma categoria. A ordenação é feita de forma ascendente primeiro pelo viewOrder e depois pelo name.

Authorizations:
(deliverydiretoIdoauth)
path Parameters
categoryId
required
integer

ID da categoria.

Responses

Response samples

Content type
application/json
{
  • "status": "error",
  • "code": "invalid_fields",
  • "message": "Preencha os campos corretamente!"
}

Mudar status de todos os items dentro de uma categoria

Authorizations:
(deliverydiretoIdoauth)
path Parameters
categoryId
required
integer

ID da categoria.

Request Body schema: application/json
status
string or null
Default: "ACTIVE"
Enum: "ACTIVE" "SHORT_SUPPLY" "HIDDEN"

Status do item

ACTIVE: Item Ativo

SHORT_SUPPLY: Item em falta, aparece no cardápio, mas não dá para selecionar

HIDDEN: Item oculto, não mostra no cardápio

Responses

Request samples

Content type
application/json
{
  • "status": "ACTIVE"
}

Response samples

Content type
application/json
{
  • "status": "error",
  • "code": "invalid_fields",
  • "message": "Preencha os campos corretamente!"
}

Consulta quantidade do item no estoque

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

ID do item.

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Atualizar quantidade em estoque do item

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

ID do item.

Request Body schema: application/json
amount
required
integer

Quantidade em estoque

Responses

Request samples

Content type
application/json
{
  • "amount": 0
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Cria informações do estoque do item

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

ID do item.

Request Body schema: application/json
amount
required
integer

Quantidade em estoque

Responses

Request samples

Content type
application/json
{
  • "amount": 0
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Remove informações do estoque do item

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

ID do item.

Responses

Response samples

Content type
application/json
{
  • "status": "error",
  • "code": "invalid_fields",
  • "message": "Preencha os campos corretamente!"
}

Loyalty Programs

Informações sobre programa de fidelidade

Lista os programas de fidelidade

Authorizations:
(deliverydiretoIdoauth)
query Parameters
offset
integer >= 0
Default: 0

Posição inicial do objeto a ser retornado.

limit
integer <= 100
Default: 30

Quantidade de objetos a ser retornado.

status
string
Enum: "pending" "active" "inactive"

Status do programa de fidelidade.

expired
boolean

Este programa está expirado.

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Criar um programa de fidelidade

Authorizations:
(deliverydiretoIdoauth)
Request Body schema: application/json

Dados do programa de fidelidade

required
ISO8601Date (string)

Data de início do programa de fidelidade

benefitValue
string
Default: ""

Valor do benefício. Ex: sobremesa grátis, 10 (10% de desconto), 15(R$ 15,00 de desconto)

status
string
Default: "active"
Enum: "pending" "active" "inactive"

Status do programa de fidelidade

disablePeriodSixHours
required
boolean
Default: false

Oferecer o programa sem o limite de 6 horas a cada compra

isBrandProgram
boolean or null
Default: false

Este Programa de fidelidade é válido para a marca toda?

valueBaseCount
required
number <float>

Contagem do programa. A cada 10 compras, ganhe x. Gaste pelo menos 200 reais.

benefitType
string or null
Enum: "percentage" "fixed_value" "menu_item" "shipping" "not_applicable"

Tipo de benefício.

"percentage": desconto de x%;

"fixed_value": desconto de R$ x,00;

"menu_item": item grátis;

"shipping": taxa de entrega grátis;

"not_applicable": quando o "baseCountType" for "progressive"

baseCountType
string or null
Default: "spent_money_accumulated_value"
Enum: "spent_money_accumulated_value" "itens_bought" "spent_money_minimum_value" "returning" "progressive" "points"

Tipo do programa de fidelidade.

"spent_money_accumulated_value": gastar x reais nas últimas compras;

"spent_money_minimum_value": gastar pelo menos x reais na compra;

"returning": item prêmio;

"progressive": programa de fidelidade progressivo;

"points": programa de pontos.

(ISO8601Date (string or null))

Data de expiração do programa de fidelidade

customCode
string or null

Código do produto

description
string

Descrição do programa de fidelidade

Responses

Request samples

Content type
application/json
{
  • "dateBegin": "2020-01-01",
  • "benefitValue": "Sobremesa grátis",
  • "status": "pending",
  • "disablePeriodSixHours": true,
  • "isBrandProgram": true,
  • "valueBaseCount": 10,
  • "benefitType": "percentage",
  • "baseCountType": "spent_money_accumulated_value",
  • "dateEnd": "2020-01-01",
  • "customCode": "COD123",
  • "description": "Acumule R$200,00 em produtos e ganhe 20,00% de desconto na próxima compra"
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Buscar um programa de fidelidade pelo identificador

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

O identificador do programa de fidelidade

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Atualiza um programa de fidelidade

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

ID do programa de fidelidade

Request Body schema: application/json

Dados do programa de fidelidade a ser atualizado

(ISO8601Date (string or null))

Data de início do programa de fidelidade

benefitValue
string or null
Default: ""

Valor do benefício. Ex: sobremesa grátis, 10 (10% de desconto), 15(R$ 15,00 de desconto)

status
string or null
Default: "active"
Enum: "pending" "active" "inactive"

Status do programa de fidelidade

disablePeriodSixHours
boolean or null
Default: false

Oferecer o programa sem o limite de 6 horas a cada compra

isBrandProgram
boolean or null
Default: false

Este Programa de fidelidade é válido para a marca toda?

valueBaseCount
number or null <float>

Contagem do programa. A cada 10 compras, ganhe x. Gaste pelo menos 200 reais.

benefitType
string or null
Enum: "percentage" "fixed_value" "menu_item" "shipping" "not_applicable"

Tipo de benefício.

"percentage": desconto de x%;

"fixed_value": desconto de R$ x,00;

"menu_item": item grátis;

"shipping": taxa de entrega grátis;

"not_applicable": quando o "baseCountType" for "progressive"

baseCountType
string or null
Default: "spent_money_accumulated_value"
Enum: "spent_money_accumulated_value" "itens_bought" "spent_money_minimum_value" "returning" "progressive" "points"

Tipo do programa de fidelidade.

"spent_money_accumulated_value": gastar x reais nas últimas compras;

"spent_money_minimum_value": gastar pelo menos x reais na compra;

"returning": item prêmio;

"progressive": programa de fidelidade progressivo;

"points": programa de pontos.

(ISO8601Date (string or null))

Data de expiração do programa de fidelidade

customCode
string or null
description
string or null

Descrição do programa de fidelidade

Responses

Request samples

Content type
application/json
{
  • "dateBegin": "2020-01-01",
  • "benefitValue": "Sobremesa grátis",
  • "status": "pending",
  • "disablePeriodSixHours": true,
  • "isBrandProgram": true,
  • "valueBaseCount": 10,
  • "benefitType": "percentage",
  • "baseCountType": "spent_money_accumulated_value",
  • "dateEnd": "2020-01-01",
  • "customCode": "COD123",
  • "description": "Acumule R$200,00 em produtos e ganhe 20,00% de desconto na próxima compra"
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Apaga um programa de fidelidade

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

ID do programa de fidelidade

Responses

Response samples

Content type
application/json
{
  • "status": "fail",
  • "errors": [
    ]
}

Lista de partipantes do programa de fidelidade

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

ID do programa de fidelidade

query Parameters
firstName
string

Primeiro nome do cliente

lastName
string

Sobrenome do cliente

email
string

E-mail do cliente

telephone
string

Telefone do cliente

document
string

Documento (CPF) do cliente formatado: 000.000.000-00

offset
integer >= 0
Default: 0

Posição inicial do objeto a ser retornado.

limit
integer <= 100
Default: 30

Quantidade de objetos a ser retornado.

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Criar passos do programa de fidelidade progressivo

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

ID do programa de fidelidade progressivo

Request Body schema: application/json

Dados do programa de fidelidade

required
Array of objects (LoyaltyprogramStepDTO)

Lista de passos do programs de fidelidade

Array
step
required
integer [ 0 .. 20 ]

Número do passo. Ex: 0 quer dizer na primeira conta; 1, na segunda compra; 2, na terceira compra.

benefitValue
required
string

Valor do benefício. Ex: sobremesa grátis, 10 (10% de desconto), 15(R$ 15,00 de desconto)

benefitType
required
string
Enum: "percentage" "fixed_value" "menu_item" "shipping"

Tipo de benefício.

"percentage": desconto de x%;

"fixed_value": desconto de R$ x,00;

"menu_item": item grátis;

"shipping": taxa de entrega grátis;

"not_applicable": quando o "baseCountType" for "progressive"

customCode
string or null

Código do produto

Responses

Request samples

Content type
application/json
{
  • "steps": [
    ]
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Lista passos do programa de fidelidade progressivo

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

ID do programa de fidelidade progressivo

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Apaga um passo do programa de fidelidade progressivo

Authorizations:
(deliverydiretoIdoauth)
path Parameters
loyaltyprogramsId
required
integer

Identificador do programa de fidelidade progressivo.

id
required
integer

Identificador do passo do programa de fidelidade progressivo.

Responses

Response samples

Content type
application/json
{
  • "status": "fail",
  • "errors": [
    ]
}

Member Get Members

Informações sobre programa de indique uma amigo

Lista os programas de indique um amigo

Authorizations:
(deliverydiretoIdoauth)
query Parameters
memberGetMembersId
integer

Busca pelo identificador do programa indique um amigo

type
string
Enum: "CUSTOM" "FIXED" "PERCENT" "SHIPPING"

Tipo do programa de indique um amigo.

offset
integer >= 0
Default: 0

Posição inicial do objeto a ser retornado.

limit
integer [ 1 .. 100 ]
Default: 30

Quantidade de objetos a ser retornado.

active
boolean

Programa indique um amigo está ativo

expired
boolean

Este programa está expirado.

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Cria um programa de indique um amigo

Authorizations:
(deliverydiretoIdoauth)
Request Body schema: application/json

Dados do programa de indique um amigo

(Money (object or null))
Default: 0

Valor de desconto em dinheiro

type
required
string
Enum: "CUSTOM" "FIXED" "PERCENT" "SHIPPING"

Tipo do programa de indique um amigo

  • FIXED: Valor de desconto fixo
  • PERCENT: Valor de desconto em percentagem no total da conta. Ex: 10% no total do pedido
  • CUSTOM: Prêmio customizado. Ex: barra de chocolate
  • SHIPPING: Taxa de entrega grátis
active
required
boolean

Indica se está ativo ou não

required
(ISO8601Date (string or null))

Data de expiração do cupom

valuePercent
integer or null

Valor de desconto em porcentagem

valueText
string or null

Prêmio personalizado. Ex: barra de chocolate

customCode
string or null

Código do produto

Responses

Request samples

Content type
application/json
{
  • "value": 0,
  • "type": "CUSTOM",
  • "active": false,
  • "expires": "2020-01-01",
  • "valuePercent": 12,
  • "valueText": "Sobremesa de chocolate",
  • "customCode": "COD123"
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Lista os participantes do programa de indique um amigo

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

Identificador do programa de indique um amigo

query Parameters
customersId
integer >= 0

ID do cliente

offset
integer >= 0
Default: 0

Posição inicial do objeto a ser retornado.

limit
integer [ 1 .. 100 ]
Default: 30

Quantidade de objetos a ser retornado.

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Atualiza um programa de indique um amigo

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

Identificador do programa de indique um amigo

Request Body schema: application/json

Dados do programa de indique um amigo a ser atualizado

active
boolean or null

Indica se está ativo ou não

(ISO8601Date (string or null))

Data de expiração do cupom

(Money (object or null))
valuePercent
integer or null
valueText
string or null

Responses

Request samples

Content type
application/json
{
  • "active": false,
  • "expires": "2020-01-01",
  • "value": {
    },
  • "valuePercent": 0,
  • "valueText": "string"
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Apaga um programa de indique um amigo

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

Identificador do programa de indique um amigo

Responses

Response samples

Content type
application/json
{
  • "status": "error",
  • "code": "invalid_fields",
  • "message": "Preencha os campos corretamente!"
}

Options

Informações sobre as opções

Atualizar uma opção da variação do item

Authorizations:
(deliverydiretoIdoauth)
path Parameters
itemId
required
integer

ID do item.

propertyId
required
integer

ID da variação.

id
required
integer

ID da opção.

Request Body schema: application/json
maxChoices
integer or null
Default: 1

Número máximo de opções da variação do item. Ex 2, deve selecionar pelo menos duas opções.

minChoices
integer or null
Default: 0

Número mínimo de opções obrigatórias da variação do item. Ex 2, deve selecionar pelo menos duas opções.

(Money (object or null))

Valor da opção da variação do item

viewOrder
integer or null >= 1
Default: 1

Ordem de listagem da opção da variação do item

Responses

Request samples

Content type
application/json
{
  • "maxChoices": 1,
  • "minChoices": 2,
  • "price": {
    },
  • "viewOrder": 1
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Apagar uma opção de uma variação de um item

Authorizations:
(deliverydiretoIdoauth)
path Parameters
itemId
required
integer

ID do item.

propertyId
required
integer

ID da variação.

id
required
integer

ID da opção.

Responses

Response samples

Content type
application/json
{
  • "status": "fail",
  • "errors": [
    ]
}

Listar opções

Authorizations:
(deliverydiretoIdoauth)
query Parameters
id
integer

ID da opção.

name
string

Nome da opção.

offset
integer
Default: 0

Posição inicial do objeto a ser retornado.

limit
integer <= 100
Default: 30

Quantidade de objetos a ser retornado.

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Criar uma nova opção

Authorizations:
(deliverydiretoIdoauth)
Request Body schema: application/json

Dados da opção a ser adicionado

object (Money)

Uma descrição de quantidade de dinheiro

status
string or null
Default: "ACTIVE"
Enum: "ACTIVE" "SHORT_SUPPLY" "HIDDEN"

Status da opção

name
required
string
description
string or null
customCode
string or null

Responses

Request samples

Content type
application/json
{
  • "basePrice": {
    },
  • "status": "ACTIVE",
  • "name": "Laranja",
  • "description": "Laranja natural",
  • "customCode": "LAR001"
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Atualizar uma opção

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

ID da opção.

Request Body schema: application/json
object (Money)

Uma descrição de quantidade de dinheiro

status
string or null
Default: "ACTIVE"
Enum: "ACTIVE" "SHORT_SUPPLY" "HIDDEN"

Status da opção

name
required
string

Nome da opção

description
string or null

Descrição da opção

customCode
string or null

Código personalizado para esta opção

Responses

Request samples

Content type
application/json
{
  • "basePrice": {
    },
  • "status": "ACTIVE",
  • "name": "Laranja",
  • "description": "Laranja natural",
  • "customCode": "LAR001"
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Apagar uma opção

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

ID da opção.

Responses

Response samples

Content type
application/json
{
  • "status": "fail",
  • "errors": [
    ]
}

Lista todas as variações que possuem esta opção

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

ID da opção.

query Parameters
offset
integer >= 0
Default: 0

Posição inicial do objeto a ser retornado.

limit
integer <= 100
Default: 30

Quantidade de objetos a ser retornado.

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Associar uma opção a uma variação

Authorizations:
(deliverydiretoIdoauth)
path Parameters
propertyId
required
integer

ID da variação.

optionId
required
integer

ID da opção.

Request Body schema: application/json
baseMinChoices
integer
Default: 0

Número mínimo de opções obrigatórias. Ex 2, deve selecionar pelo menos duas opções.

baseMaxChoices
integer
Default: 1

Número máximo de opções que podem ser escolhidas. Ex. 3, só pode selecionar no máximo três opções

baseViewOrder
integer
Default: 1

Ordem de visualização da variação

object (Money)

Uma descrição de quantidade de dinheiro

Responses

Request samples

Content type
application/json
{
  • "baseMinChoices": 1,
  • "baseMaxChoices": 1,
  • "baseViewOrder": 1,
  • "basePrice": {
    }
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Apagar associação entre uma opção a uma variação

Authorizations:
(deliverydiretoIdoauth)
path Parameters
propertyId
required
integer

ID da variação.

optionId
required
integer

ID da opção.

Responses

Response samples

Content type
application/json
{
  • "status": "error",
  • "code": "invalid_fields",
  • "message": "Preencha os campos corretamente!"
}

Lista as opções que possuem esta variação

Authorizations:
(deliverydiretoIdoauth)
path Parameters
propertyId
required
integer

ID da variação.

query Parameters
offset
integer >= 0
Default: 0

Posição inicial do objeto a ser retornado.

limit
integer <= 100
Default: 30

Quantidade de objetos a ser retornado.

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Ordenar as opções de uma variação

Faz uma ordenação automática, de forma assíncrona, das opções de uma variação. A ordenação é feita de forma ascendente primeiro pelo baseViewOrder e depois pelo name.

Authorizations:
(deliverydiretoIdoauth)
path Parameters
propertyId
required
integer

ID da variação.

Responses

Response samples

Content type
application/json
{
  • "status": "error",
  • "code": "invalid_fields",
  • "message": "Preencha os campos corretamente!"
}

Orders

Informações dos pedidos

Lista de pedidos

Authorizations:
(deliverydiretoIdoauth)
query Parameters
customerName
string

Busca por nome do cliente

customerEmail
string

Busca por e-mail do cliente.

customerPhone
string

Busca por telefone do cliente.

customerId
string

Busca por ID do cliente

status
string
Enum: "WAITING" "APPROVED" "DONE" "REJECTED" "HIDDEN" "IN_TRANSIT" "WARNING"

Filtra por status do pedido.

ordersId
integer

Busca por identificador do pedido.

isOnlyScheduled
boolean
Default: false

Se este parâmetro for true, buscará somente os pedidos agendados, caso contrário não.

isOnlyCanceledOrders
boolean
Default: false

Se este parâmetro for true, buscará somente os pedidos cancelados. Por padrão pedidos cancelados não são retornados na listagem de pedido.

includeCanceledOrders
boolean
Default: false

Se este parâmetro for true, incluirá os pedidos cancelados na busca. Por padrão pedidos cancelados não são retornados na listagem de pedido.

includeWaitingPixPayment
boolean
Default: false

Se este parâmetro for true, incluirá os pedidos que ainda estão esperando pagamento via pix na busca. Por padrão pedidos aguardando pagamento via pix não são retornados na listagem de pedido.

dateStart
string

Data de criação inicial da busca no formato yyyy-mm-dd. Ex: 2021-05-01

dateEnd
string

Data de criação final da busca no formato yyyy-mm-dd. Ex: 2021-05-30

lastModifiedStart
string

Data inicial da última modificação dos pedidos na busca no formato yyyy-mm-dd. Ex: 2021-05-01

lastModifiedEnd
string

Data final da última modificação dos pedidos na busca no formato yyyy-mm-dd. Ex: 2021-05-30

showItems
boolean
Default: false

Mostra os itens do pedido

showExtras
boolean
Default: false

Mostra as informações extras, como programa de fidelidade, vouchers e member get member.

showMetadata
boolean
Default: false

Mostra as informações de metadata do pedido. Ex: source, utm_source e etc

offset
integer
Default: 0

Posição inicial do objeto a ser retornado.

limit
integer <= 100
Default: 30

Quantidade de objetos a ser retornado.

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Atualiza o status de um pedido.

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

Identificador do pedido.

Request Body schema: application/json

Status do pedido

status
required
string
Enum: "APPROVED" "DONE" "IN_TRANSIT" "HIDDEN" "REJECTED" "WARNING"

Status do pedido

  • APPROVED: Pedido Aprovado
  • DONE: Pedido finalizado
  • IN_TRANSIT: Pedido em trânsito
  • HIDDEN: Pedido apagado
  • REJECTED: Pedido recusado
  • WARNING: Deu algo errado no pagamento online
statusReason
string or null

Motivo do porque está apagando o pedido ou o motivo porque está recusando este pedido.

Responses

Request samples

Content type
application/json
{
  • "status": "HIDDEN",
  • "statusReason": "O cliente pediu para cancelar o pedido"
}

Response samples

Content type
application/json
{
  • "status": "fail",
  • "errors": [
    ]
}

Payment Methods

Informações sobre pagamento na entrega

Lista de formas de pagamento da entrega

Authorizations:
(deliverydiretoIdoauth)

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Criar uma forma de pagamento

Authorizations:
(deliverydiretoIdoauth)
Request Body schema: application/json

Dados da nova forma de pagamento

isTicket
boolean
Default: false

Se a forma de pagamento é vale refeição ou é vale alimentação.

isCredit
boolean
Default: false

Se essa forma de pagamento é um cartão de crédito.

onlineAcceptance
boolean
Default: true

Se essa forma de pagamento é aceita para pagamentos online na loja.

deliveryAcceptance
boolean
Default: true

Se essa forma de pagamento é aceita para pagamentos na entrega na loja.

name
required
string

O nome dessa forma de pagamento.

Responses

Request samples

Content type
application/json
{
  • "isTicket": true,
  • "isCredit": true,
  • "onlineAcceptance": false,
  • "deliveryAcceptance": false,
  • "name": "Visa (Crédito)"
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Atualiza o status da forma de pagamento

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

ID da forma de pagamento.

Request Body schema: application/json

Status da forma de pagamento

status
required
boolean
Default: true

Status da forma de pagamento

Responses

Request samples

Content type
application/json
{
  • "status": false
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Configurações de pagamento

Authorizations:
(deliverydiretoIdoauth)
Request Body schema: application/json

Configurações de pagamento

hasDiscountForCashPayment
integer or null
Default: 0

Habilita o desconto em dinheiro, se possuir o módulo de "Desconto por pagamento em dinheiro" habilitado. 1: habilitado; 0: não habilitado

discountForCashPayment
integer or null
Default: 0

Valor em porcentagem do desconto em dinheiro, se possuir o módulo de "Desconto por pagamento em dinheiro" habilitado. Ex 3%

showUserDocumentInvoice
boolean or null
Default: false

Permite ou não o CPF na nota

Responses

Request samples

Content type
application/json
{
  • "hasDiscountForCashPayment": 1,
  • "discountForCashPayment": 3,
  • "showUserDocumentInvoice": true
}

Response samples

Content type
application/json
{
  • "status": "error",
  • "code": "invalid_fields",
  • "message": "Preencha os campos corretamente!"
}

Pizza Extras

Informações dos adicionais da pizza

Lista as opções do tipo de adicional

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

Identificador da variação da pizza.

query Parameters
offset
integer
Default: 0

Posição inicial do objeto a ser retornado.

limit
integer <= 100
Default: 30

Quantidade de objetos a ser retornado.

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Cria uma opção de um tipo de adicional

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

Identificador da variação da pizza.

Request Body schema: application/json

Dados da opção

status
required
string
Default: "ACTIVE"
Enum: "ACTIVE" "SHORT_SUPPLY" "HIDDEN"

Status da opção

ACTIVE: Tamanho Ativo

SHORT_SUPPLY: Tamanho em falta, aparece no cardápio, mas não dá para selecionar

HIDDEN: Tamanho oculto, não mostra no cardápio

name
required
string
description
required
string
customCode
string or null

Código personalizado da opção

Responses

Request samples

Content type
application/json
{
  • "status": "ACTIVE",
  • "name": "4 queijos",
  • "description": "4 tipos de queijo: mussarela, gorgonzola, prato e chedder",
  • "customCode": "COD123"
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Atualiza uma opção de um tipo de adicional

Authorizations:
(deliverydiretoIdoauth)
path Parameters
propertyId
required
integer

Identificador da variação da pizza.

id
required
integer

Identificador da opção do tipo de adicional.

Request Body schema: application/json

Dados da opção a ser atualizada

status
string or null
Default: "ACTIVE"
Enum: "ACTIVE" "SHORT_SUPPLY" "HIDDEN"

Status da opção

ACTIVE: Opção Ativo

SHORT_SUPPLY: Opção em falta, aparece no cardápio, mas não dá para selecionar

HIDDEN: Opção oculto, não mostra no cardápio

name
string or null

Nome da opção

description
string or null

Descrição da opção

customCode
string or null

Código personalizado da opção

Responses

Request samples

Content type
application/json
{
  • "status": "ACTIVE",
  • "name": "4 queijos",
  • "description": "4 tipos de queijo: mussarela, gorgonzola, prato e chedder",
  • "customCode": "COD123"
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Apaga uma opção de um tipo de adicional

Authorizations:
(deliverydiretoIdoauth)
path Parameters
propertyId
required
integer

Identificador da variação da pizza.

id
required
integer

Identificador da opção do tipo de adicional.

Responses

Response samples

Content type
application/json
{
  • "status": "fail",
  • "errors": [
    ]
}

Lista os tipos de adicionais da pizza

Authorizations:
(deliverydiretoIdoauth)
query Parameters
offset
integer
Default: 0

Posição inicial do objeto a ser retornado.

limit
integer <= 100
Default: 30

Quantidade de objetos a ser retornado.

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Cria um tipo de adicional

Authorizations:
(deliverydiretoIdoauth)
Request Body schema: application/json

Dados do tipo a ser criado

choiceType
string or null
Default: "RADIO"
Enum: "CHECKBOX" "RADIO"

Tipo do item. RADIO: opção única; CHECKBOX: opção múltipla;

baseComboMinChoices
integer or null
Default: 0

Número mínimo de opções obrigatórias. Ex 2, deve selecionar pelo menos duas opções.

baseComboMaxChoices
integer or null
Default: 1

Número máximo de opções que podem ser escolhidas. Ex. 3, só pode selecionar no máximo três opções

name
required
string

Nome da variação

description
string or null

Descrição da variação.

Responses

Request samples

Content type
application/json
{
  • "choiceType": "CHECKBOX",
  • "baseComboMinChoices": 1,
  • "baseComboMaxChoices": 1,
  • "name": "Borda",
  • "description": "Escolha um recheio para a borda da pizza"
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Atualiza um tipo de adicional

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

Identificador da variação da pizza.

Request Body schema: application/json

Dados do tipo a ser atualizado

choiceType
string or null
Default: "RADIO"
Enum: "CHECKBOX" "RADIO"

Tipo do item. RADIO: opção única; CHECKBOX: opção múltipla;

baseComboMinChoices
integer or null
Default: 0

Número mínimo de opções obrigatórias. Ex 2, deve selecionar pelo menos duas opções.

baseComboMaxChoices
integer or null
Default: 1

Número máximo de opções que podem ser escolhidas. Ex. 3, só pode selecionar no máximo três opções

name
string or null

Nome da variação

description
string or null

Descrição da variação.

Responses

Request samples

Content type
application/json
{
  • "choiceType": "CHECKBOX",
  • "baseComboMinChoices": 1,
  • "baseComboMaxChoices": 1,
  • "name": "Borda",
  • "description": "Escolha um recheio para a borda da pizza"
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Apaga um tipo de adicional

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

Identificador da variação da pizza.

Responses

Response samples

Content type
application/json
{
  • "status": "fail",
  • "errors": [
    ]
}

Salva os preços dos tamanhos da opção do tipo de adicional

Authorizations:
(deliverydiretoIdoauth)
path Parameters
propertiesId
required
integer

Identificador da variação da pizza.

id
required
integer

Identificador da opção do tipo de adicional

Request Body schema: application/json

Lista de preços dos tamanhos da opção

required
Array of objects (CreatePizzaSizeOptionDTO)

Lista de preços dos tamanhos

Array
required
object (Money)

Uma descrição de quantidade de dinheiro

viewOrder
integer >= 1
Default: 1

Ordem de listagem da opção

sizesId
required
integer

Identificador do tamanho da pizza.

Responses

Request samples

Content type
application/json
{
  • "sizeOptions": [
    ]
}

Response samples

Content type
application/json
{
  • "status": "fail",
  • "errors": [
    ]
}

Lista as opções de um tipo de adicional de um determinado tamanho

Authorizations:
(deliverydiretoIdoauth)
path Parameters
sizesId
required
integer

Identificador do tamanho da pizza.

propertiesId
required
integer

Identificador da variação da pizza.

query Parameters
name
string

Nome da opção.

code
string

Código personalizado da opção.

offset
integer
Default: 0

Posição inicial do objeto a ser retornado.

limit
integer <= 100
Default: 30

Quantidade de objetos a ser retornado.

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Pizza Flavor Availabilities

Informações das disponibilidades dos sabores das pizzas

Lista de disponibilidades do sabor

Authorizations:
(deliverydiretoIdoauth)
path Parameters
flavorId
required
integer

Identificador do sabor da pizza.

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Criar os horários em que este sabor estará disponível

Authorizations:
(deliverydiretoIdoauth)
path Parameters
flavorId
required
integer

Identificador do sabor da pizza.

Request Body schema: application/json

Horários de disponibilidades do sabor a serem adicionados

required
Array of objects (CreatePizzaItemAvailabilityDTO)

Lista de disponibilidade

Array
required
ISO8601Time (string)

Horário inicial no qual o item fica disponível

required
ISO8601Time (string)

Horário final no qual o item fica disponível

weekday
required
integer

Responses

Request samples

Content type
application/json
{
  • "availabilities": [
    ]
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Atualiza uma disponibilidade de um sabor

Authorizations:
(deliverydiretoIdoauth)
path Parameters
flavorId
required
integer

Identificador do sabor da pizza.

id
required
integer

Identificador desse horário de disponibilidade a ser alterado.

Request Body schema: application/json

Horários de disponibilidades do sabor a serem alterados

required
ISO8601Time (string)

Horário inicial no qual o item fica disponível no formato HH:mm. Ex: 14:34.

required
ISO8601Time (string)

Horário final no qual o item fica disponível no formato HH:mm. Ex: 14:34.

weekday
required
integer

Responses

Request samples

Content type
application/json
{
  • "periodStart": "09:00:00-03:00",
  • "periodEnd": "09:00:00-03:00",
  • "weekday": 3
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Apaga uma disponibilidade de um sabor

Authorizations:
(deliverydiretoIdoauth)
path Parameters
flavorId
required
integer

Identificador do sabor da pizza.

id
required
integer

Identificador da disponibilidade a ser apagada.

Responses

Response samples

Content type
application/json
{
  • "status": "fail",
  • "errors": [
    ]
}

Pizza Flavors

Informações dos sabores de pizza

Lista os sabores das pizzas

Authorizations:
(deliverydiretoIdoauth)
query Parameters
name
string

Nome do sabor.

type
string
Enum: "SAVORY" "SWEET"

Tipo do sabor.

offset
integer
Default: 0

Posição inicial do objeto a ser retornado.

limit
integer <= 100
Default: 30

Quantidade de objetos a ser retornado.

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Criar um novo sabor de pizza

Authorizations:
(deliverydiretoIdoauth)
Request Body schema: application/json

Dados do sabor

status
required
string
Enum: "ACTIVE" "SHORT_SUPPLY" "HIDDEN"

Status do sabor de pizza.

ACTIVE: Tamanho Ativo

SHORT_SUPPLY: Tamanho em falta, aparece no cardápio, mas não dá para selecionar

HIDDEN: Tamanho oculto, não mostra no cardápio

type
required
string
Enum: "SAVORY" "SWEET"

Tipo do sabor.

SAVORY: salgado

SWEET: doce

viewOrder
required
integer >= 1

Ordem de listagem do sabor de pizza.

(ISO8601Date (string or null))

Adicionar uma tag 'novo' ao sabor. Máximo de 15 dias.

name
required
string
description
required
string
hiddenWhenUnavailable
required
boolean

Responses

Request samples

Content type
application/json
{
  • "status": "ACTIVE",
  • "type": "SAVORY",
  • "viewOrder": 1,
  • "dayLimitWithTheBadge": "2020-01-01",
  • "name": "Calabresa",
  • "description": "Sabor calabresa",
  • "hiddenWhenUnavailable": true
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {}
}

Atualiza um sabor de pizza

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

Identificador do sabor da pizza.

Request Body schema: application/json

Dados do sabor a ser atualizado

status
string or null
Default: "ACTIVE"
Enum: "ACTIVE" "SHORT_SUPPLY" "HIDDEN"

Status do sabor de pizza.

type
string or null
Enum: "SAVORY" "SWEET"

Tipo do sabor.

SAVORY: salgado

SWEET: doce

viewOrder
integer or null >= 1

Ordem de listagem do sabor de pizza.

(ISO8601Date (string or null))

Adicionar uma tag 'novo' ao sabor. Máximo de 15 dias.

name
string or null

O nome desse sabor de pizza.

description
string or null

A descrição desse sabor de pizza.

hiddenWhenUnavailable
boolean or null

Ocultar item se estiver fora do horário de disponibilidade

Responses

Request samples

Content type
application/json
{
  • "status": "ACTIVE",
  • "type": "SAVORY",
  • "viewOrder": 1,
  • "dayLimitWithTheBadge": "2020-01-01",
  • "name": "Calabresa",
  • "description": "Sabor calabresa",
  • "hiddenWhenUnavailable": true
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {}
}

Apaga um sabor de pizza

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

Identificador do sabor da pizza.

Responses

Response samples

Content type
application/json
{
  • "status": "fail",
  • "errors": [
    ]
}

Upload da imagem do sabor da pizza

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

Identificador do sabor da pizza.

Request Body schema: multipart/form-data
file
required
string <file>

Imagem a ser enviado

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {}
}

Lista os tamanhos de pizza deste sabor

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

Identificador do sabor da pizza.

query Parameters
offset
integer
Default: 0

Posição inicial do objeto a ser retornado.

limit
integer <= 100
Default: 30

Quantidade de objetos a ser retornado.

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Atualiza um ou mais tamanhos de pizza do sabor.

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

Identificador do sabor da pizza.

Request Body schema: application/json

Dados dos tamanhos a serem atualizados neste sabor

required
Array of objects (UpdatePizzaFlavorSizeDTO)

Lista de tamanhos a ser atualizados desse sabor

Array
(Money (object or null))

Preço atual deste tamanho neste sabor. Se este campo estiver com valor null, significa que este tamanho não estará disponível neste tamanho.

(Money (object or null))

Preço cheio tamanho neste sabor. Ex. De R$10,00 por R$5,00. O valor deste atributo seria R$10,00.

sizeId
required
integer

Identificador do tamanho da pizza

customCode
string or null

Código desse tamanho neste sabor

Responses

Request samples

Content type
application/json
{
  • "flavorSizes": [
    ]
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Adiciona um ou mais tamanhos de pizza no sabor

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

Identificador do sabor da pizza.

Request Body schema: application/json

Dados dos tamanhos a serem adicionados neste sabor

required
Array of objects (CreatePizzaFlavorSizeDTO)

Lista de tamanhos a ser criados no sabor

Array
required
object (Money)

Uma descrição de quantidade de dinheiro

(Money (object or null))

Preço cheio tamanho neste sabor. Ex. De R$10,00 por R$5,00. O valor deste atributo seria R$10,00.

sizeId
required
integer
customCode
string or null

Responses

Request samples

Content type
application/json
{
  • "flavorSizes": [
    ]
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Pizza Sizes

Informações do tamanho das pizzas

Lista os tamanhos da pizza

Authorizations:
(deliverydiretoIdoauth)
query Parameters
name
string

Nome do tamanho.

offset
integer
Default: 0

Posição inicial do objeto a ser retornado.

limit
integer <= 100
Default: 30

Quantidade de objetos a ser retornado.

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Criar um novo tamanho de pizza

Authorizations:
(deliverydiretoIdoauth)
Request Body schema: application/json

Dados do tamanho da pizza

slices
required
integer >= 1

A quantidade de pedaços que a pizza contém.

maximumFlavors
required
integer >= 1

A quantidade máxima de sabores que a pizza pode ter.

status
required
string
Enum: "ACTIVE" "SHORT_SUPPLY" "HIDDEN"

Status do sabor de pizza.

ACTIVE: Tamanho Ativo

SHORT_SUPPLY: Tamanho em falta, aparece no cardápio, mas não dá para selecionar

HIDDEN: Tamanho oculto, não mostra no cardápio

priceCalculationType
required
string
Enum: "HIGHER" "SUM" "AVERAGE" "SMALLER"

O método de cálculo do preço para este tamanho.

viewOrder
required
integer >= 1

Ordem de listagem do tamanho da pizza.

customCode
string or null
name
required
string
description
required
string
showAtCheckout
required
boolean
hiddenWhenUnavailable
required
boolean

Responses

Request samples

Content type
application/json
{
  • "slices": 6,
  • "maximumFlavors": 2,
  • "status": "ACTIVE",
  • "priceCalculationType": "AVERAGE",
  • "viewOrder": 1,
  • "customCode": "TAM_PEQ12.",
  • "name": "Média",
  • "description": "Pizza de tamanho médio, com 6 fatias.",
  • "showAtCheckout": true,
  • "hiddenWhenUnavailable": true
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Atualizar um tamanho de pizza

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

Identificador do tamanho da pizza.

Request Body schema: application/json

Dados do tamanho da pizza

status
string or null
Default: "ACTIVE"
Enum: "ACTIVE" "SHORT_SUPPLY" "HIDDEN"

Status do sabor de pizza.

ACTIVE: Tamanho Ativo

SHORT_SUPPLY: Tamanho em falta, aparece no cardápio, mas não dá para selecionar

HIDDEN: Tamanho oculto, não mostra no cardápio

priceCalculationType
string or null
Enum: "HIGHER" "SUM" "AVERAGE" "SMALLER"

O método de cálculo do preço para este tamanho.

customCode
string or null

Código do tamanho

name
string or null

O nome desse tamanho de pizza.

description
string or null

A descrição desse tamanho de pizza.

slices
integer or null

A quantidade de pedaços que a pizza contém.

maximumFlavors
integer or null

A quantidade máxima de sabores que a pizza pode ter.

viewOrder
integer or null

Ordem de listagem do sabor de pizza.

showAtCheckout
boolean or null

Este tamanho aparece no checkout como sugestão

hiddenWhenUnavailable
boolean or null

Ocultar item se estiver fora do horário de disponibilidade

Responses

Request samples

Content type
application/json
{
  • "status": "ACTIVE",
  • "priceCalculationType": "AVERAGE",
  • "customCode": "TAM_PEQ12.",
  • "name": "Média",
  • "description": "Pizza de tamanho médio, com 6 fatias.",
  • "slices": 6,
  • "maximumFlavors": 2,
  • "viewOrder": 1,
  • "showAtCheckout": true,
  • "hiddenWhenUnavailable": true
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Apagar um tamanho

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

Identificador do tamanho da pizza.

Responses

Response samples

Content type
application/json
{
  • "status": "fail",
  • "errors": [
    ]
}

Upload da imagem do tamanho da pizza

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

Identificador do tamanho da pizza.

Request Body schema: multipart/form-data
file
required
string <file>

Imagem a ser enviado

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Lista os sabores deste tamanho

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

Identificador do tamanho da pizza.

query Parameters
offset
integer
Default: 0

Posição inicial do objeto a ser retornado.

limit
integer <= 100
Default: 30

Quantidade de objetos a ser retornado.

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Apagar um sabor de um tamanho

Authorizations:
(deliverydiretoIdoauth)
path Parameters
sizeId
required
integer

Identificador do tamanho da pizza.

flavorId
required
integer

Identificador do sabor da pizza.

Responses

Response samples

Content type
application/json
{
  • "status": "fail",
  • "errors": [
    ]
}

Pizza Sizes Availabilities

Informações das disponibilidades dos tamanhos das pizzas

Lista de disponibilidades do tamanho

Authorizations:
(deliverydiretoIdoauth)
path Parameters
sizesId
required
integer

Identificador do tamanho da pizza.

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Criar os horários em que este tamanho estará disponível

Authorizations:
(deliverydiretoIdoauth)
path Parameters
sizesId
required
integer

Identificador do tamanho da pizza.

Request Body schema: application/json

Dados das disponilibidades do tamanho a serem adicionados

required
Array of objects (CreatePizzaItemAvailabilityDTO)

Lista de disponibilidade

Array
required
ISO8601Time (string)

Horário inicial no qual o item fica disponível

required
ISO8601Time (string)

Horário final no qual o item fica disponível

weekday
required
integer

Responses

Request samples

Content type
application/json
{
  • "availabilities": [
    ]
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Atualizar a disponilidade de um tamanho

Authorizations:
(deliverydiretoIdoauth)
path Parameters
sizesId
required
integer

Identificador do tamanho da pizza.

id
required
integer

Identificador desse horário de disponibilidade a ser alterado.

Request Body schema: application/json

Dados da disponilibidade do tamanho a serem alterados

required
ISO8601Time (string)

Horário inicial no qual o item fica disponível no formato HH:mm. Ex: 14:34.

required
ISO8601Time (string)

Horário final no qual o item fica disponível no formato HH:mm. Ex: 14:34.

weekday
required
integer

Responses

Request samples

Content type
application/json
{
  • "periodStart": "09:00:00-03:00",
  • "periodEnd": "09:00:00-03:00",
  • "weekday": 3
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Apaga uma disponibilidade de um tamanho

Authorizations:
(deliverydiretoIdoauth)
path Parameters
sizesId
required
integer

Identificador do tamanho da pizza.

id
required
integer

Identificador da disponibilidade a ser apagada.

Responses

Response samples

Content type
application/json
{
  • "status": "fail",
  • "errors": [
    ]
}

Properties

Informações sobre as variações

Lista as variações de um item

Authorizations:
(deliverydiretoIdoauth)
path Parameters
itemsId
required
integer

ID do item

query Parameters
offset
integer >= 0
Default: 0

Posição inicial do objeto a ser retornado.

limit
integer <= 100
Default: 30

Quantidade de objetos a ser retornado.

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Associar uma variação a um item

Authorizations:
(deliverydiretoIdoauth)
path Parameters
itemId
required
integer

ID do item.

propertyId
required
integer

ID da variação.

Request Body schema: application/json
comboMinChoices
integer
Default: 0

Número mínimo de opções obrigatórias. Ex 2, deve selecionar pelo menos duas opções.

comboMaxChoices
integer
Default: 1

Número máximo de opções que podem ser escolhidas. Ex. 3, só pode selecionar no máximo três opções

viewOrder
integer
Default: 1

Ordem de visualização da variação

Responses

Request samples

Content type
application/json
{
  • "comboMinChoices": 1,
  • "comboMaxChoices": 1,
  • "viewOrder": 1
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Apagar associação entre uma variação e um item

Authorizations:
(deliverydiretoIdoauth)
path Parameters
itemId
required
integer

ID do item.

propertyId
required
integer

ID da variação.

Responses

Response samples

Content type
application/json
{
  • "status": "error",
  • "code": "invalid_fields",
  • "message": "Preencha os campos corretamente!"
}

Ordenar as variações de um item

Faz uma ordenação automática, de forma assíncrona, das variações de um item. A ordenação é feita de forma ascendente primeiro pelo viewOrder e depois pelo name.

Authorizations:
(deliverydiretoIdoauth)
path Parameters
itemId
required
integer

ID do item.

Responses

Response samples

Content type
application/json
{
  • "status": "error",
  • "code": "invalid_fields",
  • "message": "Preencha os campos corretamente!"
}

Ordenar as opções de uma variação que pertence à um item

Faz uma ordenação automática, de forma assíncrona, das opções de uma variação que pertence à um item. A ordenação é feita de forma ascendente primeiro pelo viewOrder e depois pelo name.

Authorizations:
(deliverydiretoIdoauth)
path Parameters
itemId
required
integer

ID do item.

propertyId
required
integer

ID da variação.

Responses

Response samples

Content type
application/json
{
  • "status": "error",
  • "code": "invalid_fields",
  • "message": "Preencha os campos corretamente!"
}

Lista de variações

Authorizations:
(deliverydiretoIdoauth)
query Parameters
id
integer

ID da variação.

offset
integer >= 0
Default: 0

Posição inicial do objeto a ser retornado.

limit
integer <= 100
Default: 30

Quantidade de objetos a ser retornado.

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Criar uma nova variação

Authorizations:
(deliverydiretoIdoauth)
Request Body schema: application/json

Dados da variação a ser adicionado

baseComboMinChoices
integer
Default: 0

Número mínimo de opções obrigatórias. Ex 2, deve selecionar pelo menos duas opções.

baseComboMaxChoices
integer
Default: 1

Número máximo de opções que podem ser escolhidas. Ex. 3, só pode selecionar no máximo três opções

priceCalculationType
string
Default: "HIGHER"
Enum: "AVERAGE" "HIGHER" "SMALLER" "SUM"

Tipo que cálculo. Ex. "AVERAGE" o valor final da variação será a média dos preços das opções

choiceType
string
Default: "CHECKBOX"
Enum: "CHECKBOX" "RADIO" "MULTIPLE"

Tipo do item. RADIO: opção única; CHECKBOX: opção múltipla; MULTIPLE - opção somável

isFractional
integer
Default: 0

É usado para saber se o produto é ou não do tipo fracionário, propriedade utilizada para integração em alguns PDVs

name
required
string
description
string

Responses

Request samples

Content type
application/json
{
  • "baseComboMinChoices": 1,
  • "baseComboMaxChoices": 1,
  • "priceCalculationType": "AVERAGE",
  • "choiceType": "CHECKBOX",
  • "isFractional": 1,
  • "name": "Sabor",
  • "description": "Tipos de sabores do sorvete"
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Atualizar uma variação

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

ID da variação.

Request Body schema: application/json
priceCalculationType
string or null
Default: "HIGHER"
Enum: "AVERAGE" "HIGHER" "SMALLER" "SUM"

Tipo que cálculo. Ex. "AVERAGE" o valor final da variação será a média dos preços das opções

choiceType
string or null
Default: "CHECKBOX"
Enum: "CHECKBOX" "RADIO" "MULTIPLE"

Tipo do item. RADIO: opção única; CHECKBOX: opção múltipla; MULTIPLE - opção somável

isFractional
integer or null
Default: 0

É usado para saber se o produto é ou não do tipo fracionário, propriedade utilizada para integração em alguns PDVs

baseComboMinChoices
integer or null
Default: 0

Número mínimo de opções obrigatórias. Ex 2, deve selecionar pelo menos duas opções.

baseComboMaxChoices
integer or null
Default: 1

Número máximo de opções que podem ser escolhidas. Ex. 3, só pode selecionar no máximo três opções

name
string or null

Nome da variação

description
string or null

Descrição da variação

Responses

Request samples

Content type
application/json
{
  • "priceCalculationType": "AVERAGE",
  • "choiceType": "CHECKBOX",
  • "isFractional": 1,
  • "baseComboMinChoices": 1,
  • "baseComboMaxChoices": 1,
  • "name": "Sabor",
  • "description": "Tipos de sabores do sorvete"
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Apagar uma variação

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

ID da variação.

Responses

Response samples

Content type
application/json
{
  • "status": "fail",
  • "errors": [
    ]
}

Lista todos os itens que possui esta variação

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

ID da variação.

query Parameters
offset
integer >= 0
Default: 0

Posição inicial do objeto a ser retornado.

limit
integer <= 100
Default: 30

Quantidade de objetos a ser retornado.

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Specific Locations

Informações sobre as localizações específicas

Lista as localizações específicas da loja

Authorizations:
(deliverydiretoIdoauth)
query Parameters
name
string

Busca por nome do local específico

specificLocationId
integer

Busca pelo identificador do local específico

zipcode
string

Busca pelo CEP do local específico

offset
integer
Default: 0

Posição inicial do objeto a ser retornado.

limit
integer <= 100
Default: 30

Quantidade de objetos a ser retornado.

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Cria uma localização específica

Authorizations:
(deliverydiretoIdoauth)
Request Body schema: application/json

Dados da localização específica a ser criada

required
object (Money)

Uma descrição de quantidade de dinheiro

(ISO8601Time (string or null))

O horário no qual começa a inativação da área de entrega.

(ISO8601Time (string or null))

O horário no qual termina a inativação da área de entrega.

(ISO8601Time (string or null))

Caso presente, indica o período inicial da aplicação da taxa dinâmica.

(ISO8601Time (string or null))

Caso presente, indica o período final da aplicação da taxa dinâmica.

(Money (object or null))

Caso presente, indica o valor que deve ser adicionado a taxa de entrega durante o período de aplicação da taxa dinâmica.

name
required
string or null

Nome do local específico

zipCode
required
string or null

CEP do local específico

address
string or null

Logradouro do local específico. Use este campo para detalhar com mais precisão a área específica que você deseja adicionar. Limpe os campos adicionais para utilizar somente o CEP como referência.

neighborhood
string or null

Bairro do local específico. Use este campo para detalhar com mais precisão a área específica que você deseja adicionar. Limpe os campos adicionais para utilizar somente o CEP como referência.

type
string or null
(GeographicalPoint (object or null))
radius
number or null <float>
minimumWaitingMinutes
required
integer

O tempo mínimo de entrega dessa área, em minutos.

maximumWaitingMinutes
required
integer

O tempo máximo de entrega dessa área, em minutos.

isActive
required
boolean

Status da área de entrega

Responses

Request samples

Content type
application/json
{
  • "price": {
    },
  • "inactivationStart": "09:00:00-03:00",
  • "inactivationEnd": "09:00:00-03:00",
  • "dynamicPriceStart": "09:00:00-03:00",
  • "dynamicPriceEnd": "09:00:00-03:00",
  • "dynamicPrice": {
    },
  • "name": "Área específica",
  • "zipCode": "01234-567",
  • "address": "Avenida Paulista",
  • "neighborhood": "Bela Vista",
  • "type": "string",
  • "center": {
    },
  • "radius": 0,
  • "minimumWaitingMinutes": 30,
  • "maximumWaitingMinutes": 90,
  • "isActive": true
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Atualiza uma localização específica

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

identificador do local específico.

Request Body schema: application/json

Dados do local específico a ser atualizado

(Money (object or null))

Taxa de entrega do local específico

(ISO8601Time (string or null))

O horário no qual começa a inativação da área de entrega.

(ISO8601Time (string or null))

O horário no qual termina a inativação da área de entrega.

(ISO8601Time (string or null))

Caso presente, indica o período inicial da aplicação da taxa dinâmica.

(ISO8601Time (string or null))

Caso presente, indica o período final da aplicação da taxa dinâmica.

(Money (object or null))

Caso presente, indica o valor que deve ser adicionado a taxa de entrega durante o período de aplicação da taxa dinâmica.

name
string or null

Nome do local específico

zipCode
string or null

CEP do local específico

address
string or null

Logradouro do local específico. Use este campo para detalhar com mais precisão a área específica que você deseja adicionar. Limpe os campos adicionais para utilizar somente o CEP como referência.

neighborhood
string or null

Bairro do local específico. Use este campo para detalhar com mais precisão a área específica que você deseja adicionar. Limpe os campos adicionais para utilizar somente o CEP como referência.

type
string or null
(GeographicalPoint (object or null))
radius
number or null <float>
minimumWaitingMinutes
integer or null

O tempo mínimo de entrega dessa área, em minutos.

maximumWaitingMinutes
integer or null

O tempo máximo de entrega dessa área, em minutos.

inactivationStatus
boolean or null

Status da programação de inativação

dynamicPriceStatus
boolean or null

Status do preço dinâmico

isActive
boolean or null

Status da área de entrega

Responses

Request samples

Content type
application/json
{
  • "price": {
    },
  • "inactivationStart": "09:00:00-03:00",
  • "inactivationEnd": "09:00:00-03:00",
  • "dynamicPriceStart": "09:00:00-03:00",
  • "dynamicPriceEnd": "09:00:00-03:00",
  • "dynamicPrice": {
    },
  • "name": "Área específica",
  • "zipCode": "01234-567",
  • "address": "Avenida Paulista",
  • "neighborhood": "Bela Vista",
  • "type": "string",
  • "center": {
    },
  • "radius": 0,
  • "minimumWaitingMinutes": 30,
  • "maximumWaitingMinutes": 90,
  • "inactivationStatus": true,
  • "dynamicPriceStatus": true,
  • "isActive": true
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Apaga uma localização específica

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

Identificador do local específico.

Responses

Response samples

Content type
application/json
{
  • "status": "error",
  • "code": "invalid_fields",
  • "message": "Preencha os campos corretamente!"
}

General

Configurações e informações gerais da loja.

Informações da loja

Authorizations:
(deliverydiretoIdoauth)

Responses

Response samples

Content type
application/json
{}

Altera a disponibilidade de recebimento de pedidos da loja.

Authorizations:
(deliverydiretoIdoauth)
Request Body schema: application/json

Dados do status de recebimento de pedidos da loja

accept_orders
boolean or null

Indica se a loja está aceitando pedidos no momento

Responses

Request samples

Content type
application/json
{
  • "accept_orders": false
}

Tablesections

Buscar informações sobre as seções e mesas

Seções das mesas

Authorizations:
(deliverydiretoIdoauth)

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Cria uma nova seção

Authorizations:
(deliverydiretoIdoauth)
Request Body schema: application/json
name
required
string

O nome da seção

tableQuantity
required
integer

Quantidade de meses que a seção terá

status
string or null

Status da seção

viewOrder
integer or null

Ordem da visualização da seção

prefixCode
integer or null

Código da Seção

Responses

Request samples

Content type
application/json
{
  • "name": "Centro",
  • "tableQuantity": 3,
  • "status": "ACTIVE",
  • "viewOrder": 1,
  • "prefixCode": 1
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Atualiza os dados de uma seção

Authorizations:
(deliverydiretoIdoauth)
path Parameters
idempotencyKey
required
string

IdempotencyKey da seção

Request Body schema: application/json
name
string or null

Nome da seção.

status
string or null

Status da seção

prefixCode
integer or null

Código da Seção

tableQuantity
required
integer

Quantidade de meses que a seção terá

Responses

Request samples

Content type
application/json
{
  • "name": "Seção 1",
  • "status": "ACTIVE",
  • "prefixCode": 1,
  • "tableQuantity": 3
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Apaga uma seção

Authorizations:
(deliverydiretoIdoauth)
path Parameters
idempotencyKey
required
string

IdempotencyKey da seção

Responses

Response samples

Content type
application/json
{
  • "status": "fail",
  • "errors": [
    ]
}

Voucher Availabilities

Buscar informações sobre as disponibilidade do cupom

Lista os horários que este cupom é aplicável

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

ID do cupom de desconto.

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Criar os horários que este cupom é aplicável

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

ID do cupom de desconto.

Request Body schema: application/json

Dados da disponilibidade do cupom a ser adicionado

required
Array of objects (CreateVoucherAvailabilityDTO)

Lista de disponibilidade

Array
required
ISO8601Time (string)

Disponibilidade inicial do cupom.

required
ISO8601Time (string)

Disponibilidade final do cupom.

weekday
required
integer [ 1 .. 7 ]

Dia da semana desse horário de operação. Onde 1 representa o domingo e 7 o sábado.

Responses

Request samples

Content type
application/json
{
  • "voucherAvailabilities": [
    ]
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Editar uma disponibilidade de um cupom

Authorizations:
(deliverydiretoIdoauth)
path Parameters
vouchersId
required
integer

ID do cupom de desconto.

id
required
integer

Identificador desse horário de operação

Request Body schema: application/json

Dados da disponilibidade do cupom a ser adicionado

required
ISO8601Time (string)

Disponibilidade inicial do cupom.

required
ISO8601Time (string)

Disponibilidade final do cupom.

weekday
required
integer [ 1 .. 7 ]

Dia da semana desse horário de operação. Onde 1 representa o domingo e 7 o sábado.

Responses

Request samples

Content type
application/json
{
  • "shiftStart": "09:00:00-03:00",
  • "shiftEnd": "09:00:00-03:00",
  • "weekday": 3
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Apaga uma disponibilidade de um cupom

Authorizations:
(deliverydiretoIdoauth)
path Parameters
vouchersId
required
integer

ID do cupom de desconto.

id
required
integer

Identificador da disponibilidade a ser apagada

Responses

Response samples

Content type
application/json
{
  • "status": "fail",
  • "errors": [
    ]
}

Vouchers

Buscar informações sobre os vouchers (cupons de desconto)

Listar os cupons de descontos

Authorizations:
(deliverydiretoIdoauth)
query Parameters
code
string

Código do cupom de desconto

offset
integer >= 0
Default: 0

Posição inicial do objeto a ser retornado.

limit
integer <= 100
Default: 30

Quantidade de objetos a ser retornado.

active
boolean

Cupom está ativo.

expired
boolean

Este cupom está expirado.

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Criar um novo cupom de desconto

Authorizations:
(deliverydiretoIdoauth)
Request Body schema: application/json

Dados do cupom de desconto

object (Money)

Uma descrição de quantidade de dinheiro

valuePercent
integer
Default: 0

Valor de desconto em percentagem

object (Money)

Uma descrição de quantidade de dinheiro

type
required
string
Default: "PERCENT"
Enum: "FIXED" "PERCENT" "CUSTOM" "SHIPPING"

Tipo de cupom de desconto

  • FIXED: Desconto com valor fixo no Subtotal do pedido
  • PERCENT: Desconto com valor em porcentagem no Subtotal do pedido
  • CUSTOM: Brinde no pedido. O brinde é descrito no campo description e também pode ter o código do produto no PDV no campo customCode
  • SHIPPING: Cupom de frete grátis
isIndividual
boolean
Default: true

Indica se é de uso individual

isBirthdayType
boolean
Default: true

Indica se é um cupom de aniversário

active
boolean
Default: true

Indica se está ativo ou não

totalTimes
integer
Default: 0

Total de vezes que este cupom já foi usado pelos clientes

isOnlyFirstOrder
boolean
Default: false

Indica se é de uso só na primeira compra

isOnlyApps
boolean
Default: false

Indica se é de uso somente nos aplicativos mobile

applyTo
string
Default: "GLOBAL"
Enum: "GLOBAL" "CATEGORY"

Indica qual tipo de uso do cupom. GLOBAL: uso geral; CATEGORY: uso somente em algumas categorias.

isBrandVoucher
boolean
Default: false

Indica se o cupom foi criado pela marca

isWhatsappType
boolean
Default: false

Indica se é de uso para pedidos vindo do WhatsApp

(ISO8601Date (string or null))

Data de expiração do cupom

description
string

Descrição do cupom de desconto

code
string

Código do cupom de desconto

valueText
string or null

Prêmio personalizado. Ex: barra de chocolate

limitOfUses
integer or null

Quantidade máxima que o cupom pode ser usado. Ex: 10 Só pode ser usada 10 vezes este cupom.

customCode
string or null

Código do produto

Responses

Request samples

Content type
application/json
{
  • "value": {
    },
  • "valuePercent": 0,
  • "minOrder": {
    },
  • "type": "FIXED",
  • "isIndividual": false,
  • "isBirthdayType": false,
  • "active": false,
  • "totalTimes": 12,
  • "isOnlyFirstOrder": true,
  • "isOnlyApps": true,
  • "applyTo": "GLOBAL",
  • "isBrandVoucher": true,
  • "isWhatsappType": true,
  • "expires": "2020-01-01",
  • "description": "Cupom de desconto de natal com 10% de desconto",
  • "code": "PROMO10",
  • "valueText": "Sobremesa de chocolate",
  • "limitOfUses": 10,
  • "customCode": "COD123"
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Lista de categorias associado ao cupom de desconto

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

ID do cupom de desconto

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Adicionar novas categorias a um cupom de desconto

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

ID do cupom de desconto

Request Body schema: application/json

IDs da categoria a ser adicionada

categoryIds
required
Array of integers

Lista de id da categoria

Responses

Request samples

Content type
application/json
{
  • "categoryIds": [
    ]
}

Response samples

Content type
application/json
{
  • "status": "error",
  • "code": "invalid_fields",
  • "message": "Preencha os campos corretamente!"
}

Remover categorias do cupom de desconto

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

ID do cupom de desconto

Request Body schema: application/json

IDs da categoria a ser removida

categoryIds
required
Array of integers

Lista de id da categoria

Responses

Request samples

Content type
application/json
{
  • "categoryIds": [
    ]
}

Response samples

Content type
application/json
{
  • "status": "error",
  • "code": "invalid_fields",
  • "message": "Preencha os campos corretamente!"
}

Atualiza um cupom de desconto

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

ID do cupom de desconto

Request Body schema: application/json

Dados do cupom de desconto

type
string or null
Enum: "FIXED" "PERCENT" "CUSTOM" "SHIPPING"

Tipo de cupom de desconto

  • FIXED: Desconto com valor fixo no Subtotal do pedido
  • PERCENT: Desconto com valor em porcentagem no Subtotal do pedido
  • CUSTOM: Brinde no pedido. O brinde é descrito no campo description e também pode ter o código do produto no PDV no campo customCode
  • SHIPPING: Cupom de frete grátis
(ISO8601Date (string or null))

Data de expiração do cupom

applyTo
string or null
Enum: "GLOBAL" "CATEGORY"

Indica qual tipo de uso do cupom. GLOBAL: uso geral; CATEGORY: uso somente em algumas categorias.

(Money (object or null))

Valor de desconto em dinheiro

(Money (object or null))

Valor mínimo que o cupom possa ser usado. 0.00 indica que não tem valor mínimo.

description
string or null

Descrição do cupom de desconto

code
string or null

Código do cupom de desconto

valueText
string or null

Prêmio personalizado. Ex: barra de chocolate

isIndividual
boolean or null

Indica se é de uso individual

isBirthdayType
boolean or null

Indica se é um cupom de aniversário

active
boolean or null

Indica se está ativo ou não

totalTimes
integer or null

Total de vezes que este cupom já foi usado pelos clientes

isOnlyFirstOrder
boolean or null

Indica se é de uso só na primeira compra

isOnlyApps
boolean or null

Indica se é de uso somente nos aplicativos mobile

isBrandVoucher
boolean or null

Indica se o cupom foi criado pela marca

limitOfUses
integer or null

Quantidade máxima que o cupom pode ser usado. Ex: 10 Só pode ser usada 10 vezes este cupom.

isWhatsappType
boolean or null

Indica se é de uso para pedidos vindo do WhatsApp

valuePercent
integer or null

Valor de desconto em percentagem

customCode
string or null

Código do produto

Responses

Request samples

Content type
application/json
{
  • "type": "FIXED",
  • "expires": "2020-01-01",
  • "applyTo": "GLOBAL",
  • "value": {
    },
  • "minOrder": {
    },
  • "description": "Cupom de desconto de natal com 10% de desconto",
  • "code": "PROMO10",
  • "valueText": "Sobremesa de chocolate",
  • "isIndividual": false,
  • "isBirthdayType": false,
  • "active": false,
  • "totalTimes": 12,
  • "isOnlyFirstOrder": false,
  • "isOnlyApps": false,
  • "isBrandVoucher": false,
  • "limitOfUses": 10,
  • "isWhatsappType": false,
  • "valuePercent": 12,
  • "customCode": "COD123"
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Apaga um cupom de desconto

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

ID do cupom de desconto

Responses

Response samples

Content type
application/json
{
  • "status": "fail",
  • "errors": [
    ]
}

Listar os clientes que usaram este cupom de desconto

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

ID do cupom de desconto

query Parameters
offset
integer >= 0
Default: 0

Posição inicial do objeto a ser retornado.

limit
integer <= 100
Default: 30

Quantidade de objetos a ser retornado.

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Webhooks

Use os webhooks do Delivery Direto para ser notificado em tempo real dos eventos que acontecem no sistema. Caso a URL não responda por qualquer motivo, o webhook será executado novamente em outros momentos: 1 minuto depois da última tentativa; se falhar, tenta depois 2 minutos; se falhar, tenta mais uma vez depois de 5 minutos; se falhar, faz uma última tentativa depois de 10 minutos.

Lista de webhooks

Lista todos os webhooks que foram cadastrados e não apagados.

Authorizations:
(deliverydiretoIdoauth)
query Parameters
offset
integer >= 0
Default: 0

Posição inicial do objeto a ser retornado.

limit
integer [ 1 .. 100 ]
Default: 30

Quantidade de objetos a ser retornado.

Responses

Response samples

Content type
application/json
{}

Configura um webhook

Authorizations:
(deliverydiretoIdoauth)
Request Body schema: application/json

Dados do webhook a ser configurado

eventType
required
string
Default: "ORDER_PLACED"
Enum: "ORDER_EDITED" "ORDER_PLACED" "ORDER_STATUS_CHANGED"

Tipo de evento

  • ORDER_EDITED: Evento de pedido editado
  • ORDER_PLACED: Evento de pedido registrado
  • ORDER_STATUS_CHANGED: Evento de mudança de status do pedido
status
required
string
Default: "ACTIVE"
Enum: "ACTIVE" "INACTIVE"

Status do webhook

webhookUrl
required
string

A URL que será chamada

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{}

Apaga um webhook

O tipo de evento que dever ser passado deve ser em letras maiúsculas. Ex: ORDER_PLACED. Se passar order_placed ou orDEr_placED não será reconhecido.

Authorizations:
(deliverydiretoIdoauth)
path Parameters
eventType
required
string
Enum: "ORDER_EDITED" "ORDER_PLACED" "ORDER_STATUS_CHANGED"

Tipo de evento

Responses

Response samples

Content type
application/json
{
  • "status": "error",
  • "code": "invalid_fields",
  • "message": "Preencha os campos corretamente!"
}

Exemplo de um webhook

Neste exemplo, iremos fazer um POST https://deliverydireto.com.br/admin-api/v1/webhooks/example com o seguinte body e o que é esperado na resposta. Iremos enviar o status modificado ou o pedido completo. O webhook deve responder com código 200 (OK) em menos de 10 segundos, caso contrário o webhook será considerado como ERROR.

Authorizations:
(deliverydiretoIdoauth)
header Parameters
X-DeliveryDireto-Signature
required
string

A assinatura HMAC do corpo da resposta, utilizando o algoritmo SHA256, e o client_secret da integração que criou o webhook como secret.

Request Body schema: application/json

Conteúdo do webhook

eventType
required
string
Enum: "ORDER_EDITED" "ORDER_PLACED" "ORDER_STATUS_CHANGED"

Tipo de evento

  • ORDER_EDITED: Evento de pedido editado
  • ORDER_PLACED: Evento de pedido registrado
  • ORDER_STATUS_CHANGED: Evento de mudança de status do pedido
orderStatus
string or null
Enum: "APPROVED" "DONE" "IN_TRANSIT" "HIDDEN" "REJECTED" "WAITING" "WARNING"

Status do pedido

  • APPROVED: Pedido Aprovado
  • DONE: Pedido finalizado
  • IN_TRANSIT: Pedido em trânsito
  • HIDDEN: Quando o pedido é agendado ou apagado fica este status
  • REJECTED: Pedido cancelado
  • WAITING: Pedido em espera
  • WARNING: Deu algo errado no pagamento online
ordersId
required
integer

Identificador do pedido

storesId
required
integer

Identificador da loja

(AdminOrderDTO (object or null))

Pedido

Responses

Request samples

Content type
application/json
{
  • "eventType": "ORDER_EDITED",
  • "orderStatus": "APPROVED",
  • "ordersId": 123,
  • "storesId": 1234,
  • "order": {
    }
}

Lista de webhooks que foram chamados

Authorizations:
(deliverydiretoIdoauth)
query Parameters
offset
integer >= 0
Default: 0

Posição inicial do objeto a ser retornado.

limit
integer [ 1 .. 100 ]
Default: 30

Quantidade de objetos a ser retornado.

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Força uma nova chamada para os webhooks

Faz uma nova tentativa de chamada nestes webhooks e estas chamadas são assíncronas.

Authorizations:
(deliverydiretoIdoauth)
Request Body schema: application/json

Lista de identificadores do webhook a ser chamado novamente

ids
Array of integers[ items >= 1 ]

Lista de identificadores do log do webhook

Responses

Request samples

Content type
application/json
{
  • "ids": [
    ]
}

Kds

Informações dos pedidos no KDS

Lista de pedidos

Authorizations:
(deliverydiretoIdoauth)
query Parameters
dateStart
string

Data de inicial da busca no formato yyyy-MM-dd HH:mm:ss em UTC. Ex: 2023-06-22 15:34:45, serão exibidos todos os pedidos que foram aprovados a partir de 2023-06-22 15:34:45 até hoje

offset
integer
Default: 0

Posição inicial do objeto a ser retornado.

limit
integer <= 100
Default: 30

Quantidade de objetos a ser retornado.

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}

Atualiza o status do pedido no KDS

Authorizations:
(deliverydiretoIdoauth)
path Parameters
id
required
integer

Identificador do pedido.

Request Body schema: application/json

Status do pedido no KDS

status
required
string
Enum: "IN_PRODUCTION" "DONE"

Status do pedido kds

  • IN_PRODUCTION: Pedido em produção
  • DONE: Pedido finalizado

Responses

Request samples

Content type
application/json
{
  • "status": "IN_PRODUCTION"
}

Response samples

Content type
application/json
{
  • "status": "fail",
  • "errors": [
    ]
}

Pega o pedido pelo id do pedido

Authorizations:
(deliverydiretoIdoauth)
query Parameters
orderId
integer

Id do pedido

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    }
}