We use cookies

We use cookies to ensure you get the best experience on our website. For more information on how we use cookies, please see our cookie policy.

By clicking "Accept", you agree to our use of cookies.
Learn more.

ReferencePython SDKFeature ClientsWebhooks

Webhooks Client

Bases: BaseRestClient

The webhooks client provides methods for managing incoming webhooks in Hatchet.

Webhooks allow external systems to trigger Hatchet workflows by sending HTTP requests to dedicated endpoints. This enables real-time integration with third-party services like GitHub, Stripe, Slack, or any system that can send webhook events.

Methods:

NameDescription
aio_createCreate a new webhook.
aio_deleteDelete a webhook by its name.
aio_getGet a webhook by its name.
aio_listList webhooks for a given tenant.
aio_updateUpdate a webhook by its name.
createCreate a new webhook.
deleteDelete a webhook by its name.
getGet a webhook by its name.
listList webhooks for a given tenant.
updateUpdate a webhook by its name.

Functions

aio_create

Create a new webhook.

Parameters:

NameTypeDescriptionDefault
source_nameV1WebhookSourceNameThe source name identifying the external system sending webhook events.required
namestrThe name of the webhook.required
event_key_expressionstrA CEL expression used to extract the event key from the incoming payload.required
authV1WebhookBasicAuth | V1WebhookAPIKeyAuth | V1WebhookHMACAuthThe authentication configuration for the webhook (basic auth, API key, or HMAC).required
scope_expressionstr | NoneAn optional CEL expression used to extract the scope from the incoming payload.None
static_payloaddict[str, Any] | NoneAn optional static payload to merge into every triggered event.None

Returns:

TypeDescription
V1WebhookThe created webhook.

aio_delete

Delete a webhook by its name.

Parameters:

NameTypeDescriptionDefault
webhook_namestrThe name of the webhook to delete.required

Returns:

TypeDescription
V1WebhookThe deleted webhook.

aio_get

Get a webhook by its name.

Parameters:

NameTypeDescriptionDefault
webhook_namestrThe name of the webhook to retrieve.required

Returns:

TypeDescription
V1WebhookThe webhook with the specified name.

aio_list

List webhooks for a given tenant.

Parameters:

NameTypeDescriptionDefault
limitint | NoneThe maximum number of webhooks to return.None
offsetint | NoneThe number of webhooks to skip before starting to collect the result set.None
webhook_nameslist[str] | NoneA list of webhook names to filter by.None
source_nameslist[V1WebhookSourceName] | NoneA list of source names to filter by.None

Returns:

TypeDescription
V1WebhookListA list of webhooks matching the specified criteria.

aio_update

Update a webhook by its name.

Parameters:

NameTypeDescriptionDefault
webhook_namestrThe name of the webhook to update.required
event_key_expressionstr | NoneAn updated CEL expression used to extract the event key from the incoming payload.None
scope_expressionstr | NoneAn updated CEL expression used to extract the scope from the incoming payload.None
static_payloaddict[str, Any] | NoneAn updated static payload to merge into every triggered event.None

Returns:

TypeDescription
V1WebhookThe updated webhook.

create

Create a new webhook.

Parameters:

NameTypeDescriptionDefault
source_nameV1WebhookSourceNameThe source name identifying the external system sending webhook events.required
namestrThe name of the webhook.required
event_key_expressionstrA CEL expression used to extract the event key from the incoming payload.required
authV1WebhookBasicAuth | V1WebhookAPIKeyAuth | V1WebhookHMACAuthThe authentication configuration for the webhook (basic auth, API key, or HMAC).required
scope_expressionstr | NoneAn optional CEL expression used to extract the scope from the incoming payload.None
static_payloaddict[str, Any] | NoneAn optional static payload to merge into every triggered event.None

Returns:

TypeDescription
V1WebhookThe created webhook.

delete

Delete a webhook by its name.

Parameters:

NameTypeDescriptionDefault
webhook_namestrThe name of the webhook to delete.required

Returns:

TypeDescription
V1WebhookThe deleted webhook.

get

Get a webhook by its name.

Parameters:

NameTypeDescriptionDefault
webhook_namestrThe name of the webhook to retrieve.required

Returns:

TypeDescription
V1WebhookThe webhook with the specified name.

list

List webhooks for a given tenant.

Parameters:

NameTypeDescriptionDefault
limitint | NoneThe maximum number of webhooks to return.None
offsetint | NoneThe number of webhooks to skip before starting to collect the result set.None
webhook_nameslist[str] | NoneA list of webhook names to filter by.None
source_nameslist[V1WebhookSourceName] | NoneA list of source names to filter by.None

Returns:

TypeDescription
V1WebhookListA list of webhooks matching the specified criteria.

update

Update a webhook by its name.

Parameters:

NameTypeDescriptionDefault
webhook_namestrThe name of the webhook to update.required
event_key_expressionstr | NoneAn updated CEL expression used to extract the event key from the incoming payload.None
scope_expressionstr | NoneAn updated CEL expression used to extract the scope from the incoming payload.None
static_payloaddict[str, Any] | NoneAn updated static payload to merge into every triggered event.None

Returns:

TypeDescription
V1WebhookThe updated webhook.