Vai al contenuto principale
POST
/
v3
/
organizations
/
{org_id}
/
sessions
Crea sessione
curl --request POST \
  --url https://api.devin.ai/v3/organizations/{org_id}/sessions \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "prompt": "<string>",
  "attachment_urls": [
    "<string>"
  ],
  "bypass_approval": true,
  "child_playbook_id": "<string>",
  "create_as_user_id": "<string>",
  "knowledge_ids": [
    "<string>"
  ],
  "max_acu_limit": 123,
  "playbook_id": "<string>",
  "repos": [
    "<string>"
  ],
  "secret_ids": [
    "<string>"
  ],
  "session_links": [
    "<string>"
  ],
  "session_secrets": [
    {
      "key": "<string>",
      "value": "<string>",
      "sensitive": true
    }
  ],
  "structured_output_required": true,
  "structured_output_schema": {},
  "tags": [
    "<string>"
  ],
  "title": "<string>"
}
'
{
  "acus_consumed": 123,
  "created_at": 123,
  "org_id": "<string>",
  "pull_requests": [
    {
      "pr_state": "<string>",
      "pr_url": "<string>"
    }
  ],
  "session_id": "<string>",
  "status": "new",
  "tags": [
    "<string>"
  ],
  "updated_at": 123,
  "url": "<string>",
  "category": "bug_fixing",
  "child_session_ids": [
    "<string>"
  ],
  "is_archived": false,
  "origin": "webapp",
  "parent_session_id": "<string>",
  "playbook_id": "<string>",
  "service_user_id": "<string>",
  "status_detail": "working",
  "structured_output": {},
  "subcategory": "<string>",
  "title": "<string>",
  "user_id": "<string>"
}

Documentation Index

Fetch the complete documentation index at: https://docs.devin.ai/llms.txt

Use this file to discover all available pages before exploring further.

Autorizzazioni

Richiede un utente di servizio con l’autorizzazione ManageOrgSessions a livello di organizzazione.

Autorizzazioni aggiuntive per funzionalità avanzate

FunzionalitàAutorizzazione richiesta
create_as_user_idImpersonateOrgSessions

Impersonazione utente

Il parametro create_as_user_id consente di creare una sessione per conto di un altro utente. Questo richiede che:
  1. L’utente di servizio abbia l’autorizzazione ImpersonateOrgSessions
  2. L’utente di destinazione sia un membro dell’organizzazione
  3. L’utente di destinazione abbia l’autorizzazione UseDevinSessions

Autorizzazioni

Authorization
string
header
obbligatorio

Credenziale dell'utente del servizio (prefisso: cog_)

Parametri del percorso

org_id
string | null
obbligatorio

ID dell'organizzazione (prefisso: org-)

Esempio:

"org-abc123def456"

Parametri della query

devin_id
string | null

Corpo

application/json
prompt
string
obbligatorio
attachment_urls
string<uri>[] | null
Required string length: 1 - 2083
bypass_approval
boolean | null
child_playbook_id
string | null
create_as_user_id
string | null
knowledge_ids
string[] | null
max_acu_limit
integer | null
playbook_id
string | null
repos
string[] | null
secret_ids
string[] | null
session_secrets
SessionSecretInput · object[] | null
structured_output_required
boolean | null

Se true (predefinito), l'agente DEVE chiamare provide_structured_output con is_final=true prima della fine del suo turno. Se false, il tool è disponibile ma non obbligatorio: non è garantito che venga chiamato in un determinato turno.

structured_output_schema
Structured Output Schema · object

JSON Schema (Draft 7) per la convalida dell’output strutturato. Dimensione massima 64 KB. Deve essere autonomo (nessun $ref esterno).

tags
string[] | null
title
string | null

Risposta

Risposta con esito positivo

acus_consumed
number
obbligatorio
created_at
integer
obbligatorio
org_id
string
obbligatorio
pull_requests
SessionPullRequest · object[]
obbligatorio
session_id
string
obbligatorio
status
enum<string>
obbligatorio
Opzioni disponibili:
new,
claimed,
running,
exit,
error,
suspended,
resuming
tags
string[]
obbligatorio
updated_at
integer
obbligatorio
url
string
obbligatorio
category
enum<string> | null

La categoria del caso d'uso assegnata alla sessione, se la categorizzazione è stata eseguita. Valorizzato solo negli endpoint get/list.

Opzioni disponibili:
bug_fixing,
ci_cd_and_devops,
code_quality_and_security,
code_review_and_analysis,
data_and_automation,
documentation_and_content,
feature_development,
migrations_and_upgrades,
other,
refactoring_and_optimization,
research_and_exploration,
unit_test_generation
child_session_ids
string[] | null
is_archived
boolean
predefinito:false
origin
enum<string> | null

L'origine da cui è stata creata la sessione.

Opzioni disponibili:
webapp,
slack,
teams,
api,
linear,
jira,
scheduled,
automation,
cli,
desktop,
other
parent_session_id
string | null
playbook_id
string | null
service_user_id
string | null
status_detail
enum<string> | null

Ulteriore dettaglio sullo stato corrente della sessione. Quando status è 'running': 'working' (sta lavorando attivamente), 'waiting_for_user' (richiede input dell'utente), 'waiting_for_approval' (in attesa dell'approvazione di un'azione in modalità sicura) oppure 'finished' (attività completata). Quando status è 'suspended': il motivo della sospensione, ad esempio 'inactivity', 'user_request', 'usage_limit_exceeded', 'out_of_credits', 'out_of_quota', 'no_quota_allocation', 'payment_declined', 'org_usage_limit_exceeded', 'total_session_limit_exceeded' oppure 'error'. Valorizzato solo negli endpoint get/list.

Opzioni disponibili:
working,
waiting_for_user,
waiting_for_approval,
finished,
inactivity,
user_request,
usage_limit_exceeded,
out_of_credits,
out_of_quota,
no_quota_allocation,
payment_declined,
org_usage_limit_exceeded,
total_session_limit_exceeded,
error
structured_output
Structured Output · object

Output strutturato convalidato dalla sessione. Impostato solo sugli endpoint GET/list.

subcategory
string | null

Il nome visualizzato della sottocategoria assegnata alla sessione. 'Other' quando è impostata una categoria ma non è stata assegnata né risolta alcuna sottocategoria. Valorizzato solo negli endpoint get/list.

title
string | null
user_id
string | null