# Atualizar treinamento do agente Source: https://docs.jurichat.com/api-reference/agent-trainings/atualizar-treinamento-do-agente https://api.jurichat.com/docs/client/openapi.json patch /agents/{agentId}/trainings/{id} Atualiza um treinamento existente do agente # Criar treinamento do agente Source: https://docs.jurichat.com/api-reference/agent-trainings/criar-treinamento-do-agente https://api.jurichat.com/docs/client/openapi.json post /agents/{agentId}/trainings Cria um novo treinamento para o agente # Deletar treinamento do agente Source: https://docs.jurichat.com/api-reference/agent-trainings/deletar-treinamento-do-agente https://api.jurichat.com/docs/client/openapi.json delete /agents/{agentId}/trainings/{id} Remove um treinamento do agente # Listar treinamentos do agente Source: https://docs.jurichat.com/api-reference/agent-trainings/listar-treinamentos-do-agente https://api.jurichat.com/docs/client/openapi.json get /agents/{agentId}/trainings Lista todos os treinamentos de um agente com paginação e filtros # Atualizar agente Source: https://docs.jurichat.com/api-reference/agents/atualizar-agente https://api.jurichat.com/docs/client/openapi.json patch /agents/{id} Atualiza um agente existente # Buscar agente Source: https://docs.jurichat.com/api-reference/agents/buscar-agente https://api.jurichat.com/docs/client/openapi.json get /agents/{id} Busca um agente específico por ID # Buscar vínculos do agente Source: https://docs.jurichat.com/api-reference/agents/buscar-vínculos-do-agente https://api.jurichat.com/docs/client/openapi.json get /agents/{id}/links Retorna os vínculos ativos do agente em integração e conversas # Criar agente Source: https://docs.jurichat.com/api-reference/agents/criar-agente https://api.jurichat.com/docs/client/openapi.json post /agents/ Cria um novo agente no sistema # Deletar agente Source: https://docs.jurichat.com/api-reference/agents/deletar-agente https://api.jurichat.com/docs/client/openapi.json delete /agents/{id} Remove um agente do sistema # Listar agentes Source: https://docs.jurichat.com/api-reference/agents/listar-agentes https://api.jurichat.com/docs/client/openapi.json get /agents/ Lista agentes com filtros e paginação # Atualizar regra de automação Source: https://docs.jurichat.com/api-reference/automation-rules/atualizar-regra-de-automação https://api.jurichat.com/docs/client/openapi.json patch /automation-rules/{id} Atualiza parcialmente uma regra de automação. Remover o filtro IF limpa o ramo Senão, mesmo que elseActions ainda exista no payload ou no banco. **Como montar** 1. `triggerEvent`: pegue o `name` em `GET /webhooks/events` — é o mesmo catálogo dos webhooks. 2. `conditions` (opcional): filtra o *Quando*. Sem nenhuma condição efetiva, `elseActions` é recusado. 3. `actions`: de 1 a 5 ações do ramo *Então*. `elseActions`: até 5 ações do ramo *Senão*. 4. `integrationId`: `null` aplica a regra a todas as integrações. Ids em `GET /integration`. **Parâmetros por ação** (`actions[].actionParams`) | `action` | chave obrigatória | de onde vem o id | | --- | --- | --- | | `SEND_FAST_MESSAGE` | `fastMessageId` **ou** `templateName` | `GET /fast-message?inboxId={inboxId}` | | `SCHEDULE_MESSAGE` | `text` **ou** `templateName` | — | | `MOVE_CARD` | `targetFunnelColumnId` | `GET /funnel-column` | | `TAG_CONVERSATION` | `tagId` | `GET /tag` | | `ASSIGN_LEGAL_AREA` | `legalAreaId` | `GET /legal-areas` | | `CREATE_TICKET` | `title` | status em `GET /ticket-statuses` | | `FIRE_WEBHOOK` | `url` (http/https) | — | | `PAUSE_AUTOMATION` | nenhuma | `durationMinutes` opcional; `resumeOnTemplateSent` opcional | **Exemplo — enviar uma resposta rápida quando o lead entra numa coluna** ```json { "name": "Boas-vindas do funil", "enabled": true, "triggerEvent": "crm.lead.created", "conditions": { "funnelColumnId": "" }, "actions": [ { "action": "SEND_FAST_MESSAGE", "actionParams": { "fastMessageId": "" } } ] } ``` A resposta rápida pode ser `TEXT`, `AUDIO` ou `SEQUENCE`. Numa `SEQUENCE`, os blocos saem em ordem, no ritmo (`typingSeconds` / `waitSeconds`) salvo na própria resposta rápida. # Buscar regra de automação Source: https://docs.jurichat.com/api-reference/automation-rules/buscar-regra-de-automação https://api.jurichat.com/docs/client/openapi.json get /automation-rules/{id} Retorna os detalhes de uma regra de automação. # Criar regra de automação Source: https://docs.jurichat.com/api-reference/automation-rules/criar-regra-de-automação https://api.jurichat.com/docs/client/openapi.json post /automation-rules/ Cria uma regra que reage a um evento do sistema e executa uma ou mais ações internas em ordem. **Como montar** 1. `triggerEvent`: pegue o `name` em `GET /webhooks/events` — é o mesmo catálogo dos webhooks. 2. `conditions` (opcional): filtra o *Quando*. Sem nenhuma condição efetiva, `elseActions` é recusado. 3. `actions`: de 1 a 5 ações do ramo *Então*. `elseActions`: até 5 ações do ramo *Senão*. 4. `integrationId`: `null` aplica a regra a todas as integrações. Ids em `GET /integration`. **Parâmetros por ação** (`actions[].actionParams`) | `action` | chave obrigatória | de onde vem o id | | --- | --- | --- | | `SEND_FAST_MESSAGE` | `fastMessageId` **ou** `templateName` | `GET /fast-message?inboxId={inboxId}` | | `SCHEDULE_MESSAGE` | `text` **ou** `templateName` | — | | `MOVE_CARD` | `targetFunnelColumnId` | `GET /funnel-column` | | `TAG_CONVERSATION` | `tagId` | `GET /tag` | | `ASSIGN_LEGAL_AREA` | `legalAreaId` | `GET /legal-areas` | | `CREATE_TICKET` | `title` | status em `GET /ticket-statuses` | | `FIRE_WEBHOOK` | `url` (http/https) | — | | `PAUSE_AUTOMATION` | nenhuma | `durationMinutes` opcional; `resumeOnTemplateSent` opcional | **Exemplo — enviar uma resposta rápida quando o lead entra numa coluna** ```json { "name": "Boas-vindas do funil", "enabled": true, "triggerEvent": "crm.lead.created", "conditions": { "funnelColumnId": "" }, "actions": [ { "action": "SEND_FAST_MESSAGE", "actionParams": { "fastMessageId": "" } } ] } ``` A resposta rápida pode ser `TEXT`, `AUDIO` ou `SEQUENCE`. Numa `SEQUENCE`, os blocos saem em ordem, no ritmo (`typingSeconds` / `waitSeconds`) salvo na própria resposta rápida. # Excluir regra de automação Source: https://docs.jurichat.com/api-reference/automation-rules/excluir-regra-de-automação https://api.jurichat.com/docs/client/openapi.json delete /automation-rules/{id} Remove permanentemente uma regra de automação. # Listar regras de automação Source: https://docs.jurichat.com/api-reference/automation-rules/listar-regras-de-automação https://api.jurichat.com/docs/client/openapi.json get /automation-rules/ Lista as regras de automação do escritório, opcionalmente filtradas por evento. # Atualizar contato Source: https://docs.jurichat.com/api-reference/contacts/atualizar-contato https://api.jurichat.com/docs/client/openapi.json patch /people/{peopleId} Atualização parcial: campos omitidos não são zerados. `tags`, quando presente, redefine todas as associações na inbox. # Criar contato Source: https://docs.jurichat.com/api-reference/contacts/criar-contato https://api.jurichat.com/docs/client/openapi.json post /people/ Cria um novo contato vinculado à inbox informada. As tags devem existir na mesma inbox. Conflito de dados únicos retorna 409. # Excluir contatos Source: https://docs.jurichat.com/api-reference/contacts/excluir-contatos https://api.jurichat.com/docs/client/openapi.json delete /people/ Remove um ou mais contatos pelos IDs informados. # Importar contatos em lote Source: https://docs.jurichat.com/api-reference/contacts/importar-contatos-em-lote https://api.jurichat.com/docs/client/openapi.json post /people/import Importa contatos para uma ou mais inboxes. Campos obrigatórios: name e phoneNumber. Com createConversation=true, também cria conversa na integração informada (integrationId). Retorna o que foi criado e o que falhou. # Listar contatos Source: https://docs.jurichat.com/api-reference/contacts/listar-contatos https://api.jurichat.com/docs/client/openapi.json get /people/ Lista contatos da inbox com filtros por nome, e-mail, bloqueio e tags. Use `page` e `limit` juntos para paginar; sem eles, retorna todos os registros. # Obter contato Source: https://docs.jurichat.com/api-reference/contacts/obter-contato https://api.jurichat.com/docs/client/openapi.json get /people/{peopleId} Retorna os dados de um contato pelo ID. O `inboxId` é obrigatório para garantir que o contato pertença à inbox informada. # Anexar documentos da conversa na ficha do cliente no Juridiq Source: https://docs.jurichat.com/api-reference/conversations/anexar-documentos-da-conversa-na-ficha-do-cliente-no-juridiq https://api.jurichat.com/docs/client/openapi.json post /conversation/{conversationId}/documents/juridiq Sobe para a ficha do cliente no Juridiq o mesmo recorte de documentos que o download traria. Quando a ficha não pode ser resolvida com segurança, responde `needs-selection` sem enviar nada. # Arquivar ou desarquivar conversa Source: https://docs.jurichat.com/api-reference/conversations/arquivar-ou-desarquivar-conversa https://api.jurichat.com/docs/client/openapi.json patch /conversation/{conversationId}/archive Arquiva ou desarquiva a conversa conforme o valor de `isArchived`. # Atualizar conversa Source: https://docs.jurichat.com/api-reference/conversations/atualizar-conversa https://api.jurichat.com/docs/client/openapi.json patch /conversation/{conversationId} Atualização parcial: apenas os campos enviados são aplicados. Campos omitidos não são alterados. # Baixar mídia da mensagem Source: https://docs.jurichat.com/api-reference/conversations/baixar-mídia-da-mensagem https://api.jurichat.com/docs/client/openapi.json get /conversation/message/{messageId}/download Retorna uma URL temporária para baixar ou visualizar o arquivo da mensagem. # Baixar todos os documentos da conversa Source: https://docs.jurichat.com/api-reference/conversations/baixar-todos-os-documentos-da-conversa https://api.jurichat.com/docs/client/openapi.json get /conversation/{conversationId}/documents/download Gera e transmite um arquivo ZIP com os documentos enviados e recebidos na conversa. Aceita recorte por período. # Buscar mensagens na conversa Source: https://docs.jurichat.com/api-reference/conversations/buscar-mensagens-na-conversa https://api.jurichat.com/docs/client/openapi.json get /conversation/{conversationId}/messages/search Busca mensagens da conversa cujo conteúdo contém o termo informado, ordenadas cronologicamente. # Contadores de conversas Source: https://docs.jurichat.com/api-reference/conversations/contadores-de-conversas https://api.jurichat.com/docs/client/openapi.json get /conversation/counters Retorna os contadores dos filtros rápidos (total, minhas, aguardando e aguardando resposta) para os filtros aplicados na listagem. # Criar conversa Source: https://docs.jurichat.com/api-reference/conversations/criar-conversa https://api.jurichat.com/docs/client/openapi.json post /conversation/ Cria uma conversa individual com o contato informado. Se já existir uma conversa ativa, retorna a existente. Quem só enxerga as conversas do próprio setor precisa informar `departmentIds`, e só pode usar setores dos quais participa. Para esse usuário, contato que já tem conversa em setor alheio responde 409 em vez de devolver o id — devolvê-lo daria acesso a uma conversa que a listagem dele nunca mostraria. # Criar nota interna Source: https://docs.jurichat.com/api-reference/conversations/criar-nota-interna https://api.jurichat.com/docs/client/openapi.json post /conversation/note Insere nota privada visível aos operadores na conversa. Aceita JSON para notas sem arquivo e multipart/form-data para notas com anexos. # Editar mensagem enviada Source: https://docs.jurichat.com/api-reference/conversations/editar-mensagem-enviada https://api.jurichat.com/docs/client/openapi.json post /conversation/edit-message Edita uma mensagem de texto enviada pelo WhatsApp Lite dentro da janela permitida pelo WhatsApp. # Encaminhar mensagens Source: https://docs.jurichat.com/api-reference/conversations/encaminhar-mensagens https://api.jurichat.com/docs/client/openapi.json post /conversation/forward-message Encaminha uma ou mais mensagens para uma ou mais conversas. # Encerrar atendimento humano Source: https://docs.jurichat.com/api-reference/conversations/encerrar-atendimento-humano https://api.jurichat.com/docs/client/openapi.json post /conversation/end-human-support Encerra o atendimento humano e devolve a conversa para o fluxo automático. # Enviar mensagem Source: https://docs.jurichat.com/api-reference/conversations/enviar-mensagem https://api.jurichat.com/docs/client/openapi.json post /conversation/send-message Envia uma mensagem na conversa. O body deve ser enviado como `multipart/form-data`. Em conversas do canal `LITE_WHATSAPP`, o número do contato é verificado na uazapi antes do envio. Quando o número não está registrado no WhatsApp, a requisição é recusada com `400` e `code: WHATSAPP_NUMBER_NOT_FOUND` — nada é registrado e o telefone do contato precisa ser corrigido. Se a verificação não puder ser concluída (instância desconectada, uazapi indisponível), o envio segue normalmente. # Enviar mídia da galeria Source: https://docs.jurichat.com/api-reference/conversations/enviar-mídia-da-galeria https://api.jurichat.com/docs/client/openapi.json post /conversation/media-library/send Reenvia para a conversa de destino um arquivo que já está no acervo, sem novo upload. Origem e destino são validados contra o escritório do token e o alcance de quem pediu. Mensagem interna (anotação, ticket) e mensagem sem arquivo são recusadas com `400`. # Excluir conversa Source: https://docs.jurichat.com/api-reference/conversations/excluir-conversa https://api.jurichat.com/docs/client/openapi.json delete /conversation/{conversationId} Remove a conversa e suas mensagens associadas. # Galeria de mídia Source: https://docs.jurichat.com/api-reference/conversations/galeria-de-mídia https://api.jurichat.com/docs/client/openapi.json get /conversation/media-library Lista as mídias já trocadas, da mais recente para a mais antiga. O alcance é o mesmo da listagem de conversas: escritório do token, inboxes das quais quem pediu participa, conversa privada só quando ele é participante e restrição por setor quando o usuário só enxerga o que lhe é atribuído. Mensagem apagada não aparece. # Iniciar atendimento humano ou transferir Source: https://docs.jurichat.com/api-reference/conversations/iniciar-atendimento-humano-ou-transferir https://api.jurichat.com/docs/client/openapi.json post /conversation/start-human-support Transfere a conversa para atendimento humano. Permite atribuir a um atendente específico ou a um aleatório, com opção de notificar o contato. # Listar conversas Source: https://docs.jurichat.com/api-reference/conversations/listar-conversas https://api.jurichat.com/docs/client/openapi.json get /conversation/ Lista conversas da inbox com filtros por status, prioridade, canal, tags, texto e aguardando resposta. Use `page` e `limit` para paginar. # Listar notas Source: https://docs.jurichat.com/api-reference/conversations/listar-notas https://api.jurichat.com/docs/client/openapi.json get /conversation/notes Lista notas internas da conversa, com autor quando disponível. # Obter conversa Source: https://docs.jurichat.com/api-reference/conversations/obter-conversa https://api.jurichat.com/docs/client/openapi.json get /conversation/{conversationId} Retorna os dados de uma conversa com participantes, tags e mensagens. Use `cursor` e `limit` para paginar as mensagens. # Pausar atendimento Source: https://docs.jurichat.com/api-reference/conversations/pausar-atendimento https://api.jurichat.com/docs/client/openapi.json post /conversation/pause-support Pausa um atendimento humano em andamento. A conversa fica com status PAUSED, mantém o atendente responsável e deixa de contar nas métricas de TMR e TMA. Qualquer mensagem nova retoma o atendimento. # Reagir a uma mensagem Source: https://docs.jurichat.com/api-reference/conversations/reagir-a-uma-mensagem https://api.jurichat.com/docs/client/openapi.json post /conversation/react-message Envia, troca ou remove uma reação em uma mensagem no WhatsApp Lite (UAZAPI) ou na API Oficial. # Remover mensagem Source: https://docs.jurichat.com/api-reference/conversations/remover-mensagem https://api.jurichat.com/docs/client/openapi.json post /conversation/remove-message Remove uma mensagem da conversa. # Retomar atendimento pausado Source: https://docs.jurichat.com/api-reference/conversations/retomar-atendimento-pausado https://api.jurichat.com/docs/client/openapi.json post /conversation/resume-support Retoma um atendimento pausado, devolvendo a conversa para "Em atendimento" com o mesmo atendente responsável. # Silenciar ou reativar notificações da conversa Source: https://docs.jurichat.com/api-reference/conversations/silenciar-ou-reativar-notificações-da-conversa https://api.jurichat.com/docs/client/openapi.json patch /conversation/{conversationId}/mute Silencia ou reativa as notificações da conversa. Com `scope: JURICHAT_AND_WHATSAPP` a mudança também é aplicada no WhatsApp (somente WhatsApp Lite); se a uazapi falhar, a mudança local é mantida e `whatsappSynced` volta falso. O escopo de WhatsApp só é recusado ao silenciar — ao reativar, a chamada é apenas pulada. # Sincronizar mensagens (WhatsApp) Source: https://docs.jurichat.com/api-reference/conversations/sincronizar-mensagens-whatsapp https://api.jurichat.com/docs/client/openapi.json post /conversation/sync-messages Sincroniza o histórico de mensagens do WhatsApp para a conversa informada. # Status da janela WhatsApp oficial Source: https://docs.jurichat.com/api-reference/conversations/status-da-janela-whatsapp-oficial https://api.jurichat.com/docs/client/openapi.json get /conversation/{conversationId}/whatsapp-window Retorna o status da janela de mensagens para WhatsApp API Oficial e Instagram Direct. # Upload de mídia do cabeçalho de template Source: https://docs.jurichat.com/api-reference/conversations/upload-de-mídia-do-cabeçalho-de-template https://api.jurichat.com/docs/client/openapi.json post /conversation/{conversationId}/template-header-media Faz upload de imagem, vídeo ou documento para uso no cabeçalho de envio de template WhatsApp. # Verificação do número no WhatsApp Source: https://docs.jurichat.com/api-reference/conversations/verificação-do-número-no-whatsapp https://api.jurichat.com/docs/client/openapi.json get /conversation/{conversationId}/whatsapp-number-check Verifica na uazapi se o número do contato da conversa está registrado no WhatsApp. Aplica-se apenas a conversas do canal LITE_WHATSAPP; nos demais casos retorna NOT_APPLICABLE. # Buscar resumo de créditos Source: https://docs.jurichat.com/api-reference/credits/buscar-resumo-de-créditos https://api.jurichat.com/docs/client/openapi.json get /credits/summary Retorna o resumo de créditos de IA e uso/cobrança de armazenamento do agente (MB e estimativa de fatura). # Atualizar campo personalizado Source: https://docs.jurichat.com/api-reference/crm/atualizar-campo-personalizado https://api.jurichat.com/docs/client/openapi.json patch /funnel-custom-field/{id} Atualiza um campo personalizado existente # Atualizar card de CRM Source: https://docs.jurichat.com/api-reference/crm/atualizar-card-de-crm https://api.jurichat.com/docs/client/openapi.json patch /funnel-column-card/{id} Atualização parcial do card. Apenas os campos enviados são modificados. Enviar `columnId` move o card para outra etapa do funil. # Atualizar coluna do funil Source: https://docs.jurichat.com/api-reference/crm/atualizar-coluna-do-funil https://api.jurichat.com/docs/client/openapi.json patch /funnel-column/{id} Atualiza uma coluna de funil existente # Atualizar configuração dos cards do CRM Source: https://docs.jurichat.com/api-reference/crm/atualizar-configuração-dos-cards-do-crm https://api.jurichat.com/docs/client/openapi.json put /user/crm-card-config Salva os campos exibidos nos cards do CRM para o usuário autenticado. # Atualizar funil Source: https://docs.jurichat.com/api-reference/crm/atualizar-funil https://api.jurichat.com/docs/client/openapi.json patch /funnel/{id} Atualiza um funil existente # Criar campo personalizado Source: https://docs.jurichat.com/api-reference/crm/criar-campo-personalizado https://api.jurichat.com/docs/client/openapi.json post /funnel-custom-field/ Cria um novo campo personalizado no sistema # Criar card de CRM Source: https://docs.jurichat.com/api-reference/crm/criar-card-de-crm https://api.jurichat.com/docs/client/openapi.json post /funnel-column-card/ Cria um novo card em uma etapa do funil de CRM, vinculando um contato existente. # Criar coluna do funil Source: https://docs.jurichat.com/api-reference/crm/criar-coluna-do-funil https://api.jurichat.com/docs/client/openapi.json post /funnel-column/ Cria uma nova coluna do funil no sistema # Criar funil Source: https://docs.jurichat.com/api-reference/crm/criar-funil https://api.jurichat.com/docs/client/openapi.json post /funnel/ Cria um novo funil de vendas # Deletar coluna do funil Source: https://docs.jurichat.com/api-reference/crm/deletar-coluna-do-funil https://api.jurichat.com/docs/client/openapi.json delete /funnel-column/ Remove uma ou mais colunas do funil existentes # Excluir campo personalizado Source: https://docs.jurichat.com/api-reference/crm/excluir-campo-personalizado https://api.jurichat.com/docs/client/openapi.json delete /funnel-custom-field/{id} Remove um campo personalizado existente # Excluir cards de CRM Source: https://docs.jurichat.com/api-reference/crm/excluir-cards-de-crm https://api.jurichat.com/docs/client/openapi.json delete /funnel-column-card/ Remove um ou mais cards do funil de CRM pelos IDs informados. # Excluir funil Source: https://docs.jurichat.com/api-reference/crm/excluir-funil https://api.jurichat.com/docs/client/openapi.json delete /funnel/{id} Remove um funil existente # Gerar dados do relatório do funil Source: https://docs.jurichat.com/api-reference/crm/gerar-dados-do-relatório-do-funil https://api.jurichat.com/docs/client/openapi.json get /funnel-column/report Retorna os dados filtrados do funil de CRM usados nos relatórios em PDF e Excel. # Listar cards de CRM Source: https://docs.jurichat.com/api-reference/crm/listar-cards-de-crm https://api.jurichat.com/docs/client/openapi.json get /funnel-column-card/ Lista os cards de uma etapa do funil de CRM com filtro por contato e paginação. # Listar colunas do funil Source: https://docs.jurichat.com/api-reference/crm/listar-colunas-do-funil https://api.jurichat.com/docs/client/openapi.json get /funnel-column/ Lista as colunas do funil. # Listar funis Source: https://docs.jurichat.com/api-reference/crm/listar-funis https://api.jurichat.com/docs/client/openapi.json get /funnel/ Lista todos os funis do escritório. # Mover cards em lote Source: https://docs.jurichat.com/api-reference/crm/mover-cards-em-lote https://api.jurichat.com/docs/client/openapi.json post /funnel-column-card/migrate Move cards entre etapas do funil de CRM. Envie `cardIds` para mover cards específicos, ou `sourceColumnId` para mover todos os cards de uma etapa. Não é possível usar os dois ao mesmo tempo. # Obter card de CRM Source: https://docs.jurichat.com/api-reference/crm/obter-card-de-crm https://api.jurichat.com/docs/client/openapi.json get /funnel-column-card/{id} Retorna os dados completos de um card pelo ID, incluindo contato, responsável, campos personalizados e tags. # Obter card de CRM por contato e conversa Source: https://docs.jurichat.com/api-reference/crm/obter-card-de-crm-por-contato-e-conversa https://api.jurichat.com/docs/client/openapi.json get /funnel-column-card/person/{personId}/conversation/{conversationId} Retorna o card de CRM vinculado ao contato na conversa informada. O funil é identificado automaticamente a partir da integração da conversa. # Obter coluna do funil Source: https://docs.jurichat.com/api-reference/crm/obter-coluna-do-funil https://api.jurichat.com/docs/client/openapi.json get /funnel-column/{id} Busca uma coluna de funil específica pelo ID # Obter configuração dos cards do CRM Source: https://docs.jurichat.com/api-reference/crm/obter-configuração-dos-cards-do-crm https://api.jurichat.com/docs/client/openapi.json get /user/crm-card-config Retorna os campos exibidos nos cards do CRM para o usuário autenticado. # Obter funil Source: https://docs.jurichat.com/api-reference/crm/obter-funil https://api.jurichat.com/docs/client/openapi.json get /funnel/{id} Busca um funil específico pelo ID # Obter todos os campos personalizados Source: https://docs.jurichat.com/api-reference/crm/obter-todos-os-campos-personalizados https://api.jurichat.com/docs/client/openapi.json get /funnel-custom-field/ Obtém todos os campos personalizados de um funil. # Atualizar departamento Source: https://docs.jurichat.com/api-reference/departments/atualizar-departamento https://api.jurichat.com/docs/client/openapi.json patch /departments/{id} Atualiza um departamento existente. # Criar departamento Source: https://docs.jurichat.com/api-reference/departments/criar-departamento https://api.jurichat.com/docs/client/openapi.json post /departments/ Cria um departamento no escritório. # Excluir departamento Source: https://docs.jurichat.com/api-reference/departments/excluir-departamento https://api.jurichat.com/docs/client/openapi.json delete /departments/{id} Remove um departamento pelo ID. # Listar departamentos Source: https://docs.jurichat.com/api-reference/departments/listar-departamentos https://api.jurichat.com/docs/client/openapi.json get /departments/ Lista os departamentos do escritório. # Atualizar mensagem rápida Source: https://docs.jurichat.com/api-reference/fastmessages/atualizar-mensagem-rápida https://api.jurichat.com/docs/client/openapi.json patch /fast-message/{id} Atualização parcial: apenas os campos enviados são modificados. Trocar de `type` limpa o conteúdo do tipo anterior. # Criar mensagem rápida Source: https://docs.jurichat.com/api-reference/fastmessages/criar-mensagem-rápida https://api.jurichat.com/docs/client/openapi.json post /fast-message/ Cria uma mensagem rápida vinculada à inbox informada. `type: TEXT` usa `content`; `type: AUDIO` usa `metadata`; `IMAGE` e `VIDEO` usam `metadata` e aceitam `content` como legenda. # Disparar resposta rápida em sequência Source: https://docs.jurichat.com/api-reference/fastmessages/disparar-resposta-rápida-em-sequência https://api.jurichat.com/docs/client/openapi.json post /fast-message/{id}/send Envia a sequência na conversa informada. O primeiro bloco sai antes da resposta, então falha de canal volta aqui; os demais seguem em segundo plano, no ritmo definido em cada bloco. # Enviar imagem ou vídeo de mensagem rápida Source: https://docs.jurichat.com/api-reference/fastmessages/enviar-imagem-ou-vídeo-de-mensagem-rápida https://api.jurichat.com/docs/client/openapi.json post /fast-message/media Sobe a mídia (`multipart/form-data` com `file`, `inboxId` e `type`) e devolve o caminho no storage. # Enviar várias respostas rápidas em sequência Source: https://docs.jurichat.com/api-reference/fastmessages/enviar-várias-respostas-rápidas-em-sequência https://api.jurichat.com/docs/client/openapi.json post /fast-message/send-batch Envia as respostas rápidas escolhidas, uma após a outra, na ordem informada. A primeira sai antes da resposta, então falha de canal volta aqui. O ritmo é o automático do provedor: para ritmo próprio, use uma resposta rápida do tipo `SEQUENCE`. # Enviar áudio de mensagem rápida Source: https://docs.jurichat.com/api-reference/fastmessages/enviar-áudio-de-mensagem-rápida https://api.jurichat.com/docs/client/openapi.json post /fast-message/audio Sobe o áudio da mensagem rápida (`multipart/form-data` com `file` e `inboxId`) e devolve o caminho no storage para usar em `audioUrl` na criação ou atualização. # Excluir mensagem rápida Source: https://docs.jurichat.com/api-reference/fastmessages/excluir-mensagem-rápida https://api.jurichat.com/docs/client/openapi.json delete /fast-message/{id} Remove a mensagem rápida pelo ID. Retorna 204 sem corpo em caso de sucesso. # Listar mensagens rápidas Source: https://docs.jurichat.com/api-reference/fastmessages/listar-mensagens-rápidas https://api.jurichat.com/docs/client/openapi.json get /fast-message/ Lista as mensagens rápidas da inbox. Filtros opcionais por título e tags. # Atualizar fluxo Source: https://docs.jurichat.com/api-reference/flow/atualizar-fluxo https://api.jurichat.com/docs/client/openapi.json patch /flow/{id} Atualiza um fluxo existente. # Criar fluxo Source: https://docs.jurichat.com/api-reference/flow/criar-fluxo https://api.jurichat.com/docs/client/openapi.json post /flow/ Cria um novo fluxo. # Excluir fluxo Source: https://docs.jurichat.com/api-reference/flow/excluir-fluxo https://api.jurichat.com/docs/client/openapi.json delete /flow/{id} Remove um fluxo existente. # Listar fluxos Source: https://docs.jurichat.com/api-reference/flow/listar-fluxos https://api.jurichat.com/docs/client/openapi.json get /flow/ Lista os fluxos de uma inbox. # Listar mídias do fluxo Source: https://docs.jurichat.com/api-reference/flow/listar-mídias-do-fluxo https://api.jurichat.com/docs/client/openapi.json get /flow/{flowId}/medias Retorna os arquivos de áudio e documento enviados para o fluxo. # Obter fluxo Source: https://docs.jurichat.com/api-reference/flow/obter-fluxo https://api.jurichat.com/docs/client/openapi.json get /flow/{id} Retorna um fluxo pelo ID. # Desconectar o Google Agenda Source: https://docs.jurichat.com/api-reference/googlecalendar/desconectar-o-google-agenda https://api.jurichat.com/docs/client/openapi.json delete /integration/google-calendar Marca a integração como desconectada e **apaga** o refresh token. Não revoga o acesso do lado do Google — isso é feito na conta do usuário. # Estado da conexão com o Google Agenda Source: https://docs.jurichat.com/api-reference/googlecalendar/estado-da-conexão-com-o-google-agenda https://api.jurichat.com/docs/client/openapi.json get /integration/google-calendar # Gerar a URL de consentimento do Google Agenda Source: https://docs.jurichat.com/api-reference/googlecalendar/gerar-a-url-de-consentimento-do-google-agenda https://api.jurichat.com/docs/client/openapi.json get /integration/google-calendar/auth-url Devolve a URL para onde o escritório deve ser enviado para autorizar o acesso à agenda. O `state` já vai assinado. # Obter dashboard do atendente Source: https://docs.jurichat.com/api-reference/home/obter-dashboard-do-atendente https://api.jurichat.com/docs/client/openapi.json get /homepage-v2/get-attendant-dashboard Retorna as métricas do dashboard do atendente. # Obter dashboard do gestor Source: https://docs.jurichat.com/api-reference/home/obter-dashboard-do-gestor https://api.jurichat.com/docs/client/openapi.json get /homepage-v2/get-manager-dashboard Retorna as métricas agregadas do dashboard do gestor. # Obter mapa de clientes por estado Source: https://docs.jurichat.com/api-reference/home/obter-mapa-de-clientes-por-estado https://api.jurichat.com/docs/client/openapi.json get /homepage-v2/get-clients-map Distribuição geográfica das conversas da inbox por UF, derivada do DDD do telefone do contato. Não é afetado por filtro de período. # Transcrever e resumir áudio da conversa Source: https://docs.jurichat.com/api-reference/ia-process/transcrever-e-resumir-áudio-da-conversa https://api.jurichat.com/docs/client/openapi.json get /ia-process/resume-audio-message/{id} Transcreve uma mensagem `audio` ou `myaudio` e devolve transcrição + resumo HTML. Se já existir no metadata, reutiliza sem novo débito. Requer créditos de IA quando processa de fato. # Atualizar inbox Source: https://docs.jurichat.com/api-reference/inboxes/atualizar-inbox https://api.jurichat.com/docs/client/openapi.json put /inbox/{id} Atualiza uma caixa de entrada existente # Criar inbox Source: https://docs.jurichat.com/api-reference/inboxes/criar-inbox https://api.jurichat.com/docs/client/openapi.json post /inbox/ Cria uma nova caixa de entrada # Excluir inbox Source: https://docs.jurichat.com/api-reference/inboxes/excluir-inbox https://api.jurichat.com/docs/client/openapi.json delete /inbox/{id} Remove uma caixa de entrada existente # Listar inboxes Source: https://docs.jurichat.com/api-reference/inboxes/listar-inboxes https://api.jurichat.com/docs/client/openapi.json get /inbox/ Lista todas as inboxes do escritório. Filtros opcionais por nome e integração. # Obter inbox Source: https://docs.jurichat.com/api-reference/inboxes/obter-inbox https://api.jurichat.com/docs/client/openapi.json get /inbox/{id} Retorna os dados de uma inbox pelo ID. # Buscar pessoas no Juridiq para vincular ao contato Source: https://docs.jurichat.com/api-reference/integration/buscar-pessoas-no-juridiq-para-vincular-ao-contato https://api.jurichat.com/docs/client/openapi.json get /integration/juridiq/contacts/{contactId}/persons Busca pessoas (fichas de cliente) no Juridiq por nome, CPF/CNPJ ou telefone. É de onde sai o `personId` usado para criar o vínculo. Paginação por cursor. # Consultar vínculo do contato com o Juridiq Source: https://docs.jurichat.com/api-reference/integration/consultar-vínculo-do-contato-com-o-juridiq https://api.jurichat.com/docs/client/openapi.json get /integration/juridiq/contacts/{contactId}/link Retorna a pessoa do Juridiq vinculada ao contato do Jurichat, quando existe. Exige integração com o Juridiq ativa no escritório (409 quando inativa). # Delete integration Source: https://docs.jurichat.com/api-reference/integration/delete-integration https://api.jurichat.com/docs/client/openapi.json delete /integration/{integrationId} Delete integration # Desvincular contato do Jurichat da pessoa do Juridiq Source: https://docs.jurichat.com/api-reference/integration/desvincular-contato-do-jurichat-da-pessoa-do-juridiq https://api.jurichat.com/docs/client/openapi.json delete /integration/juridiq/contacts/{contactId}/link/{linkId} Remove apenas o vínculo identificado por `linkId`. Os dois cadastros e os arquivos já enviados são preservados. Exige `edit:customer`. # Enviar lembrete de audiência Source: https://docs.jurichat.com/api-reference/integration/enviar-lembrete-de-audiência https://api.jurichat.com/docs/client/openapi.json post /integration/juridiq/audience-reminder Envia um lembrete de audiência pelo aparelho indicado, criando ou reaproveitando o contato e a conversa. No WhatsApp Oficial exige `templateName`. Idempotente por `idempotencyKey`. # Listar aparelhos de WhatsApp do escritório Source: https://docs.jurichat.com/api-reference/integration/listar-aparelhos-de-whatsapp-do-escritório https://api.jurichat.com/docs/client/openapi.json get /integration/whatsapp-devices Lista as conexões LITE_WHATSAPP do escritório, incluindo as desconectadas. Usado pelo Juridiq para escolher por qual aparelho os lembretes de audiência saem. WhatsApp Oficial fica de fora da listagem até o Juridiq suportar seleção de template; o POST audience-reminder e o GET de templates já aceitam Oficial. # Listar integrações Source: https://docs.jurichat.com/api-reference/integration/listar-integrações https://api.jurichat.com/docs/client/openapi.json get /integration/ Lista as integrações de uma inbox. Filtro opcional por canal. # Listar templates WhatsApp Oficial do aparelho Source: https://docs.jurichat.com/api-reference/integration/listar-templates-whatsapp-oficial-do-aparelho https://api.jurichat.com/docs/client/openapi.json get /integration/juridiq/whatsapp-templates Lista templates APPROVED (por padrão) da integração WhatsApp Oficial indicada por `deviceId`. Escopo pelo escritório do portador da API key. # Obter integração Source: https://docs.jurichat.com/api-reference/integration/obter-integração https://api.jurichat.com/docs/client/openapi.json get /integration/{integrationId} Retorna os dados de uma integração pelo ID. O `inboxId` é obrigatório para garantir que a integração pertence à inbox informada. # Update integration Source: https://docs.jurichat.com/api-reference/integration/update-integration https://api.jurichat.com/docs/client/openapi.json patch /integration/{integrationId} Update integration # Vincular contato do Jurichat a pessoa do Juridiq Source: https://docs.jurichat.com/api-reference/integration/vincular-contato-do-jurichat-a-pessoa-do-juridiq https://api.jurichat.com/docs/client/openapi.json post /integration/juridiq/contacts/{contactId}/link Cria o vínculo entre o contato do Jurichat e a pessoa do Juridiq, com origem `MANUAL`. Um contato tem no máximo uma pessoa por integração: repetir o mesmo par é idempotente, trocar por outra pessoa retorna 409 — desvincule antes. Exige `edit:customer` e acesso do usuário à inbox do contato. # Introdução Source: https://docs.jurichat.com/api-reference/introduction Referência completa dos endpoints da API do JuriChat. # API Reference A API do JuriChat é organizada em endpoints REST e utiliza JSON para requisições e respostas. Nesta seção você encontrará todos os endpoints disponíveis da plataforma, incluindo exemplos de requisição, parâmetros, respostas e possíveis erros. Todos os endpoints autenticados exigem o header `x-jurichat-api-key`. ## Base URL ```bash theme={null} https://api.jurichat.com ``` ## Como utilizar a referência Navegue pelas categorias disponíveis na barra lateral. Veja quais campos são obrigatórios e opcionais. Utilize os exemplos disponíveis em diferentes linguagens. Consulte exemplos de retorno e possíveis erros. ## Alguns Recursos disponíveis Gerenciamento de usuários e autenticação. Cadastro e gerenciamento de contatos. Operações relacionadas a mensagens e atendimentos. Configuração e gerenciamento de eventos. Fluxos automatizados e integrações. Recursos inteligentes da plataforma. ## Autenticação Exemplo de envio da API Key: ```http theme={null} x-jurichat-api-key: SUA_API_KEY ``` Nunca exponha sua API Key no frontend ou em aplicações públicas. # Atualizar área jurídica Source: https://docs.jurichat.com/api-reference/legal-areas/atualizar-área-jurídica https://api.jurichat.com/docs/client/openapi.json patch /legal-areas/{id} Atualiza uma área jurídica existente. # Criar área jurídica Source: https://docs.jurichat.com/api-reference/legal-areas/criar-área-jurídica https://api.jurichat.com/docs/client/openapi.json post /legal-areas/ Cria uma área jurídica no escritório. # Excluir área jurídica Source: https://docs.jurichat.com/api-reference/legal-areas/excluir-área-jurídica https://api.jurichat.com/docs/client/openapi.json delete /legal-areas/{id} Remove uma área jurídica pelo ID. # Listar áreas jurídicas Source: https://docs.jurichat.com/api-reference/legal-areas/listar-áreas-jurídicas https://api.jurichat.com/docs/client/openapi.json get /legal-areas/ Lista as áreas jurídicas do escritório. # Atualizar escritório Source: https://docs.jurichat.com/api-reference/office/atualizar-escritório https://api.jurichat.com/docs/client/openapi.json patch /office/{id} Atualiza os dados do escritório. # Obter escritório Source: https://docs.jurichat.com/api-reference/office/obter-escritório https://api.jurichat.com/docs/client/openapi.json get /office/{id} Retorna os dados do escritório pelo ID, incluindo saldo de créditos por módulo. # Atualizar papel Source: https://docs.jurichat.com/api-reference/roles/atualizar-papel https://api.jurichat.com/docs/client/openapi.json put /user-roles/{id} Atualiza um papel existente. # Criar papel Source: https://docs.jurichat.com/api-reference/roles/criar-papel https://api.jurichat.com/docs/client/openapi.json post /user-roles/ Cria um novo papel. # Excluir papel Source: https://docs.jurichat.com/api-reference/roles/excluir-papel https://api.jurichat.com/docs/client/openapi.json delete /user-roles/{id} Remove um papel pelo ID. # Listar papéis Source: https://docs.jurichat.com/api-reference/roles/listar-papéis https://api.jurichat.com/docs/client/openapi.json get /user-roles/ Lista os papéis do escritório. # Listar permissões Source: https://docs.jurichat.com/api-reference/roles/listar-permissões https://api.jurichat.com/docs/client/openapi.json get /user-roles/permissions Lista todas as permissões disponíveis. # Obter papel Source: https://docs.jurichat.com/api-reference/roles/obter-papel https://api.jurichat.com/docs/client/openapi.json get /user-roles/{id} Retorna um papel pelo ID. # Agendar mensagem Source: https://docs.jurichat.com/api-reference/scheduledmessages/agendar-mensagem https://api.jurichat.com/docs/client/openapi.json post /scheduled-message/ Agenda uma mensagem para envio futuro. O body deve ser enviado como `multipart/form-data`. Em integrações WhatsApp Oficial, use `type: template` com `templateName` e variáveis. # Atualizar mensagem agendada Source: https://docs.jurichat.com/api-reference/scheduledmessages/atualizar-mensagem-agendada https://api.jurichat.com/docs/client/openapi.json patch /scheduled-message/{scheduledMessageId} Atualiza um agendamento com status pendente. Apenas os campos enviados são modificados. O body deve ser enviado como `multipart/form-data`. # Cancelar mensagem agendada Source: https://docs.jurichat.com/api-reference/scheduledmessages/cancelar-mensagem-agendada https://api.jurichat.com/docs/client/openapi.json patch /scheduled-message/{scheduledMessageId}/cancel Cancela um agendamento pendente. O registro é mantido com status `CANCELLED`. # Excluir mensagem agendada Source: https://docs.jurichat.com/api-reference/scheduledmessages/excluir-mensagem-agendada https://api.jurichat.com/docs/client/openapi.json delete /scheduled-message/{scheduledMessageId} Remove um agendamento (tipicamente em estado `PENDING`). # Listar mensagens agendadas Source: https://docs.jurichat.com/api-reference/scheduledmessages/listar-mensagens-agendadas https://api.jurichat.com/docs/client/openapi.json get /scheduled-message/ Lista mensagens agendadas com filtros por conversa, inbox e status. `page` padrão 1, `limit` padrão 20. `counters` totaliza por status sobre todos os registros visíveis — não muda com a página nem com o filtro `status`. # Atualizar tag Source: https://docs.jurichat.com/api-reference/tags/atualizar-tag https://api.jurichat.com/docs/client/openapi.json patch /tag/{id} Atualização parcial de nome, cor e/ou módulos de visibilidade da tag. # Criar tag Source: https://docs.jurichat.com/api-reference/tags/criar-tag https://api.jurichat.com/docs/client/openapi.json post /tag/ Cria uma tag vinculada à inbox informada, com cor e visibilidade por módulos. # Excluir tag Source: https://docs.jurichat.com/api-reference/tags/excluir-tag https://api.jurichat.com/docs/client/openapi.json delete /tag/{id} Remove a tag pelo ID. Retorna 204 sem corpo em caso de sucesso. # Listar tags Source: https://docs.jurichat.com/api-reference/tags/listar-tags https://api.jurichat.com/docs/client/openapi.json get /tag/ Retorna todas as tags vinculadas à inbox informada, com módulos de visibilidade e cor. # Obter tag Source: https://docs.jurichat.com/api-reference/tags/obter-tag https://api.jurichat.com/docs/client/openapi.json get /tag/{id} Retorna os dados de uma tag pelo ID. # Unificar etiquetas Source: https://docs.jurichat.com/api-reference/tags/unificar-etiquetas https://api.jurichat.com/docs/client/openapi.json post /tag/merge Une uma ou mais etiquetas de origem em uma etiqueta de destino, reatribuindo todos os vínculos (conversas, pessoas, cards do CRM, respostas rápidas e regras de agente) e removendo as etiquetas de origem. # Atualizar template de WhatsApp Source: https://docs.jurichat.com/api-reference/templates/atualizar-template-de-whatsapp https://api.jurichat.com/docs/client/openapi.json patch /integration/templates/{integrationId}/{templateId} Altera os componentes de um template existente. Nome, categoria e idioma não podem ser alterados — para mudá-los, crie um novo template. Toda edição envia o template para nova análise da Meta. # Criar template de WhatsApp Source: https://docs.jurichat.com/api-reference/templates/criar-template-de-whatsapp https://api.jurichat.com/docs/client/openapi.json post /integration/templates/{integrationId} Submete um novo template à aprovação da Meta. A análise não é instantânea: o template nasce com status `PENDING` e só pode ser enviado após virar `APPROVED`. Cabeçalhos de mídia exigem o handle devolvido por `POST /integration/templates/{integrationId}/media` em `example.header_handle`. # Enviar mídia do cabeçalho de template Source: https://docs.jurichat.com/api-reference/templates/enviar-mídia-do-cabeçalho-de-template https://api.jurichat.com/docs/client/openapi.json post /integration/templates/{integrationId}/media Faz upload de uma mídia para a Meta e devolve o handle usado em cabeçalhos IMAGE, VIDEO ou DOCUMENT. Envie como `multipart/form-data` com os campos `file` (arquivo) e `type` (image, video ou document). O handle é obrigatório ao criar um template com cabeçalho de mídia. # Excluir template de WhatsApp Source: https://docs.jurichat.com/api-reference/templates/excluir-template-de-whatsapp https://api.jurichat.com/docs/client/openapi.json delete /integration/templates/{integrationId}/{templateName} Remove o template da WABA pelo nome. A exclusão é definitiva e apaga todas as versões de idioma registradas sob esse nome. Mensagens já enviadas não são afetadas. # Listar templates de WhatsApp Source: https://docs.jurichat.com/api-reference/templates/listar-templates-de-whatsapp https://api.jurichat.com/docs/client/openapi.json get /integration/templates/{integrationId} Retorna os templates de mensagem cadastrados na WABA vinculada à integração. Apenas templates com status `APPROVED` podem ser enviados em conversas. # Atualizar status de ticket Source: https://docs.jurichat.com/api-reference/ticket-statuses/atualizar-status-de-ticket https://api.jurichat.com/docs/client/openapi.json patch /ticket-statuses/{id} Atualiza um status de ticket existente. # Criar status de ticket Source: https://docs.jurichat.com/api-reference/ticket-statuses/criar-status-de-ticket https://api.jurichat.com/docs/client/openapi.json post /ticket-statuses/ Cria um status personalizado para tickets do escritório. # Excluir status de ticket Source: https://docs.jurichat.com/api-reference/ticket-statuses/excluir-status-de-ticket https://api.jurichat.com/docs/client/openapi.json delete /ticket-statuses/{id} Remove um status de ticket pelo ID. # Listar status de tickets Source: https://docs.jurichat.com/api-reference/ticket-statuses/listar-status-de-tickets https://api.jurichat.com/docs/client/openapi.json get /ticket-statuses/ Lista os status de tickets do escritório. # Reordenar status de tickets Source: https://docs.jurichat.com/api-reference/ticket-statuses/reordenar-status-de-tickets https://api.jurichat.com/docs/client/openapi.json put /ticket-statuses/reorder Define a ordem dos status no board de tickets. # Adicionar atualização ao ticket Source: https://docs.jurichat.com/api-reference/tickets/adicionar-atualização-ao-ticket https://api.jurichat.com/docs/client/openapi.json post /tickets/{id}/updates Adiciona um comentário ou anexo ao ticket. Integrações (API key / MCP) devem enviar `application/json` com `content`. A UI pode enviar `multipart/form-data` quando houver arquivos. # Atualizar ticket Source: https://docs.jurichat.com/api-reference/tickets/atualizar-ticket https://api.jurichat.com/docs/client/openapi.json patch /tickets/{id} Atualiza um ticket pelo ID ou código (TKT-0001). Integrações (API key / MCP) devem enviar `application/json`. A UI pode enviar `multipart/form-data` quando houver arquivos. # Criar ticket Source: https://docs.jurichat.com/api-reference/tickets/criar-ticket https://api.jurichat.com/docs/client/openapi.json post /tickets/ Cria um ticket. Integrações (API key / MCP) devem enviar `application/json`. A UI pode enviar `multipart/form-data` quando houver arquivos. # Excluir ticket Source: https://docs.jurichat.com/api-reference/tickets/excluir-ticket https://api.jurichat.com/docs/client/openapi.json delete /tickets/{id} Remove um ticket pelo ID ou código (TKT-0001). # Indicadores de tickets Source: https://docs.jurichat.com/api-reference/tickets/indicadores-de-tickets https://api.jurichat.com/docs/client/openapi.json get /tickets/indicators Retorna indicadores e séries temporais de tickets no período. # Listar tickets Source: https://docs.jurichat.com/api-reference/tickets/listar-tickets https://api.jurichat.com/docs/client/openapi.json get /tickets/ Lista os tickets do escritório com filtros e paginação. # Obter board de tickets Source: https://docs.jurichat.com/api-reference/tickets/obter-board-de-tickets https://api.jurichat.com/docs/client/openapi.json get /tickets/board Retorna o board kanban de tickets agrupado por status. # Obter ticket Source: https://docs.jurichat.com/api-reference/tickets/obter-ticket https://api.jurichat.com/docs/client/openapi.json get /tickets/{id} Retorna um ticket pelo ID ou código (TKT-0001). # Sugerir ticket a partir da conversa Source: https://docs.jurichat.com/api-reference/tickets/sugerir-ticket-a-partir-da-conversa https://api.jurichat.com/docs/client/openapi.json post /tickets/suggest-from-conversation Analisa o histórico de um dia da conversa com Claude Sonnet 5 e devolve um rascunho de ticket para o atendente revisar. **Não cria o ticket** — a criação continua sendo `POST /tickets`. Consome 10 créditos de IA do escritório, debitados só após a resposta do modelo. # Webhooks Source: https://docs.jurichat.com/api-reference/untitled-page Os webhooks permitem que sua aplicação receba notificações automáticas sempre que eventos importantes acontecerem dentro do JuriChat. Com eles, você pode integrar CRMs, automações, ERPs, planilhas, bots e sistemas internos em tempo real. Os endpoints relacionados à criação e gerenciamento de webhooks estão disponíveis em API Reference. *** ## Como funciona Quando um evento configurado acontece, o JuriChat envia uma requisição `POST` para a URL configurada por você. O payload é enviado em formato JSON contendo os dados do evento. Um evento é disparado dentro do JuriChat. O JuriChat envia uma requisição POST para sua URL. Sua aplicação recebe e processa o payload enviado. Sua API responde com qualquer status HTTP 2xx. *** ## Requisitos da sua aplicação Para garantir o funcionamento correto dos webhooks: Utilize HTTPS para receber eventos com segurança. Seu endpoint deve responder em até 30 segundos. Retorne qualquer status HTTP 2xx para confirmar o recebimento. Sua aplicação deve aceitar payloads JSON. *** ## Cabeçalhos enviados Cada webhook enviado pelo JuriChat contém os seguintes cabeçalhos: | Header | Descrição | | ---------------------- | ------------------------------------------------ | | `X-JuriChat-Event` | Nome do evento | | `X-JuriChat-Signature` | Assinatura HMAC-SHA256 do payload | | `X-JuriChat-Delivery` | Identificador único da entrega | | `X-JuriChat-Timestamp` | Data e hora da tentativa em formato ISO 8601 UTC | | `Content-Type` | Sempre `application/json` | *** ## Assinatura Todos os webhooks são assinados utilizando **HMAC-SHA256** para permitir a verificação de autenticidade da requisição. A assinatura é calculada **exclusivamente sobre o body bruto (raw body)** da requisição, utilizando o segredo do webhook. O valor enviado no header `X-JuriChat-Signature` possui o formato: ```text theme={null} sha256= ``` **Importante:** * Apenas o **body bruto** participa do cálculo da assinatura. * Headers como `X-JuriChat-Timestamp` e `X-JuriChat-Delivery` **não fazem parte da assinatura**. * Alterações no JSON (espaços, formatação ou reserialização) podem invalidar a verificação. *** ## Timestamp O header `X-JuriChat-Timestamp` informa o momento em que aquela tentativa de entrega foi realizada. O valor é enviado no padrão **ISO 8601 em UTC**. Exemplo: ```text theme={null} 2026-08-06T14:36:00.123Z ``` *** ## Proteção contra replay O JuriChat **não define uma janela oficial de validade** para o timestamp enviado. Caso sua aplicação deseje evitar processamentos duplicados, recomendamos utilizar o valor do header `X-JuriChat-Delivery` como chave de idempotência, garantindo que cada entrega seja processada apenas uma vez. *** ## Campos do evento Todos os eventos seguem a estrutura abaixo: ```json theme={null} { "event": "chat.message.received", "timestamp": "2026-08-06T14:36:00.123Z", "data": {} } ``` Cada tipo de evento possui seu próprio objeto `data`. **Importante:** Os payloads **não incluem**: * Informações do canal de origem; * Lista de anexos; * Objetos completos e aninhados de conversa; * Objetos completos e aninhados de contato. Os eventos enviam apenas os campos necessários para identificar e processar a ocorrência. *** ## Exemplo de payload ```json theme={null} { "event": "chat.message.received", "timestamp": "2026-08-06T14:36:00.123Z", "data": { "messageId": "...", "conversationId": "...", "personId": "...", "personName": "Maria Silva", "personPhone": "+5511999990000", "inboxId": "...", "inboxName": "Atendimento Principal", "content": "Olá, preciso de ajuda", "type": "text" } } ``` *** ## Política de retry Caso sua aplicação não responda com um status HTTP `2xx`, o JuriChat tentará reenviar automaticamente o webhook. São realizadas **até 3 tentativas no total** (incluindo a tentativa inicial), utilizando o backoff configurado pelo sistema. Após a última tentativa, a entrega será marcada como falha e não haverá novos reenvios automáticos. # Atualizar usuário Source: https://docs.jurichat.com/api-reference/users/atualizar-usuário https://api.jurichat.com/docs/client/openapi.json patch /user/{id} Atualização parcial: apenas os campos enviados são modificados. Enviar `inboxId` substitui as inboxes do usuário. # Criar usuário Source: https://docs.jurichat.com/api-reference/users/criar-usuário https://api.jurichat.com/docs/client/openapi.json post /user/ Cria operador no escritório com papel, senha e vínculo a uma ou mais inboxes. Conflito de e-mail: 409. # Enviar foto de perfil do usuário Source: https://docs.jurichat.com/api-reference/users/enviar-foto-de-perfil-do-usuário https://api.jurichat.com/docs/client/openapi.json post /user/{id}/avatar Recebe a imagem em multipart (campo `file`), aceita JPG, PNG ou WEBP de até 10MB e substitui a foto anterior. O próprio usuário pode alterar a sua; alterar a de outro exige perfil Gestor ou a permissão `view:teams`. # Excluir usuário Source: https://docs.jurichat.com/api-reference/users/excluir-usuário https://api.jurichat.com/docs/client/openapi.json delete /user/{id} Remove permanentemente o usuário. Pode afetar dados vinculados como conversas e inboxes. # Listar usuários Source: https://docs.jurichat.com/api-reference/users/listar-usuários https://api.jurichat.com/docs/client/openapi.json get /user/ Lista todos os usuários do escritório do solicitante, com busca por nome ou e-mail e filtro por papel. Informe `inboxId` para filtrar por uma inbox (workspace) específica. Use `page` e `limit` para paginar. # Obter usuário Source: https://docs.jurichat.com/api-reference/users/obter-usuário https://api.jurichat.com/docs/client/openapi.json get /user/{id} Retorna os dados de um usuário pelo ID, incluindo papel, escritório, inboxes e permissões ativas. # Remover foto de perfil do usuário Source: https://docs.jurichat.com/api-reference/users/remover-foto-de-perfil-do-usuário https://api.jurichat.com/docs/client/openapi.json delete /user/{id}/avatar Zera a foto de perfil e apaga o arquivo do storage. Idempotente: usuário sem foto responde 200. # Atualizar um webhook Source: https://docs.jurichat.com/api-reference/webhooks/atualizar-um-webhook https://api.jurichat.com/docs/client/openapi.json patch /webhooks/{webhookId} Atualiza parcialmente um webhook. Apenas os campos fornecidos são alterados. # Criar webhook Source: https://docs.jurichat.com/api-reference/webhooks/criar-webhook https://api.jurichat.com/docs/client/openapi.json post /webhooks/ Cria um novo endpoint de webhook. O response inclui um `secret` que você deve armazenar — ele é usado para verificar o header `X-JuriChat-Signature` em cada entrega. # Deletar webhook Source: https://docs.jurichat.com/api-reference/webhooks/deletar-webhook https://api.jurichat.com/docs/client/openapi.json delete /webhooks/{webhookId} Exclui permanentemente um webhook e o histórico associado de entregas. Esta ação não pode ser desfeita. # Enviar um evento de teste Source: https://docs.jurichat.com/api-reference/webhooks/enviar-um-evento-de-teste https://api.jurichat.com/docs/client/openapi.json post /webhooks/{webhookId}/test Envia um evento `webhook.test` sincronamente para a URL do webhook e retorna o resultado imediatamente. Use isso para verificar se seu endpoint está acessível e configurado corretamente. # Listar eventos disponíveis Source: https://docs.jurichat.com/api-reference/webhooks/listar-eventos-disponíveis https://api.jurichat.com/docs/client/openapi.json get /webhooks/events Retorna o catálogo completo de eventos disponíveis para inscrição, agrupados por domínio. Use o campo `name` de cada evento ao criar ou atualizar um webhook. # Listar histórico de entregas Source: https://docs.jurichat.com/api-reference/webhooks/listar-histórico-de-entregas https://api.jurichat.com/docs/client/openapi.json get /webhooks/{webhookId}/deliveries Retorna uma lista paginada de tentativas de entrega para um webhook, ordenada pela mais recente primeiro. Registros são mantidos por 90 dias. # Listar webhooks Source: https://docs.jurichat.com/api-reference/webhooks/listar-webhooks https://api.jurichat.com/docs/client/openapi.json get /webhooks/ Retorna todos os webhooks do escritório vinculado à autenticação (JWT ou chave de API), incluindo estatísticas de entrega (total, taxa de sucesso e falhas). # Obter um webhook Source: https://docs.jurichat.com/api-reference/webhooks/obter-um-webhook https://api.jurichat.com/docs/client/openapi.json get /webhooks/{webhookId} Retorna os detalhes completos de um webhook específico, incluindo seu segredo de autenticação. # Obter uma entrega Source: https://docs.jurichat.com/api-reference/webhooks/obter-uma-entrega https://api.jurichat.com/docs/client/openapi.json get /webhooks/{webhookId}/deliveries/{deliveryId} Retorna os detalhes completos de uma tentativa de entrega, incluindo o payload exato enviado e a resposta recebida. # Retentar uma entrega Source: https://docs.jurichat.com/api-reference/webhooks/retentar-uma-entrega https://api.jurichat.com/docs/client/openapi.json post /webhooks/deliveries/{deliveryId}/retry Reenfileira manualmente uma entrega com status `FAILED` ou `RETRYING`. Somente entregas nesses status podem ser reprocessadas. O status volta para `PENDING` e uma nova tentativa é agendada imediatamente. # Autenticação Source: https://docs.jurichat.com/autenticacao Como autenticar requisições na API do JuriChat. A API do JuriChat utiliza autenticação baseada em API Key. Para acessar endpoints protegidos, envie sua chave utilizando o header `x-jurichat-api-key` em todas as requisições. Cada API Key possui permissões vinculadas ao ambiente e à conta responsável pela integração. ## Header de autenticação ```http theme={null} x-jurichat-api-key: SUA_API_KEY ``` ## Exemplo de requisição ```bash theme={null} curl --request GET \ --url https://api.jurichat.com \ --header 'x-jurichat-api-key: SUA_API_KEY' ``` ```javascript theme={null} const response = await fetch("https://api.jurichat.com", { method: "GET", headers: { "x-jurichat-api-key": "SUA_API_KEY" } }) const data = await response.json() ``` ```javascript theme={null} import axios from "axios" const response = await axios.get( "https://api.jurichat.com", { headers: { "x-jurichat-api-key": "SUA_API_KEY" } } ) console.log(response.data) ``` ## Como obter sua API Key Entre na plataforma do JuriChat utilizando sua conta. Navegue até a área de integrações. Crie uma nova API Key para sua aplicação. Guarde sua chave em um ambiente seguro e nunca exponha no frontend. ## Exemplo de resposta autenticada ```json theme={null} { "data": { "id": "usr_123", "name": "John Doe", "email": "john@company.com" } } ``` ## Erros de autenticação ```json theme={null} { "message": "Acesso não autorizado", "statusCode": 401, "code": "UNAUTHORIZED" } ``` ```json theme={null} { "message": "API key inválida", "statusCode": 401, "code": "INVALID_API_KEY" } ``` ## Boas práticas Nunca salve sua API Key diretamente no código-fonte da aplicação. Requisições autenticadas devem ser feitas apenas pelo backend. Atualize periodicamente suas chaves de acesso. O compartilhamento indevido da sua API Key pode comprometer a segurança da sua integração. # Introdução Source: https://docs.jurichat.com/index Documentação oficial da API do JuriChat. # API do JuriChat Bem-vindo à documentação oficial da API do JuriChat. A API do JuriChat permite integrar funcionalidades da plataforma em aplicações web, mobile e serviços externos de forma simples, segura e escalável. Com ela, você pode automatizar fluxos jurídicos, gerenciar atendimentos, trabalhar com eventos em tempo real e utilizar recursos inteligentes integrados ao ecossistema da plataforma. Todas as requisições e respostas da API utilizam JSON e seguem os padrões HTTP convencionais. ## O que você encontrará nesta documentação Configure sua aplicação e faça sua primeira requisição. Aprenda como funcionam tokens e autenticação Bearer. Explore todos os endpoints disponíveis da API. Receba eventos e atualizações em tempo real. ## Recursos disponíveis Comunicação em tempo real. Gestão de conversas e fluxos. Controle de usuários e permissões. Recursos inteligentes aplicados ao contexto jurídico. Automação de processos e ações. Integrações orientadas a eventos. # Status Codes Source: https://docs.jurichat.com/status-code Códigos de status utilizados pela API. A API do JuriChat utiliza códigos HTTP convencionais para indicar o resultado das requisições. Requisição realizada com sucesso. Recurso criado com sucesso. A requisição enviada é inválida. Token inválido ou não enviado. Você não possui permissão para acessar este recurso. O recurso solicitado não foi encontrado. Limite de requisições excedido. Ocorreu um erro interno em nossos servidores.