DM Champ Docs

Introdução à API

A API REST do DM Champ permite que você crie sua própria integração com sua conta. Você pode criar e pesquisar contatos, gerenciar campanhas, FAQs, tarefas e agendamentos, enviar mensagens, registrar webhooks, ler análises e conectar canais de mensagens — tudo o que o painel faz, controlado por código.

Esta é a página central da documentação da API. Se você estiver conectando o DM Champ a uma ferramenta que já possui uma integração integrada, talvez você nem precise da API. A API é destinada a integrações personalizadas e automação em escala.

Nota: Estas páginas foram escritas para desenvolvedores. Se você não é um desenvolvedor, compartilhe esta seção com sua equipe técnica.


URL Base

Todas as solicitações vão para o mesmo endereço web base, e todos os caminhos nestes documentos são relativos a ele:

https://api.dmchamp.com/v1

Portanto, o endpoint de Agentes de IA é https://api.dmchamp.com/v1/agents, o endpoint de contatos é https://api.dmchamp.com/v1/contacts, e assim por diante.

Todas as solicitações devem usar uma conexão segura (HTTPS). Solicitações HTTP simples são rejeitadas.


Obtendo uma chave de API

O acesso à API é um recurso pago. Se o seu plano não o incluir, cada solicitação retornará um 403 com este corpo:

{
  "success": false,
  "error_code": 403,
  "error": "This action requires the \"api_access\" feature, which is not enabled for this account."
}

Assim que o acesso à API estiver habilitado em seu plano, gere uma chave a partir do painel. O passo a passo completo está em Acesso à API — em resumo: vá para Configurações → Integrações → Chave de API para gerar ou regenerar sua chave. A Chave de API é uma seção própria em Integrações, separada de Webhooks, e ela só aparece quando o acesso à API está habilitado em seu plano. Trate a chave como uma senha: ela concede acesso total à sua conta.


Autenticação

Você pode enviar sua chave de API de quatro maneiras. Todas funcionam em todos os endpoints que aceitam autenticação por chave de API.

Método Como Ideal para
Parâmetro de consulta ?apiKey=YOUR_API_KEY Testes rápidos, URLs de navegador, configurações legadas
Cabeçalho X-API-Key: YOUR_API_KEY Integrações de produção
Cabeçalho Bearer Authorization: Bearer YOUR_API_KEY Integrações de produção
Token de ID do Firebase Authorization: Bearer <ID token> Apenas sessões de aplicativos de primeira parte

Para produção, prefira uma das formas de cabeçalho para que sua chave nunca apareça em um log de servidor ou histórico do navegador. A forma de parâmetro de consulta sempre funciona e é a mais simples para um teste rápido.

Consulte Autenticação para uma análise completa de cada método, com exemplos e orientações sobre quando usar cada um.


Sua primeira solicitação

Aqui está uma chamada completa e funcional que lista os Agentes de IA em sua conta. Ela usa sua chave de API e retorna uma linha curta por Agente, com os mais recentes primeiro.

cURL

curl "https://api.dmchamp.com/v1/agents?apiKey=YOUR_API_KEY&view=summary"

JavaScript

const res = await fetch("https://api.dmchamp.com/v1/agents?view=summary", {
  headers: {
    "X-API-Key": "YOUR_API_KEY",
  },
});

const data = await res.json();
console.log(data.agents);

Python

import requests

res = requests.get(
    "https://api.dmchamp.com/v1/agents",
    params={"view": "summary"},
    headers={"X-API-Key": "YOUR_API_KEY"},
)

data = res.json()
print(data["agents"])

Uma resposta bem-sucedida tem esta aparência:

{
  "success": true,
  "campaigns": [
    {
      "id": "NBCXrhqGPSFsd6MV7pRo",
      "name": "Inbound WhatsApp Leads",
      "type": "Incoming from Unknown Contacts",
      "status": "Live",
      "enabled": true,
      "archived": false,
      "created_at": 1700000000000,
      "ai_mode": true,
      "language": "en",
      "enabled_channels": ["whatsapp", "instagram"]
    }
  ],
  "next_cursor": null
}

Respostas de sucesso e erro

Toda resposta JSON contém uma flag success para que você possa ramificar a lógica sem precisar analisar códigos de status.

Uma resposta bem-sucedida é success: true mais os dados para aquele endpoint (o nome do campo varia — campaigns, contacts, data, e assim por diante):

{
  "success": true,
  "campaigns": []
}

Uma resposta com falha é success: false com uma mensagem error legível por humanos e um error_code numérico que corresponde ao status HTTP:

{
  "success": false,
  "error": "Invalid cursor",
  "error_code": 400
}

Sempre verifique success (ou o status HTTP) antes de ler os dados. Consulte Erros e Paginação para ver a tabela completa de códigos de status e como paginar grandes conjuntos de resultados.


Limites de taxa

Requisições autenticadas são limitadas a 300 requisições por minuto por chave de API. Há também um limite mais amplo de 1.200 requisições por minuto por conta, contando cada requisição autenticada feita para essa conta.

Agências: o segundo número é o que deve ser usado para planejamento. As requisições que você faz com sua chave de agência são contabilizadas na sua conta de agência, mesmo quando direcionadas a uma subconta com sub_account_id, portanto, um pico de provisionamento em vários clientes compartilha um único orçamento. Se um cliente precisar de seu próprio orçamento, use a chave de API da própria subconta.

Se você exceder qualquer um dos limites, receberá uma resposta 429:

{
  "success": false,
  "error_code": 429,
  "error": "Rate limit exceeded. Please try again later."
}

Aguarde e tente novamente após um curto intervalo. Você também pode verificar seu uso atual a qualquer momento com GET https://api.dmchamp.com/v1/api-keys/usage, que retorna quantas requisições você usou na janela atual e quando ela será redefinida — útil para criar limitação de taxa (throttling) no lado do cliente. Consulte Chaves de API.


Guias de recursos

Os grupos de recursos abaixo possuem cada um seu próprio guia com os caminhos exatos, campos de solicitação e formatos de resposta.

Recurso O que cobre
Agentes de IA Crie e configure Agentes de IA: configurações, horário de funcionamento, conhecimento, regras de marcação, ferramentas, mídia e rascunhos
Pontos de Entrada Decida qual Agente de IA responde a uma nova conversa: padrões de canal, um Agente por número de WhatsApp, regras de palavra-chave, comentário e seguidor
Transmissões Crie, precifique, inicie, pause e duplique envios únicos para uma lista de contatos
Campanhas Crie, atualize, duplique, habilite, arquive e inspecione campanhas e suas configurações de bot
Contatos Crie, pesquise, liste, atualize, importe, marque e exclua contatos
FAQs Gerencie as entradas de perguntas e respostas que seu assistente de IA usa e vincule-as a campanhas
Base de Conhecimento Importe sites e documentos para o conhecimento da sua IA e agrupe FAQs em conjuntos
Tarefas Crie e gerencie tarefas de CRM, estágios de quadro e tipos de tarefa
Mensagens Envie mensagens de saída e leia o histórico de conversas
Agendamentos Agende, remarque, cancele e exclua agendamentos
Canais Conecte e desconecte canais de mensagens, compre números e defina qual Agente de IA responde a novas conversas em cada canal
Modelos Crie, envie e verifique o status de aprovação de modelos de mensagem do WhatsApp
Análise Leia estatísticas diárias de eventos de mensagens, uso de créditos e resumos de custos de IA
Webhooks Registre endpoints para receber notificações de eventos em tempo real
Equipe Gerencie membros da equipe, convites, funções, permissões e departamentos
Chaves de API Inspecione, rotacione e revogue sua chave de API, verifique o uso do limite de taxa e crie chaves extras com acesso limitado

Agentes, Pontos de Entrada e Transmissões

Agentes de IA, Pontos de Entrada e Transmissões estão todos na especificação OpenAPI publicada, para que você possa navegar pelos seus campos exatos e executar solicitações ao vivo no explorador de API. Cada um tem seu próprio guia: Agentes de IA, Pontos de Entrada e Transmissões.

Estar na especificação também significa que esses endpoints aparecem como ferramentas para qualquer assistente de IA que você conectar via MCP.


Lendo esta documentação como Markdown

Cada página nesta documentação possui um equivalente em Markdown simples: pegue o endereço da página e adicione /index.md ao final. Portanto, esta página também está disponível em https://docs.youraiconnector.com/api/getting-started/index.md, e ela é retornada como texto simples em vez de uma página da web — útil quando você deseja colar uma página em um assistente de IA ou importá-la para um script.

Para um assistente de IA ou um script que deva ler todo o conjunto, existem dois arquivos prontos:

  • https://docs.youraiconnector.com/llms.txt — o índice: cada página com um resumo de uma linha e um link para sua versão em Markdown, agrupados da mesma forma que a barra lateral.
  • https://docs.youraiconnector.com/llms-full.txt — toda a documentação em um único arquivo Markdown. Cada página começa com seu título e uma linha Source: contendo o endereço da página, para que um assistente possa citar de onde uma resposta veio.

Ambos também existem para cada idioma, sob o prefixo do idioma (https://docs.youraiconnector.com/nl/llms.txt, https://docs.youraiconnector.com/es/llms-full.txt, e assim por diante). Forneça ao seu assistente o endereço llms.txt e ele buscará as páginas de que precisa, ou entregue a ele llms-full.txt quando ele precisar ter tudo no contexto de uma só vez. Eles são reconstruídos a cada alteração na documentação, portanto, nunca ficam desatualizados.

Para percorrer as páginas você mesmo, https://docs.youraiconnector.com/sitemap.xml lista todas as páginas que publicamos. A documentação é mantida deliberadamente fora dos mecanismos de busca, portanto, buscar esses endereços diretamente é a maneira de acessá-la via código.

Nada disso requer uma chave de API: as versões em Markdown, os dois arquivos llms e o sitemap são toda a interface.


Próximos passos