curl -X PATCH https://crm.vistum.com.br/api/v1/deals/card_def456ghi \
-H "Authorization: Bearer vg_live_SUA_CHAVE_AQUI" \
-H "Content-Type: application/json" \
-d '{ "stageId": "stage_propost02" }'
curl -X PATCH https://crm.vistum.com.br/api/v1/deals/card_def456ghi \
-H "Authorization: Bearer vg_live_SUA_CHAVE_AQUI" \
-H "Content-Type: application/json" \
-d '{ "status": "lost", "lostReason": "Sem orçamento" }'
{ "data": { "id": "card_def456ghi", "status": "lost", "lostReason": "Sem orçamento", "closedAt": "2026-07-21T18:00:00.000Z", "...": "..." } }
Negócios
Atualizar negócio
Endpoint único para todas as mutações de um negócio — renomear, revalorizar, mover de etapa, marcar ganho/perdido e restaurar.
PATCH
/
api
/
v1
/
deals
/
{id}
curl -X PATCH https://crm.vistum.com.br/api/v1/deals/card_def456ghi \
-H "Authorization: Bearer vg_live_SUA_CHAVE_AQUI" \
-H "Content-Type: application/json" \
-d '{ "stageId": "stage_propost02" }'
curl -X PATCH https://crm.vistum.com.br/api/v1/deals/card_def456ghi \
-H "Authorization: Bearer vg_live_SUA_CHAVE_AQUI" \
-H "Content-Type: application/json" \
-d '{ "status": "lost", "lostReason": "Sem orçamento" }'
{ "data": { "id": "card_def456ghi", "status": "lost", "lostReason": "Sem orçamento", "closedAt": "2026-07-21T18:00:00.000Z", "...": "..." } }
Autenticação
string
required
Bearer vg_live_<sua_chave> — API Key com escopo deals:writePATCH:
- Mover de etapa → envie
stageId. - Marcar como ganho → envie
status: "won". - Marcar como perdido → envie
status: "lost"+lostReason. - Restaurar (reabrir) → envie
status: "open"(limpaclosedAt).
Body
string
Renomeia o negócio.
number
Novo valor (
>= 0 ou null).string
Move o negócio para outra etapa. Registra histórico e dispara o webhook
card.moved + automação stage_changed.string
ID do responsável, ou
null para remover. Precisa ser membro do workspace.string
open, won ou lost. won/lost marcam closedAt; open restaura (limpa closedAt). Dispara card.won/card.lost + automação deal_won/deal_lost.string
Obrigatório quando
status = lost.object
Atualiza campos personalizados (mesma validação do create).
Transições de status e movimentação de etapa são atômicas: dois PATCH concorrentes idênticos não disparam o webhook/automação duas vezes.
curl -X PATCH https://crm.vistum.com.br/api/v1/deals/card_def456ghi \
-H "Authorization: Bearer vg_live_SUA_CHAVE_AQUI" \
-H "Content-Type: application/json" \
-d '{ "stageId": "stage_propost02" }'
curl -X PATCH https://crm.vistum.com.br/api/v1/deals/card_def456ghi \
-H "Authorization: Bearer vg_live_SUA_CHAVE_AQUI" \
-H "Content-Type: application/json" \
-d '{ "status": "lost", "lostReason": "Sem orçamento" }'
{ "data": { "id": "card_def456ghi", "status": "lost", "lostReason": "Sem orçamento", "closedAt": "2026-07-21T18:00:00.000Z", "...": "..." } }
400 VALIDATION, 404 STAGE_NOT_FOUND, 404 NOT_FOUND, 400 ASSIGNEE_NOT_FOUND.