Retomar a conversa (devolver ao agente)
v1.0.0https://api.growthaisystem.com/api/v1/conversations/{id}/resume- Exige
Authorization: Bearer gos_…— Chave de API (gos_…)· escoposconversations.write
O inverso do POST /conversations/{id}/handoff, para o próprio agente externo: você passou a conversa para o time e ninguém do time falou com o contato (confira as mensagens), então toma a conversa de volta. É o mesmo efeito do Devolver ao agente do painel: a pausa sai (ai.paused: false) e o agente volta a poder responder; a IA da plataforma, se estiver ligada, volta no próximo contato. Quem é o responsável (assignedUserId) continua o mesmo, e nenhuma mensagem é enviada.
Só a pausa do seu handoff sai (ai.pausedReason: "handoff_externo"). A API confere a razão da pausa, não a conversa: se uma pessoa do time respondeu ou mandou modelo pelo painel, ou clicou Assumir (antes ou depois do seu handoff), a pausa é dela (humano_assumiu) e a resposta é 409 paused_by_human, sem mudar nada; o mesmo vale para a pausa da IA da plataforma (ia_passou_para_humano, que é também a razão do seu handoff quando ela está ligada na conversa: nesse caso, só o painel devolve; na conversa de um funcionário digital da Fábrica o seu handoff grava handoff_externo, mesmo com ela ligada). A resposta digitada no celular do número e a apresentação comercial enviada pelo WhatsApp não mudam a pausa: antes de retomar, confira GET /conversations/{id}/messages desde o seu handoff (mensagem de saída com actor user ou unknown = alguém do time falou com o contato).
Idempotente: conversa já ativa responde 200 com resumed: false e nada muda. O corpo é opcional; reason (até 300 caracteres) fica só no log da chamada. O header Idempotency-Key é aceito, mas não guarda resposta: o retry responde pelo estado (resumed: false).
Parâmetros de caminho
Entram no próprio endereço, no lugar das chaves.
- idstringobrigatório
- tamanho 1–80
Corpo da requisição
application/jsonobrigatórioV1ConversationResumeInputInput
- reasonstringopcional
- tamanho máx. 300
Respostas
10 respostas documentadas — o código, o que ele significa nesta rota e a forma do corpo.
resumed: true = a pausa do seu handoff saiu agora e a conversa voltou para o agente (conversation.ai.paused: false). resumed: false = a conversa já estava ativa; nada mudou.
V1ConversationResumeResultado
- resumedboolean
- idstring
- channelstring
- connectionIdstring | null
- contactIdstring | null
- idstring
- namestring
- phonestring | null
- emailstring | null
- contactDisplaystring | null
- contactPhonestring | null
- assignedUserIdstring | null
- humanAssignedboolean
- assignedAtstring | null
- lastMessageAtstring | null
- lastMessageDirectionstring | null
- um de"inbound""outbound"
- lastMessageActorstring | null
- um de"user""contact""ia""automation""system""api""unknown"
- archivedboolean
- pausedboolean
- pausedUntilstring | null
- pausedReasonstring | null
- appliesboolean
- openboolean
- expiresAtstring | null
- createdAtstring
- updatedAtstring