Páginas filhas
  • API Order Mesa - Get Status

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

CONTEÚDO


01. VISÃO GERAL

...

Âncora
ver_geral
ver_geral

Este endpoint é utilizado para obter informações detalhadas sobre os pedidos, fornecendo um retorno em formato JSON com diversos atributos relevantes. Ao enviar um pedido uma solicitação no formato especificado, como nos exemplos abaixo. O , o endpoint processa a solicitação requisição e retorna um conjunto de dados que inclui o status mais recente do pedido, a identificação do serviço, a chave do pedido e detalhes específicos de cada item relacionado ao pedido.


...

02. ENDPOINT
Âncora
endpoint
endpoint


MétodoURLAmbiente
POSThttps://api-barramento.meuelevestage.com/order/getStatusHomologação
POSThttps://api-barramento.meueleve.com.br/order/getStatusProdução


...

03. EXEMPLO DE UTILIZAÇÃO

01. Retornar todos os estados dos pedidos: VERIFICAR COM O KENNEDY

Bloco de código
titleJSON Para retornar todos os pedidos
{
  "integrationHubServiceId": "7056c970-cb11-400f-9d4f-9f30253f3b0b",
  "orderKeyType": "TABLE",
  "orderKey": []
}

02. Obter detalhes de um pedido específico:

Âncora
utilizar
utilizar

3.1 - Request - Obter detalhes de um pedido específico:

Essa requisição é utilizada para buscar informações detalhadas sobre um pedido específico:

Âncora
detalhes_pedido_especifico
detalhes_pedido_especifico

Bloco de código
titleJSON Para envio retornar o status de um pedido específico
linenumberstrue
{
  "integrationHubServiceId": "7056c970-cb11-400f-9d4f-9f30253f3b0b",
  "orderKeyType": "TABLE",
  "orderKey": ["40"]
}
Nota
titleNota: HTTP Status Code = 202 Accepted

A solicitação foi aceita, mas ainda não foi processada. É necessário aguardar alguns momentos e, em seguida, entrar em contato no mesmo endereço para obter o status do pedido solicitado.


...


3.2 - Request - Ao reenviar a solicitação, a resposta será a seguinte:

Ao reenviar a requisição, você receberá uma resposta contendo o status atualizado e os detalhes do pedido.

Bloco de código
titleJSON de resposta do retorno de um pedido específico HTTP Status Code = 208
linenumberstrue
{
	"errors": [
		{
			"key": "orderKeyType_orderKey",
			"message": "Order status request already exists: TABLE_40"
		}
	]
}  
 
Nota
titleNota: HTTP Status Code = 208 Already Reported

A solicitação já foi enviada. É necessário aguardar alguns momentos e, em seguida, entrar em contato no mesmo endereço para obter o status do pedido solicitado.


...


3.3 - Request - Reenvio da solicitação, resposta de processamento:

Reenviando a solicitação, o sistema processará o pedido e fornecerá a resposta com o status do processamento. 03. Retorno detalhado de um pedido específico. Fornece todas as informações relevantes sobre um pedido.

Bloco de código
titleJSON de resposta do retorno de um pedido
linenumberstrue
{
	"success": true,
	"error": null,
	"integrationHubServiceId": "1853f0ab-faf7-47d6-a193-610b20807143",
	"orderKeyType": "TABLE",
	"orderKey": [
		"1940"
	],
	"lastestUpdatedStatus": "2024-06-28 09:04:06",
	"items": [
		{
			"id": "50425147-5d06-4b87-a05b-4586f2dccc71",
			"status": {
				"code": 505,
				"description": "TABLE_IN_USE"
			},
			"deliveryAgent": null,
			"deliveryDateTime": null,
			"cancellationReason": null,
			"tableCardNumber": "1940"
		}
	]
}
Nota
titleNota: HTTP Status Code = 226 IM Used

A solicitação foi processada com sucesso e o resultado foi retornado conforme esperado.


...


3.4 - Request - Retornar o status de múltiplos pedidos:

Essa requisição é utilizada para obter o status atualizado de diversos pedidos simultaneamente.

...

O sistema retornará as informações detalhadas de cada pedido

Âncora
multiplos
multiplos

Bloco de código
titleJSON Para retornar múltiplos pedidos
linenumberstrue
{
  "integrationHubServiceId": "7056c970-cb11-400f-9d4f-9f30253f3b0b",
  "orderKeyType": "TABLE",
  "orderKey": ["40", "20"]
}
Nota
titleNota: HTTP Status Code = 202 Accepted

A solicitação foi aceita, mas ainda não foi processada. É necessário aguardar alguns momentos e, em seguida, entrar em contato no mesmo endereço para obter o status do pedido solicitado.


...


3.5 - Request - Ao reenviar a solicitação, a resposta será a seguinte:

