{
  "info": {
    "name": "Takeat V1 · OAuth Garçons",
    "description": "API pública de garçom: oito consultas GET, cinco permissões de leitura e OAuth pessoal com PKCE. As rotas de atendimento não alteram dados. Consentimento e sessão humana são usados somente pelo portal Takeat.",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
  },
  "auth": {
    "type": "bearer",
    "bearer": [
      {
        "key": "token",
        "value": "{{waiter_access_token}}",
        "type": "string"
      }
    ]
  },
  "variable": [
    {
      "key": "base_url",
      "value": "https://public-api.takeat.app"
    },
    {
      "key": "waiter_access_token",
      "value": ""
    },
    {
      "key": "client_id",
      "value": ""
    },
    {
      "key": "redirect_uri",
      "value": ""
    },
    {
      "key": "authorization_code",
      "value": ""
    },
    {
      "key": "code_verifier",
      "value": ""
    },
    {
      "key": "refresh_token",
      "value": ""
    },
    {
      "key": "sessionId",
      "value": "",
      "type": "string"
    },
    {
      "key": "orderBasketId",
      "value": "",
      "type": "string"
    }
  ],
  "item": [
    {
      "name": "OAuth · PKCE e renovação",
      "item": [
        {
          "name": "Trocar code + PKCE",
          "request": {
            "method": "POST",
            "url": "{{base_url}}/oauth/token",
            "auth": {
              "type": "noauth"
            },
            "body": {
              "mode": "urlencoded",
              "urlencoded": [
                {
                  "key": "grant_type",
                  "value": "authorization_code",
                  "type": "text"
                },
                {
                  "key": "client_id",
                  "value": "{{client_id}}",
                  "type": "text"
                },
                {
                  "key": "redirect_uri",
                  "value": "{{redirect_uri}}",
                  "type": "text"
                },
                {
                  "key": "code",
                  "value": "{{authorization_code}}",
                  "type": "text"
                },
                {
                  "key": "code_verifier",
                  "value": "{{code_verifier}}",
                  "type": "text"
                }
              ]
            }
          }
        },
        {
          "name": "Renovar OAuth",
          "request": {
            "method": "POST",
            "url": "{{base_url}}/oauth/token",
            "auth": {
              "type": "noauth"
            },
            "body": {
              "mode": "urlencoded",
              "urlencoded": [
                {
                  "key": "grant_type",
                  "value": "refresh_token",
                  "type": "text"
                },
                {
                  "key": "client_id",
                  "value": "{{client_id}}",
                  "type": "text"
                },
                {
                  "key": "refresh_token",
                  "value": "{{refresh_token}}",
                  "type": "text"
                }
              ]
            }
          }
        }
      ]
    },
    {
      "name": "Garçom · Consultas",
      "item": [
        {
          "name": "Perfil",
          "item": [
            {
              "name": "Meu perfil",
              "request": {
                "method": "GET",
                "header": [],
                "auth": {
                  "type": "bearer",
                  "bearer": [
                    {
                      "key": "token",
                      "value": "{{waiter_access_token}}",
                      "type": "string"
                    }
                  ]
                },
                "url": "{{base_url}}/v1/waiter/me",
                "description": "Scope: waiter:profile:read. Consulta com autorização pessoal; sem corpo, alterações, dados pessoais dos clientes ou configuração interna. Loja e pessoa vêm da concessão."
              },
              "response": []
            }
          ]
        },
        {
          "name": "Cardápio",
          "item": [
            {
              "name": "Cardápio publicado",
              "request": {
                "method": "GET",
                "header": [],
                "auth": {
                  "type": "bearer",
                  "bearer": [
                    {
                      "key": "token",
                      "value": "{{waiter_access_token}}",
                      "type": "string"
                    }
                  ]
                },
                "url": "{{base_url}}/v1/waiter/menu",
                "description": "Scope: waiter:menu:read. Consulta com autorização pessoal; sem corpo, alterações, dados pessoais dos clientes ou configuração interna. Loja e pessoa vêm da concessão."
              },
              "response": []
            },
            {
              "name": "Marcas ativas",
              "request": {
                "method": "GET",
                "header": [],
                "auth": {
                  "type": "bearer",
                  "bearer": [
                    {
                      "key": "token",
                      "value": "{{waiter_access_token}}",
                      "type": "string"
                    }
                  ]
                },
                "url": "{{base_url}}/v1/waiter/brands",
                "description": "Scope: waiter:menu:read. Consulta com autorização pessoal; sem corpo, alterações, dados pessoais dos clientes ou configuração interna. Loja e pessoa vêm da concessão."
              },
              "response": []
            }
          ]
        },
        {
          "name": "Mesas",
          "item": [
            {
              "name": "Mesas",
              "request": {
                "method": "GET",
                "header": [],
                "auth": {
                  "type": "bearer",
                  "bearer": [
                    {
                      "key": "token",
                      "value": "{{waiter_access_token}}",
                      "type": "string"
                    }
                  ]
                },
                "url": "{{base_url}}/v1/waiter/tables",
                "description": "Scope: waiter:tables:read. Consulta com autorização pessoal; sem corpo, alterações, dados pessoais dos clientes ou configuração interna. Loja e pessoa vêm da concessão."
              },
              "response": []
            }
          ]
        },
        {
          "name": "Comandas",
          "item": [
            {
              "name": "Comandas ativas",
              "request": {
                "method": "GET",
                "header": [],
                "auth": {
                  "type": "bearer",
                  "bearer": [
                    {
                      "key": "token",
                      "value": "{{waiter_access_token}}",
                      "type": "string"
                    }
                  ]
                },
                "url": "{{base_url}}/v1/waiter/table-sessions",
                "description": "Scope: waiter:sessions:read. Consulta com autorização pessoal; sem corpo, alterações, dados pessoais dos clientes ou configuração interna. Loja e pessoa vêm da concessão."
              },
              "response": []
            },
            {
              "name": "Detalhes de uma comanda",
              "request": {
                "method": "GET",
                "header": [],
                "auth": {
                  "type": "bearer",
                  "bearer": [
                    {
                      "key": "token",
                      "value": "{{waiter_access_token}}",
                      "type": "string"
                    }
                  ]
                },
                "url": "{{base_url}}/v1/waiter/table-sessions/{{sessionId}}",
                "description": "Scope: waiter:sessions:read. Consulta com autorização pessoal; sem corpo, alterações, dados pessoais dos clientes ou configuração interna. Loja e pessoa vêm da concessão."
              },
              "response": []
            }
          ]
        },
        {
          "name": "Pedidos",
          "item": [
            {
              "name": "Pedidos ativos",
              "request": {
                "method": "GET",
                "header": [],
                "auth": {
                  "type": "bearer",
                  "bearer": [
                    {
                      "key": "token",
                      "value": "{{waiter_access_token}}",
                      "type": "string"
                    }
                  ]
                },
                "url": "{{base_url}}/v1/waiter/orders",
                "description": "Scope: waiter:orders:read. Consulta com autorização pessoal; sem corpo, alterações, dados pessoais dos clientes ou configuração interna. Loja e pessoa vêm da concessão."
              },
              "response": []
            },
            {
              "name": "Itens de um pedido",
              "request": {
                "method": "GET",
                "header": [],
                "auth": {
                  "type": "bearer",
                  "bearer": [
                    {
                      "key": "token",
                      "value": "{{waiter_access_token}}",
                      "type": "string"
                    }
                  ]
                },
                "url": "{{base_url}}/v1/waiter/order-baskets/{{orderBasketId}}",
                "description": "Scope: waiter:orders:read. Consulta com autorização pessoal; sem corpo, alterações, dados pessoais dos clientes ou configuração interna. Loja e pessoa vêm da concessão."
              },
              "response": []
            }
          ]
        }
      ]
    }
  ]
}
