CONTEÚDO
01. VISÃO GERAL
...
Esse endpoint serve para informar os itens cancelados.
O endpoint CancelledItems da API Order Mesa é utilizado para envio do resultado da solicitação de itens cancelados de pedido através do Ponto de Vendas (PDV). Este endpoint recebe o mesmo corpo da resposta obtida pelo endpoint GetCancelledItems
- API Order Mesa - Get Cancelled Items
...
02. ENDPOINT
Método | URL | Ambiente |
---|
POST | https://api-barramento.meuelevestage.com/order/cancelledItems | Homologação |
POST | https://api-barramento.meueleve.com.br/order/cancelledItems | Produção |
...
03. EXEMPLO DE UTILIZAÇÃO
3.1 - Envio da requisição para obter o status de um item cancelado no PDV:
Ao enviar a requisição para este endpoint, o sistema processa a solicitação e retorna o status atualizado de um item cancelado no PDV. O corpo da requisição deve conter os dados obtidos no endpoint getCancelledItems, e a resposta fornecerá as informações detalhadas sobre o cancelamento solicitado.
Bloco de código |
---|
title | Corpo da requisição no JSON |
---|
linenumbers | true |
---|
|
{
"success": true,
"error": null,
"integrationHubServiceId": "5ffec6b8-1c55-4a7d-985f-12d13685b553",
"orderKeyType": "TABLE",
"orderKey": ["22"],
"lastestUpdatedStatus": "2024-07-18 09:26:47",
"items": [
{
"id": "39735945",
"index": "5",
"name": "MARACUJA",
"externalCode": "58",
"quantity": 1,
"cancellationAgent": "ALBINO",
"cancellationDateTime": "2024-07-17 14:19:33",
"cancellationReason": " 55596;",
"tableCardNumber": "22",
"productionPoint": "NENHUM"
}
]
} |
Nota |
---|
title | Nota: HTTP Status Code = 226 IM Used |
---|
|
A solicitação foi processada com sucesso e o resultado foi retornado conforme esperado. |
...
3.2. Request - Corpo da requisição para consultar o cancelamento de vários pedidos no PDV específico:
Essa requisição é enviada para verificar se os itens de vários pedidos cancelados em um PDV específico foram transmitidos com sucesso.
Bloco de código |
---|
title | Corpo da requisição no JSON |
---|
linenumbers | true |
---|
|
{
"success": true,
"error": null,
"integrationHubServiceId": "d01ea5cd-7952-4b77-b0ae-ed93aa32e832",
"orderKeyType": "TABLE",
"orderKey": [
"22",
"23"
],
"lastestUpdatedStatus": "2024-07-18 09:48:03",
"items": [
{
"id": "39735945",
"index": "5",
"name": "MARACUJA",
"externalCode": "58",
"quantity": 1,
"cancellationAgent": "ALBINO",
"cancellationDateTime": "2024-07-17 14:19:33",
"cancellationReason": " 55596;",
"tableCardNumber": "22",
"productionPoint": "NENHUM"
},
{
"id": "3973594011",
"index": "19",
"name": "MARACUJA",
"externalCode": "58",
"quantity": 1,
"cancellationAgent": "ALBINO",
"cancellationDateTime": "2024-07-17 16:04:27",
"cancellationReason": " 55596;",
"tableCardNumber": "23",
"productionPoint": "NENHUM"
}
]
} |
Dica |
---|
|
O corpo da request preenchida, deverá ser obrigatóriamente o é o mesmo que o corpo do response obtido através do endpoint GetCancelledItems |
Dicionário de Request
Informações sobre o campos da request da API cancelledItems, é utilizada para retornar os dados do(s) pedido(s) cancelado(s).
- Estrutura cancelledItems:
Campo | Valor | Descrição |
---|
success * | boolean | Indica se a operação foi bem-sucedida |
error | objeto | Contém informações sobre erros, se houver (veja na tabela de error) |
integrationHubServiceId * | string | Chave de identificação de integração |
orderKeyType * | enum | Tipo da chave do pedido (veja na tabela orderKeyType) |
orderKey * | array | Lista de identificadores de pedidos (números de mesa, cartão, ou ID de pedido) |
lastestUpdatedStatus * | string (data e hora) | Data e hora da última atualização do status dos pedidos |
items * | array | Lista de itens cancelados |
- Enumerações para orderKeyType:
Âncora |
---|
| table_orderKeyType |
---|
| table_orderKeyType |
---|
|
Enum | Valor | Descrição |
---|
TABLE | TABLE | Identifica o pedido pelo número da mesa |
CARD | CARD | Identifica o pedido pelo número do cartão |
ORDER_ID | ORDER_ID | Identifica o pedido por um ID exclusivo |
- Estrutura cancelledItems (dentro de
item
):
Campo | Valor | Descrição |
---|
id * | string | Identificador do produto no lançamento. |
index * | string | Posição do produto no lançamento. |
name * | string | Nome do item/produto. |
externalCode * | string | Código do produto no PDV integrado. |
quantity * | número | Quantidade do item cancelado. |
cancellationAgent * | string | Operador responsável pelo cancelamento. |
cancellationDateTime * | string (data e hora) | Data e hora do cancelamento. |
cancellationReason * | string | Motivo do cancelamento. |
tableCardNumber * | string | Número da mesa ou cartão associado ao item cancelado |
productionPoint * | string | Ponto de produção relacionado ao item |
Enum | Valor | Descrição |
---|
code * | código do erro | Identifica o código do erro |
message * | messagem do erro | Descrição detalhada do erro ocorrido, ex: "body.orderKeyType must be one of [ORDER_ID, TABLE, CARD]" |
Dica |
---|
|
Campos marcaos com o * (asteristico) o seu preenchimento é obrigatório |
...
04. ERROS
A seguir, alguns dos erros comuns que podem ser apresentados ao lidar com requisições HTTP e suas respectivas respostas:
- HTTP Status Code - 400 - Bad Request
Âncora |
---|
| status_code_400 |
---|
| status_code_400 |
---|
|
O código de status HTTP 400, conhecido como "Bad Request" (Requisição Inválida), indica que o servidor não pôde processar a requisição do cliente devido a uma sintaxe inválida, estrutura malformada ou dados inválidos presentes na requisição:
4.1 - Formato inválido do JSON esperado:
A requisição foi enviada com um JSON malformado ou inválido, o que impede o sistema de interpretá-la corretamente. Isso ocorre quando a estrutura JSON contém erros de sintaxe, como chaves ou colchetes incorretos.
Bloco de código |
---|
title | Corpo da requisição no JSON faltando campos |
---|
linenumbers | true |
---|
|
{
"integrationHubServiceId": "5ffec6b8-1c55-4a7d-985f-12d13685b553",
"orderKeyType": "TABLE",
"orderKey": [
"22",
"23"
],
"lastestUpdatedStatus": "2024-07-18 09:48:03",
"items": [
{
"id": "39735945",
"index": "5",
"name": "MARACUJA",
"externalCode": "58",
"quantity": 1,
"cancellationAgent": "ALBINO",
"cancellationDateTime": "2024-07-17 14:19:33",
"cancellationReason": " 55596;",
"tableCardNumber": "22",
"productionPoint": "NENHUM"
},
{
"id": "3973594011",
"index": "19",
"name": "MARACUJA",
"externalCode": "58",
"quantity": 1,
"cancellationAgent": "ALBINO",
"cancellationDateTime": "2024-07-17 16:04:27",
"cancellationReason": " 55596;",
"tableCardNumber": "23",
"productionPoint": "NENHUM"
}
]
} |
Bloco de código |
---|
title | Resposta do JSON da requisição |
---|
linenumbers | true |
---|
|
{
"errors": [
{
"key": "success",
"message": "body.success is required"
}
]
} |
...
4.2 - JSON enviado com a ausência de um ou mais campos obrigatórios:
Se a requisição estiver faltando um ou mais campos obrigatórios, o servidor responderá com um erro 400. Cada campo requerido deve estar presente para que a operação seja processada corretamente
Bloco de código |
---|
title | JSON Inválido |
---|
linenumbers | true |
---|
|
{
"success": true,
"error": null,
"integrationHubServiceId": "5ffec6b8-1c55-4a7d-985f-12d13685b553",
"orderKeyType": "String",
"orderKey": [
"22",
"23"
],
"lastestUpdatedStatus": "2024-07-18 09:48:03",
"items": [
{
"id": "39735945",
"index": "5",
"name": "MARACUJA",
"externalCode": "58",
"quantity": 1,
"cancellationAgent": "ALBINO",
"cancellationDateTime": "2024-07-17 14:19:33",
"cancellationReason": " 55596;",
"tableCardNumber": "22",
"productionPoint": "NENHUM"
},
{
"id": "3973594011",
"index": "19",
"name": "MARACUJA",
"externalCode": "58",
"quantity": 1,
"cancellationAgent": "ALBINO",
"cancellationDateTime": "2024-07-17 16:04:27",
"cancellationReason": " 55596;",
"tableCardNumber": "23",
"productionPoint": "NENHUM"
}
]
} |
Bloco de código |
---|
title | Resposta do JSON da requisição |
---|
linenumbers | true |
---|
|
{
"errors": [
{
"key": "orderKeyType",
"message": "body.orderKeyType must be one of [ORDER_ID, TABLE, CARD]"
}
]
} |
Nota |
---|
title | Nota: HTTP Status Code = 400 Bad Request |
---|
|
A solicitação é inválida e não pôde ser processada devido a erros na entrada fornecida. Verifique os dados enviados e tente novamente. |
...
- HTTP Status Code 401 - Unauthorized
Âncora |
---|
| status_code_401 |
---|
| status_code_401 |
---|
|
O código de status HTTP 401, conhecido como "Unauthorized" (Não Autorizado), indica que a requisição não foi aplicada porque carece de credenciais de autenticação válidas para o recurso alvo. Diferente do código 403 (Forbidden), que significa que o servidor entendeu a requisição, mas se recusa a autorizá-la, o 401 é usado especificamente quando a autenticação é necessária e falhou ou ainda não foi fornecida.
Nota |
---|
title | Nota: HTTP Status Code = 401 Unauthorized |
---|
|
A solicitação não pôde ser processada porque o usuário não possui as permissões necessárias. Verifique suas credenciais e tente novamente. |
...
- HTTP Status Code 403 - Forbidden
Âncora |
---|
| status_code_403 |
---|
| status_code_403 |
---|
|
O código de status HTTP 403, conhecido como "Forbidden" (Proibido), indica que o servidor não entendeu a requisição, por causa do Token de autenticação ausente.
...
- HTTP Status Code 404 - Not Found
Âncora |
---|
| status_code_404 |
---|
| status_code_404 |
---|
|
O código de status HTTP 404, conhecido como "Not Found" (Não Encontrado), indica que o servidor não encontrou o recurso solicitado. Isso ocorrer quando o token
da requisição da autenticação, é diferente do token
gerado utilizando o integrationHubId
diferente do corpo da requisição.
Bloco de código |
---|
title | JSON de retorno de múltiplos pedidos |
---|
linenumbers | true |
---|
|
{
"success": true,
"error": null,
"integrationHubServiceId": "f1b874af-96ab-4535-aac3-25118fe586cc",
"orderKeyType": "TABLE",
"orderKey": [
"19"
],
"lastestUpdatedStatus": "2024-07-15 17:02:35",
"items": [
{
"id": "406a2a14-ac79-422a-b667-769fa1d2a9a0",
"status": {
"code": 505,
"description": "TABLE_IN_USE"
},
"deliveryAgent": null,
"deliveryDateTime": null,
"cancellationReason": null,
"tableCardNumber": "19"
}
]
} |
Bloco de código |
---|
title | Resposta do JSON da requisição |
---|
linenumbers | true |
---|
|
{
"errors": [
{
"key": "orderKeyType_orderKey",
"message": "Order status for: TABLE_22 not found"
}
]
} |
Nota |
---|
title | Nota: HTTP Status Code = 404 - Not Found |
---|
|
Uma ou mais informações enviadas não puderam ser encontradas. |
...
05. LINKS
...