Páginas filhas
  • API Order Cartão - Status

Versões comparadas

Chave

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

...

O endpoint Get Status da API Order Mesa é utilizado para o envio do resultado da solicitação de status dos pedidos do Ponto de Venda (PDV). Este endpoint recebe o mesmo corpo de requisição utilizado pelo endpoint GetOrderStatus -   API Order Cartão - Get Status


...

02. ENDPOINT
Âncora
endpoint
endpoint


MétodoURLAmbiente
POSThttps://api-barramento.meuelevestage.com/order/statusHomologação
POSThttps://api-barramento.meueleve.com/order/statusProdução


...

03. EXEMPLO DE UTILIZAÇÃO
Âncora
utilizar
utilizar


013.1 - Request - O corpo da requisição enviada para retornar todos os status dos pedidos é o seguinte: Âncoratodos_statustodos_status

Ao enviar essa requisição, o sistema processa a solicitação e retorna o status atualizado de todos os pedidos. O corpo da requisição contém informações essenciais que permitem ao sistema identificar e consultar o status de cada pedido: 

Âncora
todos_status
todos_status

Bloco de código
Bloco de código
titleCorpo da requisição no JSON
linenumberstrue
{
    "success": true,
    "error": null,
    "integrationHubServiceId": "7056c970-cb11-400f-9d4f-9f30253f3b0b",
    "orderKeyType": "CARD",
    "orderKey": [],
    "lastestUpdatedStatus": "2024-09-12 11:30:10",
    "items": [
        {
            "id": "ad976378-8823-48d3-9cd1-62d68cf3be77",
            "status": {
                "code": 504,
                "description": "OPEN_TABLE"
            },
            "deliveryAgent": null,
            "deliveryDateTime": null,
            "cancellationReason": null,
            "tableCardNumber": "1"
        },
        {
            "id": "2160c838-97d0-432f-a43a-dce087150d49",
            "status": {
                "code": 505,
                "description": "TABLE_IN_USE"
            },
            "deliveryAgent": null,
            "deliveryDateTime": null,
            "cancellationReason": null,
            "tableCardNumber": "340"
        },
        {
            "id": "b17fd862-c06d-4bce-9f11-358a2be04668",
            "status": {
                "code": 504,
                "description": "OPEN_TABLE"
            },
            "deliveryAgent": null,
            "deliveryDateTime": null,
            "cancellationReason": null,
            "tableCardNumber": "370"
        },
        {
            "id": "5b8d7e5c-f87e-40ac-91b7-726da529fc88",
            "status": {
                "code": 504,
                "description": "OPEN_TABLE"
            },
            "deliveryAgent": null,
            "deliveryDateTime": null,
            "cancellationReason": null,
            "tableCardNumber": "4040"
        }
    ]
}
Nota
titleNota: HTTP Status Code = 226 IM Used

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


...


023.2 - Request - Enviando o pedido para obter o status de um pedido especificoespecífico:

Essa requisição é utilizada para consultar o status de um único pedido. Ao enviar o identificador do pedido, o sistema retornará o status detalhado do pedido solicitado, incluindo todas as informações relacionadas ao seu processamento:

Âncora
Âncora
detalhes_pedido_especificodetalhes_pedido_especifico
detalhes_pedido_especifico

Bloco de código
titleCorpo da requisição no JSON
linenumberstrue
{
    "success": true,
    "error": null,
    "integrationHubServiceId": "7056c970-cb11-400f-9d4f-9f30253f3b0b",
    "orderKeyType": "CARD",
    "orderKey": ["40"],
    "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": "40"
        }
    ]
}
Nota
titleNota: HTTP Status Code = 226 IM Used

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


...

033.3 - Request - Corpo da requisição para obter o status de múltiplos pedidos: Âncoramultiplosmultiplos

Ao utilizar essa requisição, é possível consultar o status atualizado de vários pedidos simultaneamente. O sistema retornará informações detalhadas sobre cada pedido, permitindo uma visão geral do processamento de múltiplas solicitações ao mesmo tempo.

Âncora
multiplos
multiplos

