POST/crm/card/{id}/move-funnel

Trocar de funil

Veja como trocar de funil, com parâmetros e exemplos de requisição e resposta na API do iHelp.

POSThttps://apiv3.ihelpchat.com/api/v2/crm/card/{id}/move-funnel

Move um card aberto para outro funil, posicionando-o em uma etapa ativa do funil de destino.

POST

https://apiv3.ihelpchat.com/api/v2/crm/card/{id}/move-funnel

Parâmetros de rota:

ParamTipoDescrição
idintID do card

Body (JSON):

{
  "targetFunnelId": 15,
  "targetStageId": 210
}
CampoTipoObrigatórioDescrição
targetFunnelIdintsimFunil de destino. Precisa ser diferente do funil atual do card.
targetStageIdintsimEtapa de destino, obrigatoriamente pertencente ao targetFunnelId.

Resposta 200 OK:

{
  "card": {
    "id": 8821,
    "title": "Proposta ACME",
    "stageId": 210
  }
}

O card retornado já reflete o funil e a etapa novos.

Permissões

Diferente dos demais endpoints, aqui são exigidos dois níveis de acesso:

  • No funil de origem: administrador da empresa ou Admin/Owner da pipeline.
  • No funil de destino: administrador da empresa ou permissão de edição.

Se qualquer um dos dois faltar, a resposta é 403 com uma mensagem indicando qual lado bloqueou.

Erros

HTTPerrorQuando
400invalid_target_funnelFunil de destino inexistente, inativo, ou igual ao de origem
401-Token ausente, inválido ou expirado
403-Sem permissão na pipeline de origem ou na de destino
404-Card inexistente ou pertencente a outra empresa
409card_closedCards ganhos, perdidos ou cancelados não mudam de funil
409stage_inactiveEtapa de destino não pertence ao funil informado, está inativa ou foi excluída
409contact_lock_conflictO funil de destino tem trava de contato e o contato já possui um card ativo lá
409stage_concurrency_conflictConflito de concorrência, repita a chamada

Boas práticas

  • Descubra as etapas válidas com GET /crm/funnel/{targetFunnelId}/with-stages (ver Funis e etapas) e filtre por isActive: true antes de escolher o targetStageId.
  • Somente cards com status aberto ou em andamento são elegíveis. Verifique o status antes de chamar para evitar o 409 card_closed.
  • Esta operação move um card por vez. Não existe versão em massa para troca de funil.