CONTEÚDO
- Visão Geral
- Endpoint
- Exemplo de Utilização
- Erros
- Links
01. VISÃO GERAL
...
Este Esse endpoint é utilizado para realizar pedidos....
...
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":0.00,
"orderAmount":61.00,
"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/ |
...
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
...
03. LINKS
...