Bloco de código
titleCorpo da requisição no JSON
Bloco de código
titleCorpo da requisição no JSON
linenumberstrue
{
    "success": true,
    "error": null,
    "integrationHubServiceId": "7056c970-cb11-400f-9d4f-9f30253f3b0b",
    "orderKeyType": "CARD",
    "orderKey": [
        "40",
        "20"
    ],
    "lastestUpdatedStatus": "2024-09-12 11:56:09",
    "items": [
        {
            "id": "2160c838-97d0-432f-a43a-dce087150d49",
            "status": {
                "code": 504,
                "description": "OPEN_TABLE"
            },
            "deliveryAgent": null,
            "deliveryDateTime": null,
            "cancellationReason": null,
            "tableCardNumber": "340"
        },
        {
            "id": "360",
            "status": {
                "code": 412,
                "description": "NOT_FOUND"
            },
            "deliveryAgent": null,
            "deliveryDateTime": null,
            "cancellationReason": null,
            "tableCardNumber": null
        }
    ]
}
O corpo da requisição enviada é o mesmo que o corpo da resposta obtida através do endpoint GetOrderStatus.
Dicanote
titleDica
Nota: HTTP Status Code = 226 IM Used

Status enviado com sucesso.

Dica
titleDica

O corpo da requisição enviada é o mesmo que o corpo da resposta obtida através do endpoint GetOrderStatus.


Dicionário de Requisição

Essa requisição permite verificar o o status atualizado do(s) pedido(s), retornando informações de acordo com o corpo da response obtida atráves do endpoint getStatus.


  • Detalhamento dos campos da requisição:
CampoValorDescrição
integrationHubServiceIdstringChave de identificação da integração no hub
successbooleanIndica se a operação foi bem-sucedida
trueA operação foi concluída com sucesso e o status dos pedidos será retornado
falseA operação falhou, com detalhes fornecidos no campo error
lastestUpdatedStatusstring (data e hora)Data e hora da última atualização do status dos pedidos
orderKeyarrayLista de identificadores dos pedidos (neste caso, o número da mesa)
orderKeyTypeenum "TABLE", "CARD", "ORDER_ID"Tipo de chave do pedido, que pode ser mesa, cartão ou ID do pedido
itemsarrayLista de itens associados ao pedido, detalhando o status de cada item


  • Itens associados detalhados:
CampoValorDescrição
idstringIdentificador do item dentro do pedido
statusobjetoObjeto contendo informações detalhadas sobre o status do item
status.codenumberCódigo representando o status atual do item
status.descriptionstringDescrição do status atual do item
deliveryAgentstringAgente responsável pela entrega (obrigatório para pedidos de entrega)
deliveryDateTimestring (data e hora)Data e hora em que a entrega foi realizada (obrigatório para pedidos de entrega)
cancellationReasonstringMotivo do cancelamento do item (se o item foi cancelado)


  • Erro (quando success é false):
CampoValorDescrição
codecódigo do erroIdentifica o tipo de erro ocorrido
messagemensagem descritivaDetalha a falha e fornece mais informações sobre o erro


...

04. ERROS
Âncora
erros
erros

A seguir, alguns dos erros comuns que podem ser apresentados ao lidar com requisições HTTP e suas respectivas respostas:

...

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 incorretos01. JSON enviando faltando um ou mais campos.

Bloco de código
titleCorpo da requisição no JSON faltando campos
linenumberstrue
{
	"integrationHubServiceId": "7056c970-cb11-400f-9d4f-9f30253f3b0b",
	"success": true,
	"orderStatus": [
		{
			"id": "bd768726-91ef-4161-b35b-4e28e711dfd8",
			"status": {
				"code": 1,
				"description": "Em Preparo"
			}
		}
	]
}
Bloco de código
titleResposta do JSON da requisição
linenumberstrue
{
	"errors": [
		{
			"key": "integrationHubServiceId",
			"message": "body.integrationHubServiceId must be a valid GUID"
		},
		{
			"key": "orderKeyType",
			"message": "body.orderKeyType is required"
		},
		{
			"key": "orderKey",
			"message": "body.orderKey is required"
		}
	]
}


...


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

Bloco de código
titleJSON Inválido
linenumberstrue
{
	"success": true,
	"error": null,
	"integrationHubServiceId": "7056c970-cb11-400f-9d4f-9f30253f3b0b",
	"orderKeyType": "String",
	"orderKey": [
		"22"
	],
	"lastestUpdatedStatus": "2024-07-16 15:48:30",
	"items": [
		{
			"id": "975dbf9b-a11d-4efe-b491-197ee123bfe4",
			"status": {
				"code": 504,
				"description": "OPEN_TABLE"
			},
			"deliveryAgent": null,
			"deliveryDateTime": null,
			"cancellationReason": null,
			"tableCardNumber": "22"
		}
	]
}

...