API
Ciclo de vida dos tokens
Validade, revogação e rotação de cada credencial, gerado da matriz.
Gerado da matriz de credenciais · versão 1 · sha 9d2b630103a5. Não edite à mão: a fonte é src/credential-matrix.ts no engine.
| Validade | Revogação | Rotação |
|---|
Sem expiração quando criado no app. Signup: 30 dias até o claim, que remove a expiração. OAuth: até a validade de quem consentiu ou VALORBRAIN_OAUTH_TOKEN_MAX_TTL_DAYS. EMA: token_ttl_seconds do emissor (padrão 900 s). | DELETE /api/v1/mcp/tokens/:id, botão Revogar no app ou POST /oauth/revoke; revogar o pai derruba os tokens OAuth filhos. | Crie um token novo, troque no cliente e revogue o antigo. OAuth não emite refresh token: o cliente refaz o consentimento. |
| Validade | Revogação | Rotação |
|---|
| 30 dias a partir do signup se ninguém fizer o claim; depois do claim não expira. | Cai junto com o workspace (exclusão do tenant ou billing_status diferente de active), levando os tokens OAuth aprovados com ela. | A chave não roda; ela reemite o vbm_ do signup (POST /api/v1/agents/mcp-token: read write, toolset agent, mesma validade, o anterior revogado). No dia a dia use o vbm_; depois do claim, o token pessoal de quem fez o claim serve a todos os agentes dessa pessoa, que se identificam pelos cabeçalhos do contrato. |
| Validade | Revogação | Rotação |
|---|
api_tokens.expires_at quando definido; sem expiração caso contrário. | api_tokens.is_active = false (painel de tokens de CLI ou offboarding do membro); os tokens OAuth aprovados com ela caem junto. | Emita uma chave nova pelo mesmo emissor e desative a antiga. |
| Validade | Revogação | Rotação |
|---|
| Expiração da chave quando definida; sem expiração caso contrário. | Excluir a chave em Configurações → Chaves de API. | Crie uma chave nova, troque no sistema externo e exclua a antiga. |
| Validade | Revogação | Rotação |
|---|
| Validade da sessão do app; não é contrato de integração. | Logout ou remoção do membro. | Novo login. |
Valores curtos que um fluxo entrega no caminho até uma credencial. Não são credenciais e não autenticam rotas.
| Credencial | Emitido por | Validade | Uso |
|---|
| Código do claim (OTP) | POST /api/v1/agents/claim | 10 minutos, até 5 tentativas | POST /api/v1/agents/claim/verify com a vb_agent_ do workspace |
| Código de autorização OAuth | GET /oauth/authorize → consentimento | Uso único, minutos | POST /oauth/token com o code_verifier PKCE |
| Cliente OAuth (DCR) | POST /oauth/register | Até ser removido; cliente público, sem segredo | client_id em /oauth/authorize e /oauth/token |
| Código de dispositivo | POST https://valorbrain.valor.digital/api/v1/cli/device/code | Minutos, até a aprovação humana | Polling em POST /api/v1/cli/device/token; entrega o token uma vez |