Conexões de IA
CRUD completo para as conexões de IA usadas pelos agentes.
Endpoints
| Método | Rota | Descrição |
|---|---|---|
| GET | /api/v1/ai-connections | Lista conexões |
| POST | /api/v1/ai-connections | Cria uma conexão |
| GET | /api/v1/ai-connections/{ai_connection} | Exibe uma conexão |
| PUT/PATCH | /api/v1/ai-connections/{ai_connection} | Atualiza uma conexão |
| DELETE | /api/v1/ai-connections/{ai_connection} | Remove uma conexão |
Filtros de listagem
search, provider, is_active.
Campos
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
name | string, max 255 | Sim | Nome da conexão. |
provider | string | Sim | Provedor de IA. Atualmente apenas openai. |
api_key | string, max 500 | Sim | Chave de API do provedor. |
is_default | boolean | Não | Marca como conexão padrão da conta. |
is_active | boolean | Não | Padrão: conforme cadastro. |
Exemplo de resposta
A api_key nunca é retornada em texto puro — vem mascarada com asteriscos do mesmo tamanho da chave real:
{
"id": 3,
"name": "OpenAI Produção",
"provider": "openai",
"api_key": "****************",
"is_default": true,
"is_active": true,
"created_at": "2026-08-01T12:00:00Z",
"updated_at": "2026-08-01T12:00:00Z"
}
Exemplos com curl
Listar conexões
curl "$ROUXINOL_URL/api/v1/ai-connections?provider=openai" \
-H "Authorization: Bearer $ROUXINOL_TOKEN"
Criar uma conexão
curl -X POST "$ROUXINOL_URL/api/v1/ai-connections" \
-H "Authorization: Bearer $ROUXINOL_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "OpenAI Produção",
"provider": "openai",
"api_key": "sk-...",
"is_default": true,
"is_active": true
}'
Exibir uma conexão
curl "$ROUXINOL_URL/api/v1/ai-connections/3" \
-H "Authorization: Bearer $ROUXINOL_TOKEN"
Atualizar uma conexão
curl -X PATCH "$ROUXINOL_URL/api/v1/ai-connections/3" \
-H "Authorization: Bearer $ROUXINOL_TOKEN" \
-H "Content-Type: application/json" \
-d '{ "is_active": false }'
Remover uma conexão
curl -X DELETE "$ROUXINOL_URL/api/v1/ai-connections/3" \
-H "Authorization: Bearer $ROUXINOL_TOKEN"