Pular para o conteúdo principal
A API v3 oferece suporte completo a RBAC com autenticação de usuário de serviço. Esta é a API recomendada para automação em produção.
A API v3 está atualmente em beta. Alguns endpoints podem mudar à medida que aprimoramos a API.
URLs base:
  • https://api.devin.ai/v3beta1/enterprise/* – endpoints que exigem permissões em nível Enterprise
  • https://api.devin.ai/v3beta1/organizations/* – endpoints com escopo para uma única organização
Autenticação: credenciais de usuário de serviço (nível Enterprise ou de organização) (saiba mais)
Alguns endpoints Enterprise operam em organizações específicas, mas ainda assim são protegidos por permissões em nível Enterprise. Eles usam caminhos como /v3beta1/enterprise/organizations/{org_id}/... (por exemplo, GET /v3beta1/enterprise/organizations/{org_id}/audit-logs). Mesmo que incluam um parâmetro de caminho org_id, eles ainda exigem permissões em nível Enterprise, como ManageEnterpriseSettings.

Permissões e RBAC

Cada endpoint v3 é protegido por uma permissão específica atribuída à função do usuário de serviço que faz a chamada. As permissões são divididas em dois escopos: permissões de nível de Enterprise controlam os endpoints /v3beta1/enterprise/*, e permissões de nível de organização controlam os endpoints /v3beta1/organizations/{org_id}/*. Um usuário de serviço Enterprise com uma permissão em nível de Enterprise herda automaticamente a permissão correspondente em nível de organização em todas as organizações.

Permissões de Enterprise

PermissãoControles
ReadAccountMetaPróprio usuário (concedida a todos os usuários de serviço por padrão)
ManageEnterpriseSettingsLogs de auditoria, tags de organização
ManageOrganizationsCRUD de organizações, limites de grupos de organização
ManageAccountMembershipFunções, usuários Enterprise, grupos de IdP Enterprise, associação de usuários de serviço Enterprise, registro de grupos de IdP Enterprise
ManageAccountServiceUsersProvisionamento de usuários de serviço (Enterprise)
ManageAccountKnowledgeNotas do Knowledge (Enterprise)
ManageAccountPlaybooksPlaybooks (Enterprise)
ManageGitIntegrationsConexões Git, permissões Git
ManageBillingCiclos de consumo, detalhamento diário do consumo
ViewAccountMetricsMétricas de uso (DAU/WAU/MAU, PRs, sessões, pesquisas, usuários ativos), status da fila
ViewEnterpriseInfraDetailsHipervisores
ViewAccountSessionsLista e detalhes de sessões (Enterprise, somente leitura)
ManageAccountSessionsEnviar mensagens para sessões (Enterprise)
ViewAccountSearchesPesquisas (Enterprise)

Permissões da organização

PermissionControls
ManageOrgSecretsCRUD de segredos
ManageOrgKnowledgeNotas no Knowledge (organização)
ManageOrgPlaybooksPlaybooks (organização)
ManageOrgServiceUsersProvisionamento de usuários de serviço (organização)
ViewOrgSessionsLista e detalhes de sessões (organização, somente leitura)
ManageOrgSessionsEnviar mensagens, encerrar, arquivar sessões
UseDevinSessionsCriar sessões
ImpersonateOrgSessionsCriar sessões em nome de outros usuários (create_as_user_id)
ViewOrgSearchesPesquisas (organização)

Escopos de usuários de serviço

Usuários de serviço Enterprise se autenticam pelos endpoints /v3beta1/enterprise/* e podem operar em todas as organizações. Eles recebem funções em nível Enterprise e herdam automaticamente as permissões correspondentes em nível de organização em cada organização (por exemplo, ViewAccountSessions concede ViewOrgSessions em todas as organizações). Usuários de serviço da organização têm escopo limitado a uma única organização e se autenticam apenas pelos endpoints /v3beta1/organizations/{org_id}/*. Eles recebem funções em nível de organização.

Criando usuários de serviço

Usuários de serviço podem ser criados de duas maneiras:
  1. UI: Enterprise Settings → Service Users — crie usuários de serviço no nível Enterprise ou de organização com funções personalizadas e gere tokens de API.
  2. API: POST /v3beta1/enterprise/service-users ou POST /v3beta1/organizations/{org_id}/service-users — faça o provisionamento programático de usuários de serviço com uma função e TTL especificados. As permissões do novo usuário devem ser um subconjunto das permissões de quem faz a chamada (a elevação de privilégio é impedida).
Para obter detalhes sobre geração de tokens e autenticação, consulte o Guia de autenticação.

Self

Obtenha informações sobre o usuário de serviço autenticado:

Logs de auditoria

Acesse históricos de auditoria abrangentes:

Consumo

Acompanhe métricas detalhadas de consumo:

Organizações

Gerencie organizações com controle de acesso baseado em função (RBAC) completo:

Usuários de serviço

Gerencie usuários de serviço nos níveis Enterprise e de organização:

Usuários

Gerencie usuários nos níveis de Enterprise e de organização:

Grupos de IdP

Gerencie grupos de IdP nos níveis Enterprise e organização:

Permissões do Git

Gerencie o acesso ao repositório:

Notas

Gerencie notas de conhecimento nos níveis Enterprise e de organização:

Playbooks

Gerencie playbooks nos níveis Enterprise e de organização:

Sessões

Gerencie sessões da organização:

Tags

Gerenciar tags da organização (requer o recurso de tags de sessão):

Funções e métricas

Exemplos de Uso

Ver Exemplos de Código

Confira exemplos de código e casos de uso comuns da API v3