DOCUMENTAÇÃO DA API DA AGATHA AI
Visão Geral
Todos os endpoints requerem autenticação (exceto o login inicial), e o modelo de linguagem é fixo em agatha-v4b-2025.gguf
, enquanto os modelos de imagem são limitados a Agatha_EpicRealism.safetensors
e Agatha_Dreams_Shaper_XL.safetensors
.
- Base URL:
https://agathaai.ai/api.php?endpoint=
- Autenticação:
- Primeiro, faça login via
POST /login.php
para obter uma sessão e o cookieuser_token
. - Todos os endpoints verificam a sessão e o
login_token
no banco de dados. - Cabeçalhos: Inclua o cookie
user_token
em todas as requisições após o login.
- Primeiro, faça login via
- Formatos de Requisição/Resposta: JSON ou
multipart/form-data
(para uploads de imagens). Respostas sempre em JSON. - Erros Comuns:
401
: Não autorizado (faça login novamente).400
: Parâmetros inválidos ou ausentes.403
: Créditos insuficientes ou ação proibida.405
: Método HTTP incorreto.404
: Endpoint não encontrado.500
: Erro interno no servidor ou no endpoint chamado.
- Consumo de Créditos: Gerenciado pelos endpoints PHP chamados (ex.:
chat.php
deduz créditos por mensagem/imagem/vídeo). - Modelos:
- Linguagem: Sempre
agatha-v4b-2025.gguf
(fixo, ignora seleções). - Imagem: Apenas
Agatha_EpicRealism.safetensors
ouAgatha_Dreams_Shaper_XL.safetensors
(validado; default para o primeiro se inválido).
- Linguagem: Sempre
ÍNDICE
1. Autenticação
2. Enviar Mensagem
3. Verificar Resposta (Polling)
4. Obter Histórico de Chats
5. Consultar Créditos
6. Coletar Créditos Diários
7. Excluir Chat
8. Atualizar Nome do Chat
9. Arquivar Chat
10. Criar Novo Chat
11. Atualizar Modelo de Linguagem
12. Atualizar Modelo de Imagem
13. Editar Mensagem
14. Treinar IA
1. AUTENTICAÇÃO
Realiza login e inicia sessão (não parte da api.php
, mas essencial).
- Método:
POST
- URL:
/login.php
- Descrição: Realiza login e inicia sessão.
- Corpo da Requisição (application/x-www-form-urlencoded ou JSON):
{
"email": "[email protected]",
"password": "suasenha"
}
{
"status": "success",
"message": "Login realizado com sucesso!"
}
user_token
(HttpOnly, expira em 30 dias).{
"status": "error",
"message": "E-mail ou senha inválidos."
}
2. ENVIAR MENSAGEM
Envia mensagem de texto ou imagem para processamento.
- Método:
POST
- URL:
/api.php?endpoint=send_message
- Descrição: Envia mensagem de texto ou imagem para processamento (usa
chat.php
ouchat_train.php
dependendo do modo de chat na sessão). Suporta contexto adicional,request_id
para polling, e upload de imagem. O processamento de créditos e resposta é delegado ao endpoint chamado. - Corpo da Requisição (multipart/form-data para imagem; JSON para texto):
{
"message": "Conteúdo da mensagem",
"message_search": "Contexto adicional",
"chat_id": 123,
"request_id": "1234567890abc",
"image_model": "Agatha_EpicRealism.safetensors",
"image": ""
}
{
"status": "success",
"request_id": "1234567890abc",
"chat_id": 123,
"message": "Mensagem enviada, aguardando processamento."
}
{
"status": "error",
"message": "Créditos insuficientes."
}
3. VERIFICAR RESPOSTA (POLLING)
Verifica o status de uma solicitação via polling.
- Método:
GET
- URL:
/api.php?endpoint=check_response&request_id=
- Descrição: Verifica o status de uma solicitação (texto, imagem ou vídeo). Delega para
check_response.php
. - Parâmetros de Query:
{
"request_id": "1234567890abc"
}
{
"status": "completed",
"reply": "Resposta do bot ou URL da imagem/vídeo",
"progress": 100,
"usage": {
"total_tokens": 10
}
}
{
"status": "processing",
"progress": 50
}
{
"status": "error",
"message": "Erro ao processar a solicitação."
}
4. OBTER HISTÓRICO DE CHATS
Recupera histórico de chats e mensagens.
- Método:
GET
- URL:
/api.php?endpoint=get_chat_history
- Descrição: Recupera histórico de chats e mensagens. Delega para
load_chats.php
. - Resposta de Sucesso (200):
{
"success": true,
"chats": [
{
"chat_id": 123,
"name": "Chat 123",
"created_at": "2025-10-04 12:04:00",
"messages": [
{
"id": 1,
"content": "Olá, como você está?",
"sender": "user",
"timestamp": "2025-10-04 12:04:00"
}
]
}
]
}
{
"success": false,
"message": "Erro ao carregar histórico."
}
5. CONSULTAR CRÉDITOS
Retorna o saldo de créditos do usuário.
- Método:
GET
- URL:
/api.php?endpoint=get_credits
- Descrição: Retorna o saldo de créditos do usuário. Delega para
get_credits.php
. - Resposta de Sucesso (200):
{
"credits": 10
}
{
"success": false,
"message": "Erro ao consultar créditos."
}
6. COLETAR CRÉDITOS DIÁRIOS
Coleta créditos diários (se disponível).
- Método:
POST
- URL:
/api.php?endpoint=collect_daily_credits
- Descrição: Coleta créditos diários (se disponível). Delega para
give_daily_tokens.php
. - Resposta de Sucesso (200):
{
"success": true,
"message": "Créditos diários coletados.",
"credits": 20
}
{
"success": false,
"message": "Créditos diários já coletados."
}
7. EXCLUIR CHAT
Exclui um chat.
- Método:
POST
- URL:
/api.php?endpoint=delete_chat
- Descrição: Exclui um chat. Delega para
delete_chat.php
. - Corpo da Requisição (JSON):
{
"chat_id": 123
}
{
"success": true,
"message": "Chat excluído com sucesso."
}
{
"success": false,
"message": "Erro ao excluir chat."
}
8. ATUALIZAR NOME DO CHAT
Atualiza o nome de um chat.
- Método:
POST
- URL:
/api.php?endpoint=update_chat_name
- Descrição: Atualiza o nome de um chat. Delega para
update_chat_name.php
. - Corpo da Requisição (JSON):
{
"chat_id": 123,
"new_name": "Novo Nome"
}
{
"success": true,
"message": "Nome atualizado."
}
{
"success": false,
"message": "Erro ao atualizar nome."
}
9. ARQUIVAR CHAT
Arquiva um chat.
- Método:
POST
- URL:
/api.php?endpoint=archive_chat
- Descrição: Arquiva um chat. Delega para
archive_chat.php
. - Corpo da Requisição (JSON):
{
"chat_id": 123
}
{
"success": true,
"message": "Chat arquivado."
}
{
"success": false,
"message": "Erro ao arquivar chat."
}
10. CRIAR NOVO CHAT
Cria um novo chat.
- Método:
POST
- URL:
/api.php?endpoint=new_chat
- Descrição: Cria um novo chat. Delega para
novo_chat.php
. - Resposta de Sucesso (200):
{
"success": true,
"chat_id": 124,
"message": "Chat criado."
}
{
"success": false,
"message": "Erro ao criar chat."
}
11. ATUALIZAR MODELO DE LINGUAGEM
Força o modelo fixo agatha-v4b-2025.gguf
.
- Método:
POST
- URL:
/api.php?endpoint=update_model
- Descrição: Força o modelo fixo
agatha-v4b-2025.gguf
. Delega paraupdate_model.php
. - Corpo da Requisição (JSON):
{
"model": "agatha-v4b-2025.gguf"
}
{
"success": true,
"message": "Modelo atualizado."
}
12. ATUALIZAR MODELO DE IMAGEM
Atualiza o modelo de imagem (validado).
- Método:
POST
- URL:
/api.php?endpoint=update_model_image
- Descrição: Atualiza o modelo de imagem (validado). Delega para
update_model_image.php
. - Corpo da Requisição (JSON):
{
"model_image": "Agatha_EpicRealism.safetensors"
}
{
"success": true,
"message": "Modelo de imagem atualizado."
}
13. EDITAR MENSAGEM
Edita uma mensagem.
- Método:
POST
- URL:
/api.php?endpoint=edit_message
- Descrição: Edita uma mensagem. Delega para
edit_message.php
. - Corpo da Requisição (JSON):
{
"message_id": 1,
"chat_id": 123,
"content": "Mensagem editada",
"timestamp": "2025-10-04T12:04:00Z"
}
{
"success": true,
"message": "Mensagem editada."
}
{
"success": false,
"message": "Erro ao editar mensagem."
}
14. TREINAR IA
Treina a IA com pergunta e resposta.
- Método:
POST
- URL:
/api.php?endpoint=train_ai
- Descrição: Treina a IA com pergunta e resposta. Delega para
train_ai.php
. - Corpo da Requisição (JSON):
{
"question": "O que é IA?",
"answer": "Inteligência Artificial é..."
}
{
"success": true,
"message": "Treinamento concluído."
}
{
"success": false,
"message": "Erro ao treinar IA."
}
Considerações Adicionais
- Polling para Respostas: Após enviar uma mensagem, use o
request_id
para polling no endpointcheck_response
a cada 1-14 segundos, dependendo do tipo (texto, imagem ou vídeo). - Modo de Chat: Armazenado na sessão (
chat_mode = 'default'
ou'train'
); afeta o endpoint de chat usado.