API do FORSI Chat
A API do FORSI Chat é uma API REST para ligar o seu sistema ao atendimento por WhatsApp e Instagram: mande mensagens, leia conversas e contatos, mova negócios no funil, marque horários na agenda e receba cada evento por webhook assinado.
https://chat.forsi.com.br /api /v190 endpoints · 19 eventos de webhook · JSON, chave Bearer e OpenAPI 3.1
POST /mensagens · Enviar mensagem
curl -X POST "https://chat.forsi.com.br/api/v1/mensagens" \
-H "Authorization: Bearer $FORSI_CHAVE" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: pedido-4821" \
-d '{
"telefone": "+55 31 98888-7777",
"tipo": "texto",
"texto": "Olá! Sua consulta está confirmada para amanhã às 9h."
}'const resposta = await fetch('https://chat.forsi.com.br/api/v1/mensagens', {
method: 'POST',
headers: {
Authorization: `Bearer ${process.env.FORSI_CHAVE}`,
'Content-Type': 'application/json',
'Idempotency-Key': 'pedido-4821',
},
body: JSON.stringify({
"telefone": "+55 31 98888-7777",
"tipo": "texto",
"texto": "Olá! Sua consulta está confirmada para amanhã às 9h."
}),
});
const json = await resposta.json();
if (!resposta.ok) throw new Error(`${resposta.status} ${json.erro.codigo}: ${json.erro.mensagem}`);
console.log(json.dados);import os
import requests
resposta = requests.post(
"https://chat.forsi.com.br/api/v1/mensagens",
headers={
"Authorization": f"Bearer {os.environ['FORSI_CHAVE']}",
"Idempotency-Key": "pedido-4821",
},
json={
"telefone": "+55 31 98888-7777",
"tipo": "texto",
"texto": "Olá! Sua consulta está confirmada para amanhã às 9h.",
},
timeout=30,
)
corpo = resposta.json()
if not resposta.ok:
raise RuntimeError(f"{resposta.status_code} {corpo['erro']['codigo']}: {corpo['erro']['mensagem']}")
print(corpo["dados"])Comece aqui
O caminho da primeira chamada até receber eventos, na ordem.
Guias
Fluxos completos, com figura, passo a passo e a requisição inteira.
Referência da API
Cada recurso e cada endpoint têm página própria, com parâmetros, resposta, erros e exemplos.
- Conta1A organização, a chave usada e as caixas conectadas, numa chamada só.
- Webhooks9Cadastrar, editar, testar, trocar o segredo e ver as entregas dos webhooks.
- Mensagens4Enviar texto, mídia e modelos; ver status.
- Conversas3Listar conversas e ler mensagens.
- Contatos5Criar, buscar, editar e apagar contatos.
- Modelos1Modelos aprovados do WhatsApp.
- Funil e negócios21Funis, etapas, negócios e notas.
- Agenda17Agendas, horários livres, compromissos e bloqueios.
- Equipe e permissões16Pessoas, convites, equipes e atribuição de conversas.
- Automações do Instagram7Regras de comentário: palavra-chave, resposta pública e mensagem direta.
- Relatórios6Volume, tempo de resposta, equipe, caixas, IA e créditos.
Use com a sua IA
Toda página tem uma versão em Markdown (acrescente .md ao endereço). Para o assistente de código ler tudo de uma vez, use o llms-full.txt; para só o índice, o llms.txt.
Leia https://docs.forsi.com.br/llms-full.txt e construa uma integração com a API do FORSI Chat. Use a chave em uma variável de ambiente (FORSI_CHAVE), nunca no código nem no navegador; trate 429 esperando o Retry-After, use Idempotency-Key no envio de mensagens e confira a assinatura dos webhooks. Antes de escrever o código, me pergunte o que devo integrar.
Conceitos
Regras que valem para toda a API.
- Limites de usoRequisições por minuto, tamanho e cabeçalhos de limite.
- PaginaçãoListas com cursor.
- IdempotênciaRepetir com segurança com Idempotency-Key.
- Escopos e planosO que cada escopo libera e o que o plano precisa ter.
- Boas práticas de segurançaComo guardar chaves e receber webhooks com segurança.
- ChangelogO que mudou em cada versão.