Passer au contenu principal
POST
/
v3beta1
/
organizations
/
{org_id}
/
sessions
Create Session
curl --request POST \
  --url https://api.devin.ai/v3beta1/organizations/{org_id}/sessions \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "prompt": "<string>",
  "advanced_mode": "analyze",
  "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>"
  ],
  "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>",
  "child_session_ids": [
    "<string>"
  ],
  "is_advanced": false,
  "is_archived": false,
  "parent_session_id": "<string>",
  "title": "<string>",
  "user_id": "<string>"
}

Autorisations

Nécessite un compte de service disposant de l’autorisation ManageOrgSessions au niveau de l’organisation.

Autorisations supplémentaires pour les fonctions avancées

FonctionnalitéAutorisation requise
advanced_modeUseDevinExpert
create_as_user_idImpersonateOrgSessions

Mode avancé

Le paramètre advanced_mode active des comportements de session spécifiques pour les workflows d’automatisation. Lorsqu’il est activé, la session utilise la persona avancée et le prompt est transformé en fonction du mode sélectionné.

Modes disponibles

ModeDescriptionParamètres requis
analyzeAnalyser des sessions Devin existantes pour en extraire des informations exploitablessession_links
createCréer un nouveau playbook à partir de l’analyse de sessionsAucun (facultatif : session_links)
improveAméliorer un playbook existant à partir de commentaireschild_playbook_id
batchDémarrer plusieurs sessions Devin pour une liste de tâcheschild_playbook_id
manageGérer KnowledgeAucun

Options du mode batch

Lorsque vous utilisez le mode batch, vous pouvez définir bypass_approval sur true pour ignorer l’étape d’approbation lors de la création de sessions par lot. C’est utile pour les workflows entièrement automatisés, où vous souhaitez que les sessions démarrent immédiatement, sans approbation manuelle.

Usurpation d’identité d’utilisateur

Le paramètre create_as_user_id permet de créer une session au nom d’un autre utilisateur. Cela nécessite :
  1. L’utilisateur de service doit disposer de l’autorisation ImpersonateOrgSessions
  2. L’utilisateur cible doit être membre de l’organisation
  3. L’utilisateur cible doit disposer de l’autorisation UseDevinSessions

Autorisations

Authorization
string
header
requis

Service User credential (prefix: cog_)

Corps

application/json
prompt
string
requis
advanced_mode
enum<string> | null
Options disponibles:
analyze,
create,
improve,
batch,
manage
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
tags
string[] | null
title
string | null

Réponse

Successful Response

acus_consumed
number
requis
created_at
integer
requis
org_id
string
requis
pull_requests
SessionPullRequest · object[]
requis
session_id
string
requis
status
enum<string>
requis
Options disponibles:
new,
claimed,
running,
exit,
error,
suspended,
resuming
tags
string[]
requis
updated_at
integer
requis
url
string
requis
child_session_ids
string[] | null
is_advanced
boolean
défaut:false
is_archived
boolean
défaut:false
parent_session_id
string | null
title
string | null
user_id
string | null