Novas Rotas
Vídeo no Youtube
Vídeo no Youtube
Link para Arquitetura do K8S no YouTube
Checkout Pedido
Este endpoint é utilizado para realizar o checkout de um pedido, recebendo os produtos solicitados e retornando a identificação do pedido gerado.
- Descrição: Endpoint responsável por receber os produtos solicitados e retornar a identificação do pedido gerado.
- Método:
POST
- Endpoint:
/orders/checkout
- Request Body:
- Response Body:
{
"id": 0,
"customer_id": 0,
"status": "string",
"created_at": "2024-10-03T14:25:43.242Z",
"payment_status": "string"
}
Consultar Status de Pagamento
Este endpoint permite consultar o status de pagamento de um pedido específico para verificar se o pagamento foi aprovado ou não.
- Descrição: Consulta o status de pagamento de um pedido para verificar se o pagamento foi aprovado ou não.
- Método:
GET
- Endpoint:
/orders/{order_id}
- Parâmetro:
order_id
(string): Identificação única do pedido. - Exemplo de Request:
GET /orders/1
- Response Body:
{
"id": 1,
"customer_id": 1,
"status": "Finalizado",
"payment_status": "pago",
"order_products": [
{
"product_id": 1,
"comment": "Sem cebola",
"product": {
"name": "Sanduíche de Frango Grelhado",
"description": "Grilled chicken sandwich with lettuce",
"price": 15,
"category": {
"name": "Sanduíches"
}
}
}
]
}
Confirmação de Pagamento
Este endpoint recebe notificações de pagamento aprovadas ou recusadas via webhook, sendo disparado automaticamente quando um pedido sofre alteração em seu status de pagamento.
- Descrição: Recebe notificações de pagamento aprovadas ou recusadas via webhook. Ele é disparado automaticamente uma vez que um pedido sofre alteração em seu status de pagamento.
- Método:
POST
- Endpoint:
/orders/webhook
- Request Body:
{
"order_id": 0,
"status": "string",
"customer_id": 0,
"payment_status": "string",
"received_at": "2024-10-03T14:40:48.733Z"
}
Listar pedidos
Este endpoint retorna a lista de pedidos com suas descrições, ordenados por regras específicas, excluindo pedidos com status "Finalizado".
- Descrição: Retorna a lista de pedidos com suas descrições, ordenados por:
- Regra de ordenação:
Pronto
>Em Preparação
>Recebido
; - Pedidos mais antigos primeiro, baseado na o atributo
created_at
; - Pedidos com status
Finalizado
não devem aparecer. - Método:
GET
- Endpoint:
/orders
- Response Body:
{
"orders": [
{
"id": 5,
"customer_id": 1,
"status": "Recebido",
"created_at": "2024-09-12T19:06:46.240199",
"payment_status": "pago"
},
{
"id": 6,
"customer_id": 1,
"status": "Recebido",
"created_at": "2024-09-12T19:12:34.059608",
"payment_status": "pago"
},
{
"id": 8,
"customer_id": 1,
"status": "Recebido",
"created_at": "2024-09-12T19:20:01.736862",
"payment_status": "pago"
}
]
}
Atualizar Status do Pedido
Este endpoint permite a atualização do status de um pedido específico.
- Descrição: Permite a atualização do status de um pedido específico.
- Método:
PUT
- Endpoint:
/orders/{order_id}/status
- Parâmetro:
order_id
(string): Identificação única do pedido. - Request Body:
- Response Body:
{
"id": 0,
"customer_id": 0,
"status": "string",
"created_at": "2024-10-03T14:47:37.710Z",
"payment_status": "string"
}
Atualizar Status de Pagamento
Este endpoint permite a atualização do status de pagamento de um pedido.
- Descrição: Permite a atualização do status de pagamento de um pedido.
- Método:
PATCH
- Endpoint:
/orders/{order_id}/payment
- Parâmetro:
order_id
(string): Identificação única do pedido. - Request Body:
- Response Body: