Skip to main content
POST
Criar sessão

Permissões

Requer um usuário de serviço com a permissão ManageOrgSessions no nível da organização.

Permissões adicionais para recursos avançados

Modo Devin

O parâmetro devin_mode controla qual modo do agente Devin é usado na sessão: Quando omitido, a sessão usa o modo padrão da organização. O modo rápido está sujeito às mesmas restrições de feature flag e de prévia do agente no Enterprise que o app web.

Impersonação de usuário

O parâmetro create_as_user_id permite criar uma sessão em nome de outro usuário. Para isso, é necessário que:
  1. O usuário de serviço tenha a permissão ImpersonateOrgSessions
  2. O usuário de destino seja membro da organização
  3. O usuário de destino tenha a permissão UseDevinSessions

Autorizações

Authorization
string
header
obrigatório

Credencial de usuário de serviço (prefixo: cog_)

Parâmetros de caminho

org_id
string | null
obrigatório

ID da organização (prefixo: org-)

Exemplo:

"org-abc123def456"

Parâmetros de consulta

devin_id
string | null

Corpo

application/json
prompt
string
obrigatório
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

Substitui o modo Agent do Devin para a sessão. 'normal' usa o modo Agent padrão, 'fast' usa o modo Fast, 'lite' usa Devin Lite, 'ultra' usa Devin Ultra e 'fusion' usa Fusion. Os modos de prévia estão sujeitos à mesma feature flag e às mesmas restrições de prévia do agente Enterprise que o app web.

Opções disponíveis:
normal,
fast,
lite,
ultra,
fusion
knowledge_ids
string[] | null
max_acu_limit
integer | null
platform
string | null

Substitui a plataforma da VM da sessão (por exemplo, 'windows') ou o nome de um pool do outpost (BYOB) para executar a sessão em uma das suas próprias máquinas. Quando omitido (ou definido como 'inherit'), uma sessão criada por um Devin pai herda a alocação do pai — tanto a plataforma quanto o pool do outpost; assim, um pai alocado em um outpost gera filhos no mesmo pool; caso contrário, o padrão da organização é usado. Qualquer valor deve corresponder a uma plataforma configurada para sua organização ou ao nome de um pool do outpost (sem diferenciar maiúsculas de minúsculas) — plataformas nativas têm prioridade quando um nome corresponde a ambos. Valores não reconhecidos são rejeitados com um erro 400 cujo corpo lista os rótulos de plataforma disponíveis e os nomes de pools do outpost da org.

playbook_id
string | null
repos
string[] | null
resumable
boolean
padrão:true

Se o estado da VM da sessão deve ser preservado após ser interrompida, para que a sessão possa ser retomada. Defina como false para sessões descartáveis.

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

Quando verdadeiro (padrão), o agente DEVE chamar provide_structured_output com is_final=true antes do fim do seu turno. Quando falso, a ferramenta fica disponível, mas não é obrigatória — não há garantia de que será chamada em um determinado turno.

structured_output_schema
Structured Output Schema · object | null

JSON Schema (Draft 7) usado para validar a saída estruturada. Máx. 64 KB. Deve ser autocontido (sem $ref externos).

tags
string[] | null
title
string | null

Resposta

Resposta com sucesso

acus_consumed
number
obrigatório
created_at
integer
obrigatório
org_id
string
obrigatório
pull_requests
SessionPullRequest · object[]
obrigatório
session_id
string
obrigatório
status
enum<string>
obrigatório
Opções disponíveis:
new,
claimed,
running,
exit,
error,
suspended,
resuming
tags
string[]
obrigatório
updated_at
integer
obrigatório
url
string
obrigatório
category
enum<string> | null

A categoria de caso de uso atribuída à sessão, se a categorização tiver sido executada. Preenchida apenas nos endpoints get/list.

Opções disponíveis:
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
is_archived
boolean
padrão:false
origin
enum<string> | null

A origem em que a sessão foi criada.

Opções disponíveis:
webapp,
slack,
teams,
api,
linear,
jira,
automation,
cli,
desktop,
code_scan,
other
parent_session_id
string | null
playbook_id
string | null
service_user_id
string | null
status_detail
enum<string> | null

Detalhe adicional sobre o status atual da sessão. Quando o status é 'running': 'working' (trabalhando ativamente), 'waiting_for_user' (requer entrada do usuário), 'waiting_for_approval' (aguardando aprovação da ação no modo seguro) ou 'finished' (tarefa concluída). Quando o status é 'suspended': o motivo da suspensão, como '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' ou 'error'. Preenchido apenas nos endpoints get/list.

Opções disponíveis:
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 | null

Saída estruturada validada da sessão. Preenchido apenas em endpoints GET/list.

subcategory
string | null

O nome de exibição da subcategoria atribuída à sessão. 'Other' quando uma categoria estiver definida, mas nenhuma subcategoria tiver sido atribuída ou resolvida. Preenchido apenas nos endpoints get/list.

title
string | null
user_id
string | null