API & MCP
Propostas
GET/api/v1/proposals
Lista as propostas da sua conta, das mais recentes para as mais antigas. Serve para o seu CRM puxar o que foi gerado pela API, pela página de captação e pelo painel, tudo na mesma lista. Chave viva apenas.
curl "https://app.ionluz.com.br/api/v1/proposals?limit=20&origem=api" \
-H "Authorization: Bearer ilz_sua_chave"| Parâmetro | Tipo | Descrição |
|---|---|---|
limit | integer | Itens por página, de 1 a 100. Padrão 20. Fora da faixa devolve 400 parametro-invalido. |
cursor | string | O nextCursor da página anterior. Sem ele, você recebe a primeira página. |
origem | string | manual (feita no painel), api (gravada pela API ou pelo MCP) ou lead (página pública de captação). |
{
"ok": true,
"items": [
{
"id": "clx8h2k9a0001abcd",
"numero": 42,
"origem": "api",
"criadaEm": "2026-09-11T18:20:04.000Z",
"abertaEm": "2026-09-12T09:03:11.000Z",
"potenciaKwp": 5.4,
"valorFinal": 28500,
"paybackAnos": 6.3,
"cliente": { "nome": "Ana", "email": "ana@ex.com", "telefone": "15999990000",
"cidade": "Sorocaba", "uf": "SP" },
"links": { "proposta": "https://app.ionluz.com.br/p/clx8h2k9a0001abcd?t=...",
"pdf": "https://app.ionluz.com.br/api/pub/clx8h2k9a0001abcd/pdf?t=..." }
}
],
"nextCursor": "clx8h2k9a0001abcd",
"limit": 20,
"requestId": "req_..."
}Pagine enquanto nextCursor vier preenchido; null significa fim da lista. Os links já vêm assinados e podem ir direto ao cliente final. A lista traz preço de venda e dados do lead, nunca custo, margem ou a composição interna do kit.
GET/api/v1/proposals/{id}
Mesma estrutura de item, agora sob a chave proposta. Um id que não seja da sua conta responde 404 proposta-nao-encontrada, o mesmo de um id que não existe: a API não confirma a existência de proposta alheia.
curl https://app.ionluz.com.br/api/v1/proposals/clx8h2k9a0001abcd -H "Authorization: Bearer ilz_sua_chave"API v1 · ionluz, orçamentos solares. Dúvidas? Cite o
requestId ao escrever para suporte@ionluz.com.br.