Visão Geral da API
A API REST do ArchiCore permite integrar análise de arquitetura em seus fluxos de trabalho.
URL Base
https://api.archicore.io/api/v1
Autenticação
Todas as requisições da API requerem autenticação usando um token Bearer:
curl -H "Authorization: Bearer SUA_CHAVE_API" \
https://api.archicore.io/api/v1/projects
Consulte Autenticação para detalhes sobre como obter chaves API.
Formato de Resposta
Todas as respostas são JSON:
{
"success": true,
"data": { ... }
}
Respostas de erro:
{
"success": false,
"error": "Mensagem de erro",
"code": "CODIGO_ERRO"
}
Códigos de Status HTTP
| Código | Descrição |
|---|---|
200 | Sucesso |
201 | Criado |
400 | Requisição Inválida - Parâmetros inválidos |
401 | Não Autorizado - Token inválido ou ausente |
403 | Proibido - Permissões insuficientes |
404 | Não Encontrado |
429 | Muitas Requisições - Limite de taxa excedido |
500 | Erro Interno do Servidor |
Limites de Taxa
| Plano | Requisições/dia | Requisições/minuto |
|---|---|---|
| Grátis | 100 | 10 |
| Pro | 10.000 | 100 |
| Enterprise | Ilimitado | 1.000 |
Os headers de limite de taxa são incluídos em todas as respostas:
X-RateLimit-Limit: 100
X-RateLimit-Remaining: 95
X-RateLimit-Reset: 1640000000
Resumo dos Endpoints
Projetos
| Método | Endpoint | Descrição |
|---|---|---|
GET | /projects | Listar todos os projetos |
POST | /projects | Criar um projeto |
GET | /projects/:id | Obter detalhes do projeto |
DELETE | /projects/:id | Excluir um projeto |
POST | /projects/:id/index | Iniciar indexação |
Análise
| Método | Endpoint | Descrição |
|---|---|---|
POST | /projects/:id/search | Busca semântica |
POST | /projects/:id/ask | Perguntar ao assistente IA |
GET | /projects/:id/metrics | Obter métricas de código |
GET | /projects/:id/security | Resultados do scan de segurança |
POST | /projects/:id/analyze | Análise de impacto |
Webhooks
| Método | Endpoint | Descrição |
|---|---|---|
GET | /webhooks | Listar webhooks |
POST | /webhooks | Criar webhook |
DELETE | /webhooks/:id | Excluir webhook |
SDKs
SDKs oficiais disponíveis para:
- JavaScript/TypeScript:
npm install @archicore/sdk - Python:
pip install archicore
Exemplo Rápido
import { ArchiCore } from '@archicore/sdk';
const client = new ArchiCore({ apiKey: 'SUA_CHAVE_API' });
// Buscar código
const results = await client.projects.search('project-id', {
query: 'lógica de autenticação'
});
// Perguntar à IA
const answer = await client.projects.ask('project-id', {
question: 'Como funciona o sistema de autenticação?'
});