Ao reenviar a requisição, receberá uma resposta contendo o status atualizado e os detalhes dos pedidos.

Bloco de código
titleJSON de resposta do retorno de um pedido específico HTTP Status Code = 208
linenumberstrue
{
	"errors": [
		{
			"key": "orderKeyType_orderKey",
			"message": "Order status request already exists: TABLE_40, 20"
		}
	]
}  
 
Nota
titleNota: HTTP Status Code = 208 Already Reported

A solicitação já foi enviada. É necessário aguardar alguns momentos e, em seguida, entrar em contato no mesmo endereço para obter o status do pedido solicitado.


...


3.6 - Request - Reenvio da solicitação, resposta de processamento:

Reenviando a solicitação, o sistema processará o pedido e fornecerá a resposta com o status do processamento. 

Bloco de código
titleJSON de retorno de múltiplos pedidos
linenumberstrue
{
	"success": true,
	"error": null,
	"integrationHubServiceId": "647469f8-b31b-4fae-ba33-99e04def555b",
	"orderKeyType": "TABLE",
	"orderKey": [
		"40",
		"20"
	],
	"lastestUpdatedStatus": "2024-06-28 09:13:46",
	"items": [
		{
			"id": "8c3752a1-ae15-42a1-bafb-189ca95f0211",
			"status": {
				"code": 505,
				"description": "TABLE_IN_USE"
			},
			"deliveryAgent": null,
			"deliveryDateTime": null,
			"cancellationReason": null,
			"tableCardNumber": "18"
		},
		{
			"id": "5ebf990f-9075-462c-b675-a8c57a350d61",
			"status": {
				"code": 504,
				"description": "OPEN_TABLE"
			},
			"deliveryAgent": null,
			"deliveryDateTime": null,
			"cancellationReason": null,
			"tableCardNumber": "19"
		}
	]
}
Nota
titleNota: HTTP Status Code = 226 IM Used

A solicitação foi processada com sucesso e o resultado foi retornado conforme esperado.


...


3.7 - Request - Retornar o status de múltiplos pedidos:

Essa requisição é utilizada para obter o status atualizado de diversos pedidos simultaneamente. O sistema retornará as informações detalhadas de cada pedido.

Âncora
todos_status
todos_status

Bloco de código
titleJSON Para retornar o status de todos os pedidos
linenumberstrue
Informações
titleNota:

Neste exemplo, os dados retornados incluem:

  • success: Indica se a operação foi bem-sucedida.
  • error: Contém informações sobre erros, se houver.
  • integrationHubServiceId: O identificador do serviço de integração.
  • orderKeyType: O tipo da chave do pedido (neste caso, "TABLE").
  • orderKey: A chave do pedido, que pode ser uma lista de identificadores.
  • lastestUpdatedStatus: A data e hora da última atualização do status do pedido.
  • items: Uma lista de itens relacionados ao pedido, onde cada item inclui:
    • id: O identificador do item.
    • status: O status atual do item, incluindo um código e uma descrição.
    • deliveryAgent: Informações sobre o agente de entrega, se aplicável.
    • deliveryDateTime: Data e hora de entrega, se aplicável.
    • cancellationReason: Motivo do cancelamento, se aplicável.
    • tableCardNumber: O número da mesa associada ao pedido.

04. Retornar múltiplos pedidos:

Bloco de código
titleJSON Para retornar múltiplos pedidos
{
  "integrationHubServiceId": "7056c970-cb11-400f-9d4f-9f30253f3b0b",
  "orderKeyType": "TABLE",
  "orderKey": []
}
Nota
titleNota: HTTP Status Code = 202 Accepted

A solicitação foi aceita, mas ainda não foi processada. É necessário aguardar alguns momentos e, em seguida, entrar em contato no mesmo endereço para obter o status do pedido solicitado.


...


3.8 - Request - Ao reenviar a solicitação, a resposta será a seguinte:

Ao reenviar a requisição, receberá uma resposta contendo o status atualizado e os detalhes dos pedidos.

Bloco de código
titleJSON de resposta do retorno de um pedido específico HTTP Status Code = 208
linenumberstrue
{
	"errors": ["40", "20"]
}
		{
			"key": "orderKeyType_orderKey",
			"message": "Order status request already exists: TABLE_"
		}
	]
}  
 
Nota
titleNota: HTTP Status Code = 208 Already Reported

A solicitação já foi enviada. É necessário aguardar alguns momentos e, em seguida, entrar em contato no mesmo endereço para obter o status do pedido solicitado.


...


3.9 - Request - Ao reenviar a solicitação, a resposta será a seguinte:

Ao reenviar a requisição, receberá uma resposta contendo o status atualizado e os detalhes dos pedidos.05. JSON de resposta de múltiplos pedidos

