CONTEÚDO
- Visão Geral
- Endpoint
- Exemplo de Utilização
- Erros
- Links
01. VISÃO GERAL
Este Esse endpoint é utilizado para realizar pedidos.
...
obter informações detalhadas sobre os pedidos, fornecendo um retorno em formato JSON com diversos atributos relevantes. Ao enviar uma solicitação no formato especificado, como nos exemplos abaixo, o endpoint processa a 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.
Obtenha o status atribuído a um ou mais pedidos utilizando o parâmetro orderKeyType
, que pode ser ORDER_ID
, TABLE
ou CARD
.
- Para
orderKeyType = ORDER_ID
, é obrigatório informar pelo menos um pedido. - Para
orderKeyType = TABLE
ou CARD
, quando o parâmetro orderKey
não for informado, serão retornados todos os status de tabelas ou cartões abertos.
...
02. ENDPOINT
Método | URL |
---|
POST | https://api-barramento.meuelevestage.com/order/newOrder |
...
03. EXEMPLO DE UTILIZAÇÃO
01. Corpo da requisição de envio de novo pedidos inteiro:
Bloco de código |
---|
title | Corpo da requisição no JSON |
---|
linenumbers | true |
---|
|
{
"integrationHubServiceId":"933aadb4-c33b-40b8-8285-bf1e575d8b38",
"data":{
"id":"9ec389e5-7582-4768-875b-ee7c309aa34f",
"type":"TABLE",
"displayId":"29",
"createdAt":"2024-06-24T17:35:00",
"orderTiming":"2024-06-24T17:40:24",
"preparationStartDateTime":"2024-06-24T18:00:00",
"merchant":{
"id":"c312d2ff-1a8f-40ad-8eed-9ae9a908df6e",
"name":"BOTECO DO ALBINO"
},
"items":[
{
"id":"3973594021",
"index":"21",
"name":"MARACUJA",
"externalCode":"58",
"unit":"UN",
"quantity":1.0,
"specialInstructions":"Teste",
"unitPrice":{
"value":61.00,
"currency":"R$"
},
"optionsPrice":{
"value":0.0,
"currency":"R$"
},
"totalPrice":{
"value":61.00,
"currency":"R$"
},
"options":[
]
}
],
"total":{
"items":61.00,
"otherFees":0,
"discount":10.00,
"orderAmount":20.50,
"additionalFees":0,
"deliveryFee":0
},
"payments":{
"prepaid":0.0,
"pending":0.0,
"methods":[
{
"value":61.00,
"currency":"BRL",
"type":"PREPAID",
"method":"credit",
"methodInfo":"Visa",
"changeFor":0.0
}
]
},
"delivery":null,
"extraInfo":"Teste",
"schedule":null,
"indoor":null,
"takeout":null,
"table":{
"waiterCode":"9999",
"tableNumber":"29",
"chairNumber":"1"
},
"card":null
}
} |
Nota |
---|
title | Nota: HTTP Status Code = 200 OK |
---|
|
Sua solicitação foi aceita mas ainda não processada, aguarde alguns instantes e procure o status. |
...
02. Corpo da requisição de envio de novo pedidos fracionando:
Âncora |
---|
| detalhes_pedido_especifico |
---|
| detalhes_pedido_especifico |
---|
|
Bloco de código |
---|
title | JSON Para retornar o status de um pedido específico |
---|
linenumbers | true |
---|
|
{
"integrationHubServiceId":"a13ea12d-1ffc-4f4c-a3e8-a384fe0e9e05",
"data":{
"id":"62e1ee4e-8491-4fb6-9818-56ff24fb1d5c",
"type":"TABLE",
"displayId":"29",
"createdAt":"2024-06-24T17:35:00",
"orderTiming":"2024-06-24T17:40:24",
"preparationStartDateTime":"2024-06-24T18:00:00",
"merchant":{
"id":"3d0cbd44-a6c4-469c-8ab3-c83700672ee1",
"name":"BOTECO DO ALBINO"
},
"items":[
{
"id":"3973594022",
"index":"22",
"name":"MARACUJA",
"externalCode":"58",
"unit":"UN",
"quantity":0.5,
"specialInstructions":"Teste",
"unitPrice":{
"value":61.00,
"currency":"R$"
},
"optionsPrice":{
"value":0.0,
"currency":"R$"
},
"totalPrice":{
"value":30.50,
"currency":"R$"
},
"options":[
]
}
],
"total":{
"items":30.50,
"otherFees":0,
"discount":10.00,
"orderAmount":20.50,
"additionalFees":0,
"deliveryFee":0
},
"payments":{
"prepaid":0.0,
"pending":0.0,
"methods":[
{
"value":30.50,
"currency":"BRL",
"type":"PREPAID",
"method":"credit",
"methodInfo":"Visa",
"changeFor":0.0
}
]
},
"delivery":null,
"extraInfo":"Teste",
"schedule":null,
"indoor":null,
"takeout":null,
"table":{
"waiterCode":"9999",
"tableNumber":"29",
"chairNumber":"1"
},
"card":null
}
} |
Nota |
---|
title | Nota: HTTP Status Code = 200 OK |
---|
|
Sua solicitação foi aceita mas ainda não processada, aguarde alguns instantes e procure o status. |
...
03. Corpo da requisição de envio de novo pedidos com desconto:
Bloco de código |
---|
title | JSON Para retornar múltiplos pedidos |
---|
linenumbers | true |
---|
|
{
"integrationHubServiceId":"5ffec6b8-1c55-4a7d-985f-12d13685b553",
"data":{
"id":"3d0cbd44-a6c4-469c-8ab3-c83700672ee1",
"type":"TABLE",
"displayId":"31",
"createdAt":"2024-07-25T17:35:00",
"orderTiming":"2024-07-25T17:35:00",
"preparationStartDateTime":"2024-07-25T17:35:00",
"merchant":{
"id":"f94d20cc-2120-4c03-b395-1ac72554268a",
"name":"BOTECO DO ALBINO"
},
"items":[
{
"id":"39735924",
"index":"24",
"name":"MARACUJA",
"externalCode":"58",
"unit":"UN",
"quantity":1.0,
"specialInstructions":"Teste",
"unitPrice":{
"value":61.0,
"currency":"R$"
},
"optionsPrice":{
"value":0.0,
"currency":"R$"
},
"totalPrice":{
"value":61.0,
"currency":"R$"
},
"options":[
]
}
],
"total":{
"items":61.0,
"otherFees":0,
"discount":10.00,
"orderAmount":51.0,
"additionalFees":0,
"deliveryFee":0
},
"payments":{
"prepaid":0.0,
"pending":0.0,
"methods":[
{
"value":51.0,
"currency":"BRL",
"type":"PREPAID",
"method":"credit",
"methodInfo":"Visa",
"changeFor":0.0
}
]
},
"delivery":null,
"extraInfo":"Teste",
"schedule":null,
"indoor":null,
"takeout":null,
"table":{
"waiterCode":"9999",
"tableNumber":"31",
"chairNumber":"1"
},
"card":null
}
} |
Bloco de código |
---|
title | Nota: HTTP Status Code = 200 OK |
---|
linenumbers | true |
---|
|
Sua solicitação foi aceita mas ainda não processada, aguarde alguns instantes e procure o status. |
Informações |
---|
|
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.
|
Informações |
---|
|
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 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.
01. Formando inválido do JSON esperado.
Bloco de código |
---|
title | JSON Inválido |
---|
linenumbers | true |
---|
|
{
"integrationHubServiceId": "393d9572-2ec9-4cda-9ad3-5b69e02c988d",
"orderKeyType": "string",
"orderKey": ["string"]
} |
Bloco de código |
---|
title | JSON Resposta |
---|
linenumbers | true |
---|
|
{
"errors": [
{
"key": "orderKeyType",
"message": "body.orderKeyType must be one of [ORDER_ID, TABLE, CARD]"
}
]
} |
...
02. JSON enviando faltando um ou mais campos.
Bloco de código |
---|
title | JSON Inválido |
---|
linenumbers | true |
---|
|
{
"integrationHubServiceId": "a5c4e135-aacd-49c1-b051-160a78a83b56"
} |
Bloco de código |
---|
title | JSON Resposta |
---|
linenumbers | true |
---|
|
{
"errors": [
{
"key": "orderKeyType",
"message": "body.orderKeyType is required"
},
{
"key": "orderKey",
"message": "body.orderKey is required"
}
]
} |
...
03. GUID incorreto
Bloco de código |
---|
title | JSON com o GUID inválido |
---|
linenumbers | true |
---|
|
{
"integrationHubServiceId": "9a1cf326-c962-456f-8c49-c1bb2f340fc6A",
"orderKeyType": "TABLE",
"orderKey": []
} |
Bloco de código |
---|
title | JSON Inválido GUID incorreto |
---|
linenumbers | true |
---|
|
{
"errors": [
{
"key": "integrationHubServiceId",
"message": "body.integrationHubServiceId must be a valid GUID"
}
]
} |
...
04. Enviando uma requisição sem informar o código da orderKey corretamente
Bloco de código |
---|
title | JSON com sem informar o código da orderKey |
---|
linenumbers | true |
---|
|
{
"integrationHubServiceId": "808c143d-d6d4-4b95-8c37-efa3a934f222",
"orderKeyType": "TABLE",
"orderKey": [""]
} |
Bloco de código |
---|
title | JSON Response |
---|
linenumbers | true |
---|
|
{
"errors": [
{
"key": 0,
"message": "body.orderKey[0] is not allowed to be empty"
}
]
} |
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 do cliente por está tentando acessar uma URL
incorreta
Bloco de código |
---|
title | URL enviada incorreda |
---|
|
https://api-barramento.meuelevestage.com/order/getStatuS |
Bloco de código |
---|
title | JSON Response para URL incorreta |
---|
linenumbers | true |
---|
|
{
"message": "Missing Authentication Token"
} |
Nota |
---|
title | Nota: 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 |
---|
title | Integration Hub Code Inválido |
---|
linenumbers | true |
---|
|
{
"integrationHubServiceId": "f1b874af-96ab-4535-aac3-25118fe586cc",
"orderKeyType": "TABLE",
"orderKey": ["5"]
} |
Bloco de código |
---|
title | JSON Response |
---|
linenumbers | true |
---|
|
{
"errors": [
{
"key": "integrationHubServiceId",
"message": "Provider Merchant for integrationHubServiceId \"f1b874af-96ab-4535-aac3-25118fe586cc\" not found or disabled"
}
]
} |
Nota |
---|
title | Nota: 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 |
---|
title | JSON |
---|
linenumbers | true |
---|
|
{
"integrationHubServiceId": "8f7949c3-cdd6-4db0-8746-369e651026b4",
"orderKeyType": "TABLE",
"orderKey": []
} |
Bloco de código |
---|
title | HTTP Status Code 412 = Precpndition Failed |
---|
linenumbers | true |
---|
|
{
"message": "NOT_FOUND",
"code": 412
} |
Nota |
---|
title | Nota: 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 |
---|
title | JSON da requisição |
---|
linenumbers | true |
---|
|
{
"integrationHubServiceId": "7d7d205b-83ba-47c5-91ba-e4f32a2bbd9e",
"orderKeyType": "TABLE",
"orderKey": ["5"]
} |
Bloco de código |
---|
title | Resposta da última execução |
---|
linenumbers | true |
---|
|
{
"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 |
---|
title | Nota: 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. |
...
05. LINKS