Pular para o conteúdo principal

Solicitações e políticas — API

Veja o guia conceitual em Solicitações e aprovações.

Solicitações de acesso

GET /api/v1/access-requests revisor

Query: ?status=pending · ?agent_id=3 · ?tool_id=5

POST /api/v1/access-requests/{id}/approve revisor

Aprova pelo fluxo padrão (aprovador único). Na primeira aprovação do agente, retorna o client_secret (uma única vez).

Resposta 200

{
"access_request": { "id": 7, "status": "approved" },
"client_secret": "agt_live_…",
"agent_activated": true
}

client_secret é null se o agente já estava ativo.

POST /api/v1/access-requests/{id}/reject revisor

Requisição

{ "reason": "O contexto do agente não justifica acesso de escrita." }

POST /api/v1/access-requests/{id}/vote revisor

Vota em uma solicitação regida por uma política de aprovação.

Requisição

{ "vote": "approved", "reason": "Contexto revisado — acesso justificado." }

POST /api/v1/access-requests/bulk-approve revisor

Aprova várias solicitações de uma vez.

Requisição

{ "ids": [7, 8, 9] }

Resposta 200

{ "approved": [7, 8, 9], "failed": [] }

Políticas de aprovação

EndpointPapelDescrição
POST /api/v1/approval-policiesadminCria uma política.
GET /api/v1/approval-policiesrevisorLista as políticas.
PUT /api/v1/approval-policies/{id}adminAtualiza.
DELETE /api/v1/approval-policies/{id}adminRemove.

Exemplo de criação

{
"name": "Revisão de Segurança",
"type": "all_of",
"approver_emails": ["cto@empresa.com", "seguranca@empresa.com"],
"escalation_after_days": 3,
"is_default": false
}

type: any_of (quórum) · all_of (unânime) · sequential.