Bloco de código
titleResposta do JSON da requisição
linenumberstrueJSON Para retornar múltiplos pedidos
{
	"success": true,
	"error": null,
	"integrationHubServiceId": "647469f8ab3e5b94-b31b3a02-4fae423a-ba338500-99e04def555bbbb5292fb13a",
	"orderKeyType": "TABLE",
	"orderKey": [],
	"lastestUpdatedStatus": "2024-09-24 17:35:52",
	"items": [
		{
		"18	"id": "f217d261-126c-456a-86d5-d92eda8fbd1a",
			"19status": {
	]			"code": 504,
				"lastestUpdatedStatusdescription": "2024-06-28 09:13:46",
	"items": [OPEN_TABLE"
			},
			"deliveryAgent": null,
			"deliveryDateTime": null,
			"cancellationReason": null,
			"tableCardNumber": "204"
		},
		{
			"id": "8c3752a11730ccab-ae15ba9e-42a14b0b-bafbb7f2-189ca95f0211ad2652659d0a",
			"status": {
				"code": 505504,
				"description": "OPEN_TABLE_IN_USE"
			},
			"deliveryAgent": null,
			"deliveryDateTime": null,
			"cancellationReason": null,
			"tableCardNumber": "18500"
		},
		{
			"id": "5ebf990fdbd9bc55-90756c26-462c4160-b675bee3-a8c57a350d61e74822d8b81b",
			"status": {
				"code": 504,
				"description": "OPEN_TABLE"
			},
			"deliveryAgent": null,
			"deliveryDateTime": null,
			"cancellationReason": null,
			"tableCardNumber": "19503"
		}
	]
}
Informaçõesnote
titleInformação:

integrationHubServiceId: é um código da integração da loja com o Integration Hub

orderKey: é o código do pedido

04. ERROS

Nota: HTTP Status Code = 226 IM Used

A solicitação foi processada com sucesso e o resultado foi retornado conforme esperado.


...


Dicionário de Requisição


Essa requisição permite consultar o status atualizado de um pedido, retornando informações detalhadas sobre cada item associado ao pedido e possíveis erros ocorridos durante o processo. A integração é identificada de forma única através da integrationHubServiceId


  • Detalhamento dos campos da requisição:
CampoValorDescrição
integrationHubServiceId *stringChave de identificação da integração no hub
orderKeyTypeenum Tipo de chave do pedido, que pode ser mesa, cartão ou ID do pedido
orderKeystringIdentificador do pedido, de acordo com o tipo definido em orderKeyType


  • Enumerações do campo orderKeyType:
EnumValorDescrição
TABLETABLEIdentifica o pedido pelo número da mesa
CARDCARDIdentifica o pedido pelo número do cartão
ORDER_IDORDER_IDIdentifica o pedido por um ID exclusivo do pedido
Dica
titleCampos obrigatórios

Campos marcaos com o * (asteristico) o seu preenchimento é obrigatório


...

04. ERROS
Âncora
erros
erros

Quando a requisição for reenviada, o sistema processará a solicitação e retornará uma resposta com o status atualizado, juntamente com os detalhes de cada pedido solicitado. Isso garante que qualquer modificação ou atualização recente seja refletida na resposta.
A seguir, A seguir alguns dos erros comuns que podem ser apresentados .

Bad Request — Solicitação Inválida

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.01. Formando inválido do JSON esperado.

Bloco de código
titleJSON Inválido
linenumberstrue
{
    "integrationHubServiceId": "5ffec6b8393d9572-1c552ec9-4a7d4cda-985f9ad3-12d13685b5535b69e02c988d",
	  "orderKeyType": "string",
		   "orderKey": ["string"]
}
Bloco de código
titleJSON Resposta
linenumberstrue
{
	"errors": [
		{
			"key": "orderKeyType",
			"message": "body.orderKeyType must be one of [ORDER_ID, TABLE, CARD]"
		}
	]
}


...


024. JSON enviando 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
titleJSON Inválido
linenumberstrue
{
    "integrationHubServiceId": "5ffec6b8a5c4e135-1c55aacd-4a7d49c1-985fb051-12d13685b553160a78a83b56"
}
Bloco de código
titleJSON Resposta
linenumberstrue
{
	"errors": [
		{
			"key": "orderKeyType",
			"message": "body.orderKeyType is required"
		},
		{
			"key": "orderKey",
			"message": "body.orderKey is required"
		}
	]
}

...


...


4.3 - GUID incorreto:

O GUID (Identificador Globalmente Único) enviado na requisição está incorreto ou malformado, o que pode resultar em um erro. Um GUID é uma sequência específica que deve seguir o padrão correto.

