sessões — Brabo API

Brabo API

Lista as sessões do projeto

Request

Cada item traz technical: true só para a sessão aberta pelo provisionamento do repositório (ligada por repo_bootstraps).

Security
bearer
Path
projectIdstringrequired
GET
/projects/{projectId}/sessions
Payload
// No request payload

Responses

Bodyapplication/json
Array [
idstringrequired

O ULID da sessão.

Example:"01JC4Z8QK3M7YV2N5T9B0PXHRA"
projectIdstringrequired
Example:"01JC4Z0000PROJETO0000000001"
createdBystringrequired

Quem abriu a sessão.

Example:"01JC4Z0000USUARIO0000000001"
statusstringrequired

Máquina de estados explícita: created → active → closing → closed | closed_abnormally. Transição inválida responde 409.

Enum:"created""active""closing""closed""closed_abnormally"
Example:"active"
kindstringrequired

A INTENÇÃO com que a sessão foi aberta, escolhida na criação e imutável. consultiva é só conversa; criativa produz e é a única que entra em execução. Não confundir com o estado de execução, que continua sendo o evento execution.activated no log.

Enum:"consultiva""criativa"
Example:"criativa"
nameobject or nullrequired

Nome amigável, ou null. As telas o compõem com a hashtag do id; ele nunca a substitui.

Example:"Cart checkout"
nextSeqnumberrequired

Próximo seq do event log. Serve de cursor: ?afterSeq=41 busca tudo depois do 41.

Example:42
createdAtstring, (date-time)required
Example:"2026-07-27T14:03:22.187Z"
updatedAtstring, (date-time)required
Example:"2026-07-27T14:31:09.004Z"
closedAtobject or null, (date-time)required

Só preenchido em estados terminais.

Example:null
terminationReasonobject or nullrequired

Motivo relatado pelo engine ao encerrar (heartbeat_timeout, conversation_idle_timeout, killed, exception…). null num fechamento humano ou numa sessão ainda viva.

Example:null
traceParentobject or nullrequired

traceparent W3C do span raiz. É assim que a sessão inteira é recuperada no Tempo.

Example:"00-4bf92f3577b34da6a3ce929d0e0e4736-00f067aa0ba902b7-01"
technicalbooleanrequired

Se esta é a sessão TÉCNICA aberta pelo provisionamento do repositório (a ligada por repo_bootstraps), em oposição a uma sessão de trabalho. É o vínculo, nunca o nome: renomear a sessão não o muda. Telas que escolhem "a sessão mais recente" a pulam, a menos que seja a única.

Example:false
]
Response
[ { "id": "01JC4Z8QK3M7YV2N5T9B0PXHRA", "projectId": "01JC4Z0000PROJETO0000000001", "createdBy": "01JC4Z0000USUARIO0000000001", "status": "active", "kind": "criativa", "name": "Cart checkout", "nextSeq": 42, "createdAt": "2026-07-27T14:03:22.187Z", "updatedAt": "2026-07-27T14:31:09.004Z", "closedAt": null, "terminationReason": null, "traceParent": "00-4bf92f3577b34da6a3ce929d0e0e4736-00f067aa0ba902b7-01", "technical": false } ]