v6

latestOpenAPI 3.1.0raw.githubusercontent.com2026-08-01485121699.8 KB

Generic Webhook

Create a task directly from a generic inbound webhook payload.

The endpoint is intentionally small and separate from the trigger-manager flow: callers POST a task-shaped payload and Bernstein creates one task. BERNSTEIN_WEBHOOK_SECRET must be configured (fail-closed; ) and each request must carry a fresh X-Bernstein-Timestamp header plus a matching X-Bernstein-Webhook-Signature-256 HMAC over f"{timestamp}.".encode() + body. The plaintext X-Bernstein-Webhook-Secret fallback has been removed; callers relying on it must upgrade to the HMAC + timestamp flow.

Automation bridge (#2512): an admitted trigger returns a signed, chain-anchored trigger receipt in receipt so the calling platform holds a proof of what it asked for rather than a bare task reference. A trigger that fails authentication, or that replays a trigger id already admitted, is refused with its own signed refusal receipt (HTTP 401 and 409 respectively) -- the negative path leaves a record, never a silent drop.

post/webhook

Request body

titlestring required
descriptionstring required
rolestring
tenant_idstring
priorityinteger
scopestring
complexitystring
eu_ai_act_riskstring
approval_requiredboolean
risk_levelstring
estimated_minutesinteger nullable
depends_onstring[]
parent_task_idstring nullable
depends_on_repostring nullable
owned_filesstring[]
cell_idstring nullable
repostring nullable
task_typestring
upgrade_detailsobject nullable
modelstring nullable
effortstring nullable
clistring nullable
batch_eligibleboolean
slack_contextobject nullable
metadataobject
deadlinenumber nullable
parent_session_idstring nullable
parent_contextstring nullable
retry_countinteger nullable
max_retriesinteger nullable
retry_delay_snumber nullable
terminal_reasonstring nullable
max_output_tokensinteger nullable
meta_messagesstring[] nullable
max_turnsinteger nullable

Response

Successful Response

receiptobject nullable