Skip to main content
POST
Créer une session

Autorisations

Nécessite un compte de service ou un jeton d’accès personnel disposant de l’autorisation UseDevinSessions (org.devins.use) au niveau de l’organisation.

Autorisations supplémentaires pour les fonctions avancées

Mode Devin

Le paramètre devin_mode détermine le mode d’agent Devin utilisé pour la session : S’il n’est pas renseigné, la session utilise le mode par défaut de l’organisation. Les modes en préversion sont soumis aux mêmes restrictions de feature flag et d’aperçu de l’agent Enterprise que l’application web.

Usurpation d’identité d’un utilisateur

Le paramètre create_as_user_id permet de créer une session sur le compte d’un autre utilisateur. Cela nécessite :
  1. Le compte 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

Identifiant de compte de service (préfixe : cog_)

Paramètres de chemin

org_id
string | null
requis

ID de l’organisation (préfixe : org-)

Exemple:

"org-abc123def456"

Paramètres de requête

devin_id
string | null

Corps

application/json
prompt
string
requis
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
devin_mode
enum<string> | null

Redéfinit le mode Agent de Devin pour la session. 'normal' utilise le mode Agent par défaut, 'fast' utilise le mode Fast, 'lite' utilise Devin Lite, 'ultra' utilise Devin Ultra et 'fusion' utilise Fusion. Les autres valeurs sélectionnent le mode Agent du même nom dans la webapp. Les modes Preview sont soumis aux mêmes restrictions de flag de fonctionnalité et d’aperçu de l’agent Enterprise que la webapp.

Options disponibles:
normal,
fast,
fusion,
lite,
ultra,
swe-2-medium,
swe-2-high,
swe-2-max
knowledge_ids
string[] | null
max_acu_limit
integer | null
platform
string | null

Dérogation à la plateforme VM pour la session (p. ex. 'windows'), ou nom d’un pool Outposts (BYOB) sur lequel exécuter la session sur l’une de vos propres machines. Lorsqu’elle est omise (ou définie sur 'inherit'), une session créée par un Devin parent hérite de l’emplacement du parent — à la fois de sa plateforme et de son pool Outposts ; ainsi, un parent placé sur un outpost lance des enfants sur le même pool ; sinon, la valeur par défaut de l’organisation est utilisée. Toute valeur doit correspondre soit à une plateforme configurée pour votre organisation, soit à un nom de pool Outposts (sans distinction de casse) — les plateformes intégrées sont prioritaires lorsqu’un nom correspond aux deux, et un pool Outposts personnel appartenant à l’appelant est prioritaire sur un pool à l’échelle du compte portant le même nom. Les valeurs non reconnues sont rejetées avec une erreur 400 dont le corps liste les libellés de plateforme disponibles et les noms de pool Outposts pour l’organisation.

playbook_id
string | null
repos
string[] | null
resumable
boolean
défaut:true

Indique s’il faut conserver l’état de la VM de la session après son arrêt afin de pouvoir reprendre la session. Définissez cette valeur sur false pour les sessions temporaires.

secret_ids
string[] | null
security_profile
SessionSecurityProfileSelection · object | null

Associer un profil de sécurité à cette session ; si ce paramètre est omis, les règles de résolution par défaut s’appliquent (le profil de sécurité associé au playbook, s’il existe, puis le profil par défaut de l’organisation/Enterprise). Nécessite l’autorisation de gestion des profils de sécurité.

session_secrets
SessionSecretInput · object[] | null
structured_output_required
boolean | null

Lorsque la valeur est true (par défaut), l’agent DOIT appeler provide_structured_output avec is_final=true avant la fin de son tour. Lorsque la valeur est false, l’outil est disponible mais non obligatoire — son appel n’est pas garanti pour un tour donné.

structured_output_schema
Structured Output Schema · object | null

JSON Schema (Draft 7) pour la validation de la sortie structurée. Taille maximale : 64 Ko. Doit être autonome (aucune référence externe via $ref).

tags
string[] | null
title
string | null

Réponse

Réponse réussie

acus_consumed
number
requis
created_at
integer
requis
org_id
string | null
requis

Organisation propriétaire. Null pour les sessions détachées, qui appartiennent au compte de leur créateur plutôt qu’à une organisation.

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
automation_id
string | null

ID de l’automatisation ayant créé cette session, le cas échéant.

category
enum<string> | null

Catégorie de cas d’usage attribuée à la session, si la catégorisation a été effectuée. Renseigné uniquement sur les endpoints get/list.

Options disponibles:
bug_fixing,
ci_cd_and_devops,
code_quality_and_security,
code_review,
code_review_and_analysis,
data_and_automation,
documentation_and_content,
feature_development,
migrations_and_upgrades,
other,
production_investigation,
refactoring_and_optimization,
research_and_exploration,
security,
unit_test_generation
child_session_ids
string[] | null
devin_mode
enum<string> | null

Le mode agent Devin avec lequel la session a été créée, après résolution des valeurs par défaut de l’organisation/de l’utilisateur et de l’héritage de la session parente. None lorsque la session exécute un aperçu d’agent qui n’a pas d’équivalent de mode.

Options disponibles:
normal,
fast,
fusion,
lite,
ultra,
swe-2-medium,
swe-2-high,
swe-2-max
is_archived
boolean
défaut:false
on_demand_usage
number | null

Dépenses à la demande (dépassement) en USD pour cette session, hors sessions enfants. Champ renseigné uniquement pour les forfaits Teams ; vaut 0 lorsque la session a été entièrement couverte par le quota. Omis pour les autres forfaits. Renseigné uniquement dans les réponses des endpoints get/list.

origin
enum<string> | null

Origine depuis laquelle la session a été créée.

Options disponibles:
webapp,
slack,
teams,
api,
linear,
jira,
automation,
cli,
desktop,
code_scan,
other
parent_session_id
string | null
playbook_id
string | null
security_profile
SessionSecurityProfileResponse · object | null

L’association au profil de sécurité propre à la session. Renseignée uniquement sur les endpoints get/list.

service_user_id
string | null
status_detail
enum<string> | null

Informations supplémentaires sur le statut actuel de la session. Lorsque status vaut 'running' : 'working' (travaille activement), 'waiting_for_user' (nécessite une saisie de l’utilisateur), 'waiting_for_approval' (en attente d’approbation d’une action en mode sécurisé) ou 'finished' (tâche terminée). Lorsque status vaut 'suspended' : le motif de la suspension, par exemple 'inactivity', 'user_request', 'usage_limit_exceeded', 'out_of_credits', 'out_of_quota', 'no_quota_allocation', 'payment_declined', 'org_usage_limit_exceeded', 'user_usage_limit_exceeded', 'total_session_limit_exceeded', 'contract_expired' ou 'error'. Renseigné uniquement sur les endpoints get/list.

Options disponibles:
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,
user_usage_limit_exceeded,
total_session_limit_exceeded,
contract_expired,
error
structured_output
Structured Output · object | null

Sortie structurée validée provenant de la session. Renseignée uniquement sur les endpoints GET/list.

subcategory
string | null

Nom d’affichage de la sous-catégorie attribuée à la session. 'Other' lorsqu’une catégorie est définie, mais qu’aucune sous-catégorie n’a été attribuée ou résolue. Renseigné uniquement sur les endpoints get/list.

title
string | null
user_id
string | null