ações — Brabo API

Brabo API

Lista as ações PENDENTES do projeto inteiro, de qualquer sessão

Request

status é pending (o padrão) ou failed. actionType filtra por tipo — ex.: git_merge, para a aba de PRs achar a proposta de merge de uma PR sem saber qual sessão a criou. status=failed EXIGE actionType e lista as ações cuja execução falhou — a aba de PRs lê dali o último merge recusado de cada PR (conflito de merge traz executionResult.conflictingFiles).

Security
bearer
Path
projectIdstringrequired
Query
statusstring
Example:status=pending
actionTypestring
Example:actionType=git_merge
GET
/projects/{projectId}/actions
Payload
// No request payload

Responses

Bodyapplication/json
Array [
idstringrequired

ULID da ação.

Example:"01JC4Z8QK3M7YV2N5T9B0PXHRC"
projectIdstringrequired
Example:"01JC4Z0000PROJETO0000000001"
sessionIdstringrequired
Example:"01JC4Z8QK3M7YV2N5T9B0PXHRA"
seqnumberrequired

Ordem da ação dentro da sessão; usada como cursor nas listagens.

Example:7
actionTypestringrequired

O que a ação faria. git_push e git_merge exigem maintainer.

Enum:"terminal""git_commit""git_push""pr_open""spend""git_repo_create""git_branch_create""git_branch_protect""write_file""open_adr_pr""git_merge""open_infra_pr""instruction_patch""parallelize""raise_max_parallel""propose_execution_plan""assess_implementability""container_start""container_stop""container_remove""container_recreate""container_start_via_runner""qa_environment_start"
Example:"terminal"
payloadobjectrequired

Parâmetros da ação, específicos do actionType.

Example:
{ "command": "pnpm test" }
statusstringrequired

Estado no pipeline. auto_approved é distinto de approved de propósito: o log precisa distinguir o que uma pessoa decidiu do que a política liberou.

Enum:"pending""approved""denied""auto_approved""executed""failed"
Example:"pending"
resolvedPolicystringrequired

O que o permissions.json decidiu para esta ação. deny SEMPRE vence allow — nem a autonomia do agente o sobrepõe.

Enum:"auto_approve""require_approval""deny"
Example:"require_approval"
actorobject(ActorResponseDto)required

Quem propôs.

decidedByobject or nullrequired

Id do usuário que aprovou ou recusou. Nunca um agente.

Example:null
decidedAtobject or null, (date-time)required
Example:null
rejectionReasonobject or nullrequired
Example:null
executionResultobject or nullrequired

Resultado da execução, com forma específica de cada actionType — saída e código de saída para terminal, número e URL da PR para os tipos de git. null enquanto a ação não foi executada.

Example:null
createdAtstring, (date-time)required
Example:"2026-07-27T14:33:10.900Z"
updatedAtstring, (date-time)required
Example:"2026-07-27T14:33:10.900Z"
]
Response
[ { "id": "01JC4Z8QK3M7YV2N5T9B0PXHRC", "projectId": "01JC4Z0000PROJETO0000000001", "sessionId": "01JC4Z8QK3M7YV2N5T9B0PXHRA", "seq": 7, "actionType": "terminal", "payload": { "command": "pnpm test" }, "status": "pending", "resolvedPolicy": "require_approval", "actor": { "kind": "agent", "id": "dev-api" }, "decidedBy": null, "decidedAt": null, "rejectionReason": null, "executionResult": null, "createdAt": "2026-07-27T14:33:10.900Z", "updatedAt": "2026-07-27T14:33:10.900Z" } ]