TaskWebhook
Stability: beta -- This resource kind ships with
orloj.dev/v1and is suitable for production use, but its schema may evolve with migration guidance in future minor releases.
spec
task_ref(string): template task reference (nameornamespace/name). Mutually exclusive withtask_template.task_template(object): inline task spec used instead of a separate template Task. Mutually exclusive withtask_ref. Fields:system(required),priority,input,max_turns,retry,message_retry.suspend(bool): rejects deliveries whentrue.auth(object):profile(string):generic(default),github,hmac, orshared_token.secret_ref(string): required secret reference (nameornamespace/name).signature_header(string)signature_prefix(string)timestamp_header(string): used bygenericandhmacwith plain header format.max_skew_seconds(int): timestamp tolerance (default300).algorithm(string): HMAC hash algorithm --sha256(default),sha1,sha512. Used withhmacprofile.payload_format(string): HMAC signing input --body,timestamp_dot_body, orprefix_timestamp_body. Used withhmacprofile.payload_prefix(string): literal prefix forprefix_timestamp_bodyformat.payload_separator(string): separator between parts (default.). Used withprefix_timestamp_body.signature_encoding(string):hex(default) orbase64. Used withhmacprofile.header_format(string):plain(default) orkv_pairs. Used withhmacprofile.signature_key(string): key for signature inkv_pairsheader (e.g.,v1for Stripe).timestamp_key(string): key for timestamp inkv_pairsheader (e.g.,tfor Stripe).
idempotency(object):event_id_header(string): header containing unique delivery id.dedupe_window_seconds(int): dedupe TTL.
payload(object):mode(string):raw(v1 only).input_key(string): generated task input key for raw payload.
Defaults and Validation
- Exactly one of
task_refortask_templatemust be set. task_refmust benameornamespace/name.- When
task_templateis set,systemis required;prioritydefaults tonormal; retry/message_retry defaults mirror Task defaults. auth.secret_refis required.auth.profiledefaults togeneric; supported values:generic,github,hmac,shared_token.- profile defaults:
generic:signature_header->X-Signaturesignature_prefix->sha256=timestamp_header->X-Timestampidempotency.event_id_header->X-Event-Id
github:signature_header->X-Hub-Signature-256signature_prefix->sha256=idempotency.event_id_header->X-GitHub-Delivery
hmac:algorithm->sha256,payload_format->body,signature_encoding->hex,header_format->plain,payload_separator->.,idempotency.event_id_header->X-Event-Id.signature_headeris required.timestamp_headerrequired whenpayload_formatuses a timestamp andheader_formatisplain.signature_keyrequired whenheader_formatiskv_pairs.shared_token:signature_headeris required (the header containing the static token).idempotency.event_id_header->X-Event-Id.
auth.max_skew_secondsdefaults to300and must be>= 0.idempotency.dedupe_window_secondsmust be>= 0. Defaults to259200(72 hours) forgithubprofile or86400(24 hours) forgenericprofile.payload.modedefaults torawand onlyrawis allowed in v1.payload.input_keydefaults towebhook_payload.
status
phase,lastError,observedGenerationendpointID,endpointPathlastDeliveryTime,lastEventID,lastTriggeredTaskacceptedCount,duplicateCount,rejectedCount
Example: examples/resources/task-webhooks/*.yaml
See also: Task webhook concepts.