Bloco de código
titleJSON com o GUID inválido
linenumberstrue
{
    "integrationHubServiceId": "9a1cf326-c962-456f-8c49-c1bb2f340fc6A",
	  "orderKeyType": "TABLE",
	  "orderKey": []
}
Bloco de código
titleJSON Inválido GUID incorreto
linenumberstrue
{
	"errors": [
		{
			"key": "integrationHubServiceId",
			"message": "body.integrationHubServiceId must be a valid GUID"
		}
	]
}


...


4.4 - Requisição enviada sem informar o orderKey corretamente:

Caso a requisição seja enviada sem o campo orderKey ou com o valor incorreto, o sistema não conseguirá identificar o pedido, resultando em um erro 400. O orderKey deve estar corretamente preenchido e de acordo com o orderKeyType informado.

Bloco de código
titleJSON com sem informar o código da orderKey
linenumberstrue
{
    "integrationHubServiceId": "808c143d-d6d4-4b95-8c37-efa3a934f222",
	  "orderKeyType": "TABLE",
	  "orderKey": [""]
}
Bloco de código
titleJSON Response
linenumberstrue
{
	"errors": [
		{
			"key": 0,
			"message": "body.orderKey[0] is not allowed to be empty"
		}
	]
}
Nota
titleNota: 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.Unauthorized — Não autorizado 


Nota
titleNota: 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 do cliente por está tentando acessar uma URL incorreta


Bloco de código
titleURL enviada incorreda
https://api-barramento.meuelevestage.com/order/getStatuS
Bloco de código
titleJSON Response para URL incorreta
linenumberstrue
{
	"message": "Missing Authentication Token"
}
Nota
titleNota: HTTP Status Code = 403 - Forbidden

O cliente não enviou uma requisição para a URL  incorreta.


...

  • 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 pode ocorrer quando o integrationHubId  está incorreto ou inválido.


Bloco de código
titleIntegration Hub Code Inválido
linenumberstrue
{
    "integrationHubServiceId": "f1b874af-96ab-4535-aac3-25118fe586cc",
	  "orderKeyType": "TABLE",
	  "orderKey": ["5"]
}
Bloco de código
titleJSON Response
linenumberstrue
{
	"errors": [
		{
			"key": "integrationHubServiceId",
			"message": "Provider Merchant for integrationHubServiceId \"f1b874af-96ab-4535-aac3-25118fe586cc\" not found or disabled"
		}
	]
}
Nota
titleNota: HTTP Status Code = 404 - Not Found

IntegrationHubId incorreto ou inválido


...

  • HTTP Status Code 412 - Precondition Failed
    Âncora
    status_code_412
    status_code_412

O código de status HTTP 412, conhecido como "Precondition Failed" (Pré-condição Falhou), indica que o servidor não atendeu a uma das pré-condições que o cliente colocou no cabeçalho da requisição. 


Bloco de código
titleJSON
linenumberstrue
{
    "integrationHubServiceId": "5ffec6b88f7949c3-1c55cdd6-4a7d4db0-985f8746-12d13685b553369e651026b4",
	  "orderKeyType": "TABLE",
		  "orderKey": []
}
Bloco de código
titleHTTP Status Code 412 = Precpndition Failed
linenumberstrue
{
	"message": "NOT_FOUND",
	"code": 412
}
Nota
titleNota: HTTP Status Code = 412 Precondition Failed

Alguma regra necessária para a execução da solicitação não foi atendida. É necessário analisar o conteúdo da resposta retornada para identificar os motivos.


...

  • HTTP Status Code 429 - Too Many Requests
    Âncora
    status_code_429
    status_code_429

O código de status HTTP 429, conhecido como "Too Many Requests" (Muitas Requisições), indica que o cliente excedeu o limite de requisições permitido para um determinado período de tempo. Esse limite é definido pelo servidor e pode variar de acordo com a política de limitação de taxa implementada.


Bloco de código
titleJSON da requisição
linenumberstrue
{
    "integrationHubServiceId": "7d7d205b-83ba-47c5-91ba-e4f32a2bbd9e",
	  "orderKeyType": "TABLE",
		"orderKey": ["5"]
}
Bloco de código
titleResposta da última execução
linenumberstrue
{
	"success": true,
	"error": null,
	"integrationHubServiceId": "7d7d205b-83ba-47c5-91ba-e4f32a2bbd9e",
	"orderKeyType": "TABLE",
	"orderKey": [
		"5"
	],
	"lastestUpdatedStatus": "2024-07-02 18:54:28",
	"items": [
		{
			"id": "de9fd388-c223-4325-a64d-08889250f839",
			"status": {
				"code": 504,
				"description": "OPEN_TABLE"
			},
			"deliveryAgent": null,
			"deliveryDateTime": null,
			"cancellationReason": null,
			"tableCardNumber": "5"
		}
	]
}
Nota
titleNota: HTTP Status Code = 429 - Too Many Requests

Alguma regra para atender ao seu pedido não foi cumprida; analise o corpo da resposta para descobrir as razões.

...




Templatedocumentos