Pipelines
Base path: /api/v1/pipelines
Scopes: pipelines:read (apenas leitura via API)
Pipelines representam os funis de venda do seu CRM (ex: “Vendas B2B”, “Pós-venda”, “Implantação”). Cada pipeline tem uma sequência ordenada de etapas (stages).
Pipelines não podem ser criados/editados via API — só admin pelo CRM. A API expõe leitura pra integrações precisarem do pipelineId/stageId na hora de criar deals.
Lista pipelines
GET /api/v1/pipelinesScope: pipelines:read
curl https://app.indutivacrm.com.br/api/v1/pipelines \ -H "X-API-Key: crm_live_..."[ { "id": "ckl4p01...", "name": "Vendas B2B", "isDefault": true, "displayOrder": 0, "stages": [ { "id": "ckl4s01...", "name": "Novo lead", "displayOrder": 0, "probability": 10 }, { "id": "ckl4s02...", "name": "Qualificado", "displayOrder": 1, "probability": 30 }, { "id": "ckl4s03...", "name": "Proposta", "displayOrder": 2, "probability": 60 }, { "id": "ckl4s04...", "name": "Negociação", "displayOrder": 3, "probability": 80 }, { "id": "ckl4s05...", "name": "Fechado — Ganho", "displayOrder": 4, "probability": 100, "isWonStage": true }, { "id": "ckl4s06...", "name": "Fechado — Perdido", "displayOrder": 5, "probability": 0, "isLostStage": true } ] }]Busca um pipeline
GET /api/v1/pipelines/:idScope: pipelines:read
Retorna o pipeline com stages aninhados (mesmo shape acima).
Como usar
A maioria das integrações:
- Chama
GET /pipelinesuma vez ao inicializar - Identifica o pipeline e a stage iniciais (geralmente
isDefault: true+ primeira stage) - Cacheia o mapa pra usar em
POST /deals - Refetch ocasional (1x por dia) pra detectar mudanças
// Setup: pega pipeline default + primeira stageconst pipelines = await api('/pipelines')const pipeline = pipelines.find(p => p.isDefault) ?? pipelines[0]const firstStage = pipeline.stages.sort((a, b) => a.displayOrder - b.displayOrder)[0]
// Depois, cria deals usando esses IDsawait api('/deals', { method: 'POST', body: { title: 'Novo lead via formulário', pipelineId: pipeline.id, stageId: firstStage.id, contactId: createdContact.id, },})Erros
| Status | error | Cenário |
|---|---|---|
| 404 | not_found | id não existe |
| 403 | insufficient_scope | Key sem pipelines:read |