CONTEÚDO

01. VISÃO GERAL

Esse endpoint serve para retorar os status dos pedidos

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 no formato especificado, como nos exemplos abaixo. O endpoint processa a solicitaçã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


MétodoURL
POSThttps://api-barramento.meuelevestage.com/order/getStatus



03. EXEMPLO DE UTILIZAÇÃO

01. Retornar todos os estados dos pedidos:

{
  "integrationHubServiceId": "7056c970-cb11-400f-9d4f-9f30253f3b0b",
  "orderKeyType": "TABLE",
  "orderKey": []
}




02. Retornar um pedido específico:

{
  "integrationHubServiceId": "7056c970-cb11-400f-9d4f-9f30253f3b0b",
  "orderKeyType": "TABLE",
  "orderKey": ["40"]
}


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.




{
	"errors": [
		{
			"key": "orderKeyType_orderKey",
			"message": "Order status request already exists: TABLE_40"
		}
	]
}  
 


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.




03. JSON de resposta do retorno de um pedido

{
	"success": true,
	"error": null,
	"integrationHubServiceId": "1853f0ab-faf7-47d6-a193-610b20807143",
	"orderKeyType": "TABLE",
	"orderKey": [
		"19"
	],
	"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": "19"
		}
	]
}


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



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:

{
  "integrationHubServiceId": "7056c970-cb11-400f-9d4f-9f30253f3b0b",
  "orderKeyType": "TABLE",
  "orderKey": ["40", "20"]
}




05. JSON de resposta de múltiplos pedidos

{
	"success": true,
	"error": null,
	"integrationHubServiceId": "647469f8-b31b-4fae-ba33-99e04def555b",
	"orderKeyType": "TABLE",
	"orderKey": [
		"18",
		"19"
	],
	"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"
		}
	]
}



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

orderKey: é o código do pedido



04. ERROS

A seguir alguns dos erros comuns que podem ser apresentados.


Bad Request — Solicitação Inválida

01. Formando inválido do JSON esperado.


{
    "integrationHubServiceId": "5ffec6b8-1c55-4a7d-985f-12d13685b553",
	  "orderKeyType": "string",
		"orderKey": ["string"]
}
{
	"errors": [
		{
			"key": "orderKeyType",
			"message": "body.orderKeyType must be one of [ORDER_ID, TABLE, CARD]"
		}
	]
}


02. JSON enviando faltando um ou mais campos.


{
    "integrationHubServiceId": "5ffec6b8-1c55-4a7d-985f-12d13685b553"
}
{
	"errors": [
		{
			"key": "orderKeyType",
			"message": "body.orderKeyType is required"
		},
		{
			"key": "orderKey",
			"message": "body.orderKey is required"
		}
	]
}


03. GUID incorreto 


{
	"errors": [
		{
			"key": "integrationHubServiceId",
			"message": "body.integrationHubServiceId must be a valid GUID"
		}
	]
}




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.




Unauthorized — Não autorizado 



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.




Precondition Failed


{
    "integrationHubServiceId": "5ffec6b8-1c55-4a7d-985f-12d13685b553",
	  "orderKeyType": "TABLE",
		"orderKey": []
}
{
	"message": "NOT_FOUND",
	"code": 412
}


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.




05. LINKS


API Order Mesa - New Order
API Order Mesa - Status
API Order Mesa - Get Consumption
API Order Mesa - Consumption
API Order Mesa - Payment
API Order Mesa - Payment Result
API Order Mesa - Get Cancelled Items
API Order Mesa - Cancelled Items