Vai al contenuto principale
L’API v3 offre supporto RBAC completo con autenticazione degli utenti di servizio. Questa è l’API consigliata per l’automazione in produzione.
L’API v3 è attualmente in beta. Alcuni endpoint potrebbero cambiare man mano che miglioriamo l’API.
URL di base:
  • https://api.devin.ai/v3beta1/enterprise/* – endpoint che richiedono autorizzazioni a livello Enterprise
  • https://api.devin.ai/v3beta1/organizations/* – endpoint con ambito limitato a una singola organizzazione
Autenticazione: Credenziali utente di servizio (a livello Enterprise o di organizzazione) (scopri di più)
Alcuni endpoint Enterprise operano su organizzazioni specifiche ma sono comunque protetti da autorizzazioni a livello Enterprise. Utilizzano percorsi come /v3beta1/enterprise/organizations/{org_id}/... (ad esempio, GET /v3beta1/enterprise/organizations/{org_id}/audit-logs). Anche se includono un parametro di percorso org_id, richiedono comunque autorizzazioni a livello Enterprise come ManageEnterpriseSettings.

Autorizzazioni e RBAC

Ogni endpoint v3 è protetto da una specifica autorizzazione assegnata al ruolo dell’utente di servizio che effettua la chiamata. Le autorizzazioni sono suddivise in due ambiti: le autorizzazioni a livello Enterprise controllano gli endpoint /v3beta1/enterprise/*, e le autorizzazioni a livello di organizzazione controllano gli endpoint /v3beta1/organizations/{org_id}/*. Un utente di servizio Enterprise con un’autorizzazione a livello Enterprise eredita automaticamente la corrispondente autorizzazione a livello di organizzazione in tutte le organizzazioni.

Autorizzazioni Enterprise

PermissionControls
ReadAccountMetaAccount stesso (concessa per impostazione predefinita a tutti gli utenti di servizio)
ManageEnterpriseSettingsLog di audit, tag dell’organizzazione
ManageOrganizationsCRUD delle organizzazioni, limiti dei gruppi di organizzazioni
ManageAccountMembershipRuoli, utenti Enterprise, gruppi IdP Enterprise, appartenenza degli utenti di servizio Enterprise, registrazione dei gruppi IdP Enterprise
ManageAccountServiceUsersProvisioning degli utenti di servizio (enterprise)
ManageAccountKnowledgeNote Knowledge (enterprise)
ManageAccountPlaybooksPlaybook (enterprise)
ManageGitIntegrationsConnessioni Git, autorizzazioni Git
ManageBillingCicli di consumo, ripartizioni giornaliere del consumo
ViewAccountMetricsMetriche di utilizzo (DAU/WAU/MAU, PR, sessioni, ricerche, utenti attivi), stato della coda
ViewEnterpriseInfraDetailsHypervisor
ViewAccountSessionsElenco e dettagli delle sessioni (enterprise, sola lettura)
ManageAccountSessionsInvio di messaggi alle sessioni (enterprise)
ViewAccountSearchesRicerche (enterprise)

Autorizzazioni dell’organizzazione

PermissionControls
ManageOrgSecretsOperazioni CRUD sui segreti
ManageOrgKnowledgeNote di Knowledge (organizzazione)
ManageOrgPlaybooksPlaybook (organizzazione)
ManageOrgServiceUsersProvisioning degli utenti di servizio (organizzazione)
ViewOrgSessionsElenco e dettagli delle sessioni (organizzazione, solo lettura)
ManageOrgSessionsInviare messaggi, terminare, archiviare le sessioni
UseDevinSessionsCreare sessioni
ImpersonateOrgSessionsCreare sessioni per conto di altri utenti (create_as_user_id)
ViewOrgSearchesRicerche (organizzazione)

Ambiti degli utenti di servizio

Gli utenti di servizio Enterprise si autenticano tramite gli endpoint /v3beta1/enterprise/* e possono operare su tutte le organizzazioni. Hanno ruoli a livello di Enterprise ed ereditano automaticamente le corrispondenti autorizzazioni a livello di organizzazione in ogni organizzazione (ad esempio, ViewAccountSessions concede ViewOrgSessions in tutte le org). Gli utenti di servizio di organizzazione sono limitati a una singola organizzazione e si autenticano solo tramite gli endpoint /v3beta1/organizations/{org_id}/*. A loro vengono assegnati ruoli a livello di organizzazione.

Creazione di utenti di servizio

Gli utenti di servizio possono essere creati in due modi:
  1. UI: Enterprise Settings → Service Users — crea utenti di servizio a livello Enterprise o a livello di organizzazione con ruoli personalizzati e genera token API.
  2. API: POST /v3beta1/enterprise/service-users o POST /v3beta1/organizations/{org_id}/service-users — esegui il provisioning in modo programmatico di utenti di servizio con un ruolo e un TTL specificati. Le autorizzazioni del nuovo utente devono essere un sottoinsieme delle autorizzazioni del chiamante (l’escalation dei privilegi è prevenuta).
Per la generazione dei token e i dettagli sull’autenticazione, consulta la Guida all’autenticazione.

Self

Ottieni informazioni sull’utente di servizio autenticato:

Log di audit

Accedi a log di audit completi:

Consumo

Monitora metriche di consumo dettagliate:

Organizzazioni

Gestisci le organizzazioni con controllo degli accessi basato sui ruoli (RBAC):

Utenti di servizio

Gestisci gli utenti di servizio sia a livello Enterprise che di organizzazione:

Utenti

Gestisci gli utenti a livello Enterprise e di organizzazione:

Gruppi IdP

Gestisci i gruppi IdP a livello Enterprise e di organizzazione:

Autorizzazioni Git

Gestisci l’accesso al repository:

Note

Gestisci le note di conoscenza a livello Enterprise e di organizzazione:

Playbook

Gestisci i playbook a livello Enterprise e di organizzazione:

Sessioni

Gestisci le sessioni dell’organizzazione:

Tag

Gestisci i tag dell’organizzazione (richiede la funzionalità di tag di sessione):

Ruoli e metriche

Esempi di utilizzo

Visualizza esempi di codice

Scopri esempi di codice e casi d’uso comuni per l’API v3