Portal →
📚 v1.0 · Maio 2026

Documentação AInama

Integre IA corporativa ao seu produto em minutos. Widget JS, API REST, React SDK e conectores para n8n, Zapier e Make.

💡 Início rápido: A forma mais rápida de integrar é o Widget JS — cole 2 linhas no seu site e está pronto. Ver instalação →

Escolha sua integração

🪄
Widget JS
Cole 2 linhas no seu site. Zero configuração.
🔗
API REST
Integração direta. Qualquer linguagem.
⚛️
React SDK
Componente React pronto para produção.
⚡
n8n / Zapier
Automações e workflows sem código.

Autenticação

Todas as requisições precisam de uma API Key obtida no Portal do Cliente em API Keys → Nova Key.

Authorization: Bearer SUA_API_KEY
Content-Type: application/json

Base URL

https://mcp.ainama.com.br

Rate Limits por plano

PlanoReq / minReq / mês
aira——
starter605.000
agent20025.000
business500ilimitado
enterpriseilimitadoilimitado
Docs / Widget JS

🪄 Widget JavaScript

A forma mais simples de adicionar IA ao seu site. Cole o snippet antes do </body> e o widget aparece automaticamente.

Instalação

Cole as linhas abaixo antes do fechamento </body> no seu HTML:

<!-- AInama Widget -->
<script>
  window.AInama = {
    apiKey: 'SUA_API_KEY',
    org: 'seu-slug',
    position: 'bottom-right',
    primaryColor: '#00d4a8',
    welcomeMessage: 'Olá! Como posso ajudar?',
  };
</script>
<script src="https://mcp.ainama.com.br/widget.js" async></script>
🔑 Encontre sua API Key e org slug no Portal do Cliente em Instalação.

Parâmetros

ParâmetroTipoPadrãoDescrição
apiKeystring—Obrigatório. Sua API Key do portal.
orgstring—Obrigatório. Slug da sua organização.
positionstringbottom-rightbottom-right · bottom-left · top-right · top-left
primaryColorstring#00d4a8Cor principal do widget (hex).
welcomeMessagestringOlá!Mensagem inicial do agente.
placeholderstringDigite...Placeholder do campo de texto.
agentIdnumberautoForçar um agent específico.
themestringdarkdark · light · auto
languagestringpt-BRIdioma da interface.
hideOnMobilebooleanfalseOcultar widget em dispositivos móveis.

Personalização avançada

window.AInama = {
  apiKey: 'SUA_API_KEY',
  org: 'seu-slug',
  position: 'bottom-right',
  primaryColor: '#6366f1',
  theme: 'light',
  welcomeMessage: 'Olá! Sou a assistente virtual da sua empresa.',
  placeholder: 'Como posso te ajudar hoje?',
  agentId: 42,
  language: 'pt-BR',
  hideOnMobile: false,
  onOpen:    () => console.log('Widget aberto'),
  onClose:   () => console.log('Widget fechado'),
  onMessage: (msg) => console.log('Mensagem:', msg),
};

Controle por JavaScript

// Abrir / fechar / toggle
window.AInama.open();
window.AInama.close();
window.AInama.toggle();

// Enviar mensagem programaticamente
window.AInama.sendMessage('Quero saber sobre preços');

// Escutar eventos
window.addEventListener('ainama:message', (e) => {
  console.log('Nova mensagem:', e.detail);
});
Docs / API REST

🔗 API REST

Integração direta com qualquer linguagem. Compatível com o padrão OpenAI para fácil migração.

POST /v1/chat

Endpoint principal para conversação com agents.

POST/v1/chat
curl -X POST https://mcp.ainama.com.br/v1/chat \
  -H "Authorization: Bearer SUA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "org": "seu-slug",
    "messages": [
      { "role": "user", "content": "Olá, como funciona o produto?" }
    ],
    "agent_id": 1,
    "stream": false
  }'

Parâmetros do body

CampoTipoDescrição
orgstringSlug da organização. Obrigatório.
messagesarrayHistórico de mensagens (role: user / assistant).
agent_idnumberID do agent. Opcional — usa o padrão da org.
streambooleanResposta em streaming SSE. Padrão: false.
session_idstringID de sessão para manter contexto entre chamadas.

Response

