{
  "info": {
    "name": "Cardápio Web — mcp.ai",
    "description": "REST API for the Cardápio Web MCP. Set {{apiKey}} to a workspace key (sk_live_…) created at https://mcp.ai/settings/api-keys.",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
  },
  "auth": {
    "type": "bearer",
    "bearer": [
      {
        "key": "token",
        "value": "{{apiKey}}",
        "type": "string"
      }
    ]
  },
  "variable": [
    {
      "key": "baseUrl",
      "value": "https://api.mcp.ai/api/cardapioweb",
      "type": "string"
    },
    {
      "key": "apiKey",
      "value": "sk_live_...",
      "type": "string"
    }
  ],
  "item": [
    {
      "name": "cardapioweb_avaliacoes",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/avaliacoes",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "avaliacoes"
          ]
        },
        "description": "Avaliações dos clientes (nota, comentário, respostas da pesquisa, pedido avaliado) com a média do período. 1 requisição por página de 100 (padrão até 3).",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"data_inicio\": \"\",\n  \"data_fim\": \"\",\n  \"max_paginas\": 0,\n  \"account\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "cardapioweb_cardapio",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/cardapio",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "cardapio"
          ]
        },
        "description": "Cardápio da loja: categorias e itens com id, preço, preço promocional ativo, status (ACTIVE visível, INACTIVE oculto, MISSING em falta), tipo (combo) e estoque quando controlado. Use os ids em cardapi",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"busca\": \"\",\n  \"categoria_ids\": \"\",\n  \"status\": \"\",\n  \"incluir_complementos\": false,\n  \"account\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "cardapioweb_cupom_criar",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/cupom/criar",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "cupom",
            "criar"
          ]
        },
        "description": "Cria um cupom de desconto na loja. Cupom sem código fica visível no cardápio para todos; com código, o cliente digita. Crie com ativo=false se quiser revisar antes de liberar.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"nome\": \"\",\n  \"tipo\": \"\",\n  \"valor\": 0,\n  \"codigo\": \"\",\n  \"ativo\": false,\n  \"pedido_minimo\": 0,\n  \"limite_usos\": 0,\n  \"so_clientes_novos\": false,\n  \"cliente_pode_repetir\": false,\n  \"dias\": \"\",\n  \"tipos_pedido\": \"\",\n  \"valido_de\": \"\",\n  \"expira_em\": \"\",\n  \"horario_inicio\": \"\",\n  \"horario_fim\": \"\",\n  \"item_ids\": \"\",\n  \"account\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "cardapioweb_cupons",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/cupons",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "cupons"
          ]
        },
        "description": "Cupons de desconto da loja: nome, código, tipo e valor, se está ativo, situação (valid, expired, usage_limit_reached, not_yet_available, not_active, not_available), regras e validade. 1 requisição por",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"busca\": \"\",\n  \"so_ativos\": false,\n  \"max_paginas\": 0,\n  \"account\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "cardapioweb_cupons_editar",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/cupons/editar",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "cupons",
            "editar"
          ]
        },
        "description": "Edita cupons existentes (ativar/desativar, mudar valor, código, validade, regras). Mande só o que muda: o restante do cupom é mantido (a Cardápio Web exige o cupom inteiro, então ele é lido antes e re",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"cupons\": \"\",\n  \"account\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "cardapioweb_estoque",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/estoque",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "estoque"
          ]
        },
        "description": "Estoque da loja: itens e complementos (opções) com o controle de estoque ligado, quantidade atual, unidade e status. Uma opção usada em vários itens aparece uma vez, com os grupos onde está. Use os id",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"busca\": \"\",\n  \"ate_quantidade\": 0,\n  \"incluir_sem_controle\": false,\n  \"account\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "cardapioweb_estoque_ajustar",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/estoque/ajustar",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "estoque",
            "ajustar"
          ]
        },
        "description": "Ajusta o estoque REAL de itens e complementos (opções) da loja: o cardápio passa a mostrar a nova quantidade e o item esgota quando zera. Escrita real: mostre ao usuário o que vai mudar (item, quantid",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"ajustes\": \"\",\n  \"account\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "cardapioweb_horarios_atualizar",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/horarios/atualizar",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "horarios",
            "atualizar"
          ]
        },
        "description": "Altera horários de funcionamento e modos de operação da loja REAL (o cardápio passa a abrir/fechar conforme o novo horário).",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"semana\": {},\n  \"datas_especiais\": {},\n  \"fuso\": \"\",\n  \"modos_operacao\": {},\n  \"account\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "cardapioweb_insumos",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/insumos",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "insumos"
          ]
        },
        "description": "Insumos (matéria-prima) da loja com categoria, unidade, estoque atual, estoque mínimo e se está abaixo do mínimo. Exige a conexão por OAuth. 1 requisição por página de 100 (padrão até 3).",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"busca\": \"\",\n  \"abaixo_do_minimo\": false,\n  \"max_paginas\": 0,\n  \"account\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "cardapioweb_insumos_ajustar",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/insumos/ajustar",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "insumos",
            "ajustar"
          ]
        },
        "description": "Altera insumos REAIS da loja: preço de custo e se o estoque pode ficar negativo. Escrita real: confirme com o usuário antes de chamar. A quantidade em estoque e o mínimo de um insumo NÃO são alterávei",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"insumos\": \"\",\n  \"account\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "cardapioweb_itens_atualizar",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/itens/atualizar",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "itens",
            "atualizar"
          ]
        },
        "description": "Altera itens do cardápio REAL da loja (o cliente vê na hora): pausar ou reativar (status MISSING = em falta, INACTIVE = oculto, ACTIVE = à venda), mudar o preço e ligar/desligar o preço promocional. A",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"itens\": \"\",\n  \"account\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "cardapioweb_list_accounts",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/list/accounts",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "list",
            "accounts"
          ]
        },
        "description": "Lista as lojas Cardápio Web conectadas (id, nome, modo de conexão). Não chama a API.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"account\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "cardapioweb_loja",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/loja",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "loja"
          ]
        },
        "description": "Dados da loja na Cardápio Web: nome, status, link do cardápio, endereço, modos de operação (delivery, retirada, consumo no local, agendado), horários da semana e datas especiais, estado temporário (ab",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"account\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "cardapioweb_pedido_detalhe",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/pedido/detalhe",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "pedido",
            "detalhe"
          ]
        },
        "description": "Detalhe completo de pedidos por id: número, status, itens com opções, descontos/cupom, pagamentos, taxas, total, cliente (nome e telefone) e endereço de entrega. 1 requisição por pedido.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"pedido_ids\": \"\",\n  \"incluir_documento_fiscal\": false,\n  \"account\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "cardapioweb_pedidos_avancar",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/pedidos/avancar",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "pedidos",
            "avancar"
          ]
        },
        "description": "Avança pedidos REAIS para a próxima etapa (o cliente acompanha o status). Confirme com o usuário antes de chamar.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"pedido_ids\": \"\",\n  \"etapa\": \"\",\n  \"account\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "cardapioweb_pedidos_cancelar",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/pedidos/cancelar",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "pedidos",
            "cancelar"
          ]
        },
        "description": "CANCELA pedidos REAIS (status final, não volta). O cliente é avisado e pode haver estorno de pagamento online. Só chame depois de o usuário confirmar o cancelamento de cada pedido e dizer o motivo, qu",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"pedido_ids\": \"\",\n  \"motivo\": \"\",\n  \"account\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "cardapioweb_pedidos_confirmar",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/pedidos/confirmar",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "pedidos",
            "confirmar"
          ]
        },
        "description": "ACEITA pedidos REAIS que estão pendentes (waiting_confirmation). O cliente é avisado e a cozinha passa a produzir: confirme com o usuário, pedido por pedido, antes de chamar. Agendados vão para schedu",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"pedido_ids\": \"\",\n  \"account\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "cardapioweb_pedidos_historico",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/pedidos/historico",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "pedidos",
            "historico"
          ]
        },
        "description": "Pedidos FINALIZADOS e CANCELADOS criados num período (até 6 meses por consulta, inclusive iFood e outros canais integrados). Traz id, status, tipo, canal e datas; para valores e itens use cardapioweb_",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"data_inicio\": \"\",\n  \"data_fim\": \"\",\n  \"status\": \"\",\n  \"max_paginas\": 0,\n  \"account\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "cardapioweb_pedidos_recentes",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/pedidos/recentes",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "pedidos",
            "recentes"
          ]
        },
        "description": "Pedidos alterados nas ÚLTIMAS 8 HORAS (os do turno). Para dias anteriores use cardapioweb_pedidos_historico.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"status\": \"\",\n  \"atualizados_desde\": \"\",\n  \"detalhar\": false,\n  \"account\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "cardapioweb_resumo_vendas",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/resumo/vendas",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "resumo",
            "vendas"
          ]
        },
        "description": "Resumo de vendas de um período (até 6 meses), calculado pela Cardápio Web: faturamento total, nº de pedidos e ticket médio; quebras por dia, dia da semana, hora, mês, canal, tipo de pedido, forma de p",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"data_inicio\": \"\",\n  \"data_fim\": \"\",\n  \"incluir\": \"\",\n  \"limite_ranking\": 0,\n  \"incluir_cancelados\": false,\n  \"account\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    }
  ]
}