{
  "ok": true,
  "choices": [{
    "message": {
      "role": "assistant",
      "content": "Olá! O AInama é uma plataforma de IA corporativa..."
    }
  }],
  "usage": {
    "prompt_tokens": 120,
    "completion_tokens": 85,
    "total_tokens": 205
  },
  "model": "llama-3.3-70b-versatile",
  "agent_id": 1
}

GET /v1/agents

Lista os agents disponíveis na organização.

GET/v1/agents?org=seu-slug
curl https://mcp.ainama.com.br/v1/agents?org=seu-slug \
  -H "Authorization: Bearer SUA_API_KEY"

Streaming SSE

const response = await fetch('https://mcp.ainama.com.br/v1/chat', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer SUA_API_KEY',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    org: 'seu-slug',
    messages: [{ role: 'user', content: 'Olá!' }],
    stream: true
  })
});

const reader = response.body.getReader();
const decoder = new TextDecoder();

while (true) {
  const { done, value } = await reader.read();
  if (done) break;
  process(decoder.decode(value));
}
Docs / React SDK

⚛️ React SDK

Componente React pronto para produção com suporte a TypeScript, temas e personalização completa.

Instalação

npm install @ainama/react-widget
# ou
yarn add @ainama/react-widget

Uso básico

import AInama from '@ainama/react-widget';

export default function App() {
  return (
    <>
      <AInama
        apiKey="SUA_API_KEY"
        org="seu-slug"
        position="bottom-right"
        primaryColor="#00d4a8"
        welcomeMessage="Olá! Como posso ajudar?"
      />
    </>
  );
}

Com TypeScript

import AInama, { AInamaConfig } from '@ainama/react-widget';

const config: AInamaConfig = {
  apiKey: process.env.NEXT_PUBLIC_AINAMA_KEY!,
  org: 'seu-slug',
  theme: 'dark',
  onMessage: (msg) => console.log(msg),
};

export default function Layout({ children }) {
  return (
    <html><body>
      {children}
      <AInama {...config} />
    </body></html>
  );
}

Hook useAInama

import { useAInama } from '@ainama/react-widget';

function ChatButton() {
  const { open, close, isOpen, sendMessage } = useAInama();
  return (
    <button onClick={open}>
      {isOpen ? 'Fechar chat' : 'Abrir chat'}
    </button>
  );
}
💡 O SDK React usa a mesma API REST internamente. O hook useAInama permite controle programático em qualquer componente.
Docs / n8n / Zapier

⚡ n8n & Zapier

Conecte o AInama a centenas de ferramentas sem escrever código. Use em workflows de atendimento, qualificação de leads e automações.

n8n — HTTP Request Node

No n8n, use o node HTTP Request para chamar a API:

Method: POST
URL: https://mcp.ainama.com.br/v1/chat
Authentication: Header Auth
  Header Name:  Authorization
  Header Value: Bearer SUA_API_KEY

Body (JSON):
{
  "org": "seu-slug",
  "messages": [
    { "role": "user", "content": "{{ $json.message }}" }
  ]
}

n8n — Workflow WhatsApp completo

1. Webhook  →  recebe mensagem via Evolution API
   ↓
2. HTTP Request  →  POST /v1/chat
   {
     "org": "seu-slug",
     "messages": [{ "role": "user", "content": "{{ $json.body.message }}" }],
     "session_id": "{{ $json.body.from }}"
   }
   ↓
3. HTTP Request  →  Evolution API (envia resposta)
   {
     "number": "{{ $json.body.from }}",
     "text":   "{{ $json.choices[0].message.content }}"
   }

Zapier

Trigger: Webhooks by Zapier
  ↓
Action: Webhooks by Zapier (POST)
  URL:          https://mcp.ainama.com.br/v1/chat
  Payload Type: JSON
  Data:
    org:                    seu-slug
    messages[0][role]:      user
    messages[0][content]:   (mensagem do trigger)
  Headers:
    Authorization: Bearer SUA_API_KEY

Make (Integromat)

Módulo: HTTP → Make a request
URL:    https://mcp.ainama.com.br/v1/chat
Method: POST
Headers:
  Authorization: Bearer SUA_API_KEY
  Content-Type:  application/json
Body:
{
  "org": "seu-slug",
  "messages": [{ "role": "user", "content": "{{message}}" }]
}
⚠️ Para workflows de produção com alto volume, recomendamos n8n self-hosted para evitar limites do plano Zapier.