API calls for all endpoints tagged Webhooks.
Summary
Functions
Create a webhook endpoint Creates a webhook endpoint. The signing secret is generated by the server and returned once in the response — it cannot be supplied and cannot be retrieved again afterwards.
Delete a webhook endpoint
Get a webhook endpoint
List delivery history Returns one page of delivery-attempt history for an endpoint, newest first.
List webhook endpoints Returns webhook endpoints, optionally filtered by search text, subscribed event, and disabled status. Signing secrets are never included and custom header values are redacted.
Re-queue a delivery Re-queues the delivery a history record belongs to, under its original webhook-id so receivers can deduplicate the replay.
Rotate a webhook signing secret Generates a new signing secret for the endpoint and returns it once. The previous secret stops verifying immediately — there is no grace window, so update your receiver in the same change.
Send a test delivery Sends a sample signed delivery for the chosen event through the production signing path.
Update a webhook endpoint Updates a webhook endpoint. The signing secret is immutable here — use the rotate-secret endpoint to change it.
Functions
@spec create_webhook_endpoint( Tesla.Env.client(), ExBifrost.Model.WebhookEndpointRequest.t(), keyword() ) :: {:ok, ExBifrost.Model.WebhookEndpointWithSecret.t()} | {:ok, ExBifrost.Model.BifrostError.t()} | {:error, Tesla.Env.t()}
Create a webhook endpoint Creates a webhook endpoint. The signing secret is generated by the server and returned once in the response — it cannot be supplied and cannot be retrieved again afterwards.
Parameters
connection(ExBifrost.Connection): Connection to serverwebhook_endpoint_request(WebhookEndpointRequest):opts(keyword): Optional parameters
Returns
{:ok, ExBifrost.Model.WebhookEndpointWithSecret.t}on success{:error, Tesla.Env.t}on failure
@spec delete_webhook_endpoint(Tesla.Env.client(), String.t(), keyword()) :: {:ok, ExBifrost.Model.WebhookStatusResponse.t()} | {:ok, ExBifrost.Model.BifrostError.t()} | {:error, Tesla.Env.t()}
Delete a webhook endpoint
Parameters
connection(ExBifrost.Connection): Connection to serverid(String.t): The webhook endpoint id.opts(keyword): Optional parameters
Returns
{:ok, ExBifrost.Model.WebhookStatusResponse.t}on success{:error, Tesla.Env.t}on failure
@spec get_webhook_endpoint(Tesla.Env.client(), String.t(), keyword()) :: {:ok, ExBifrost.Model.BifrostError.t()} | {:ok, ExBifrost.Model.WebhookEndpoint.t()} | {:error, Tesla.Env.t()}
Get a webhook endpoint
Parameters
connection(ExBifrost.Connection): Connection to serverid(String.t): The webhook endpoint id.opts(keyword): Optional parameters
Returns
{:ok, ExBifrost.Model.WebhookEndpoint.t}on success{:error, Tesla.Env.t}on failure
@spec list_webhook_deliveries(Tesla.Env.client(), String.t(), keyword()) :: {:ok, ExBifrost.Model.WebhookDeliveryList.t()} | {:ok, ExBifrost.Model.BifrostError.t()} | {:error, Tesla.Env.t()}
List delivery history Returns one page of delivery-attempt history for an endpoint, newest first.
Parameters
connection(ExBifrost.Connection): Connection to serverid(String.t): The webhook endpoint id.opts(keyword): Optional parameters:limit(integer())::offset(integer()):
Returns
{:ok, ExBifrost.Model.WebhookDeliveryList.t}on success{:error, Tesla.Env.t}on failure
@spec list_webhook_endpoints( Tesla.Env.client(), keyword() ) :: {:ok, ExBifrost.Model.BifrostError.t()} | {:ok, ExBifrost.Model.WebhookEndpointList.t()} | {:error, Tesla.Env.t()}
List webhook endpoints Returns webhook endpoints, optionally filtered by search text, subscribed event, and disabled status. Signing secrets are never included and custom header values are redacted.
Parameters
connection(ExBifrost.Connection): Connection to serveropts(keyword): Optional parameters:search(String.t): Case-insensitive match against endpoint name or URL.:event(String.t): Comma-separated events; returns endpoints subscribed to any of them.:disabled(boolean()): Filter by disabled status. Omit for no filter.:limit(integer())::offset(integer()):
Returns
{:ok, ExBifrost.Model.WebhookEndpointList.t}on success{:error, Tesla.Env.t}on failure
@spec redeliver_webhook(Tesla.Env.client(), String.t(), keyword()) :: {:ok, ExBifrost.Model.RedeliverWebhookResponse.t()} | {:ok, ExBifrost.Model.BifrostError.t()} | {:error, Tesla.Env.t()}
Re-queue a delivery Re-queues the delivery a history record belongs to, under its original webhook-id so receivers can deduplicate the replay.
Parameters
connection(ExBifrost.Connection): Connection to serverid(String.t): The delivery history record id to re-queue.opts(keyword): Optional parameters
Returns
{:ok, ExBifrost.Model.RedeliverWebhookResponse.t}on success{:error, Tesla.Env.t}on failure
@spec rotate_webhook_endpoint_secret(Tesla.Env.client(), String.t(), keyword()) :: {:ok, ExBifrost.Model.WebhookEndpointWithSecret.t()} | {:ok, ExBifrost.Model.BifrostError.t()} | {:error, Tesla.Env.t()}
Rotate a webhook signing secret Generates a new signing secret for the endpoint and returns it once. The previous secret stops verifying immediately — there is no grace window, so update your receiver in the same change.
Parameters
connection(ExBifrost.Connection): Connection to serverid(String.t): The webhook endpoint id.opts(keyword): Optional parameters
Returns
{:ok, ExBifrost.Model.WebhookEndpointWithSecret.t}on success{:error, Tesla.Env.t}on failure
@spec test_webhook_endpoint( Tesla.Env.client(), String.t(), ExBifrost.Model.TestWebhookRequest.t(), keyword() ) :: {:ok, ExBifrost.Model.BifrostError.t()} | {:ok, ExBifrost.Model.TestWebhookResponse.t()} | {:error, Tesla.Env.t()}
Send a test delivery Sends a sample signed delivery for the chosen event through the production signing path.
Parameters
connection(ExBifrost.Connection): Connection to serverid(String.t): The webhook endpoint id.test_webhook_request(TestWebhookRequest):opts(keyword): Optional parameters
Returns
{:ok, ExBifrost.Model.TestWebhookResponse.t}on success{:error, Tesla.Env.t}on failure
@spec update_webhook_endpoint( Tesla.Env.client(), String.t(), ExBifrost.Model.WebhookEndpointRequest.t(), keyword() ) :: {:ok, ExBifrost.Model.BifrostError.t()} | {:ok, ExBifrost.Model.WebhookEndpoint.t()} | {:error, Tesla.Env.t()}
Update a webhook endpoint Updates a webhook endpoint. The signing secret is immutable here — use the rotate-secret endpoint to change it.
Parameters
connection(ExBifrost.Connection): Connection to serverid(String.t): The webhook endpoint id.webhook_endpoint_request(WebhookEndpointRequest):opts(keyword): Optional parameters
Returns
{:ok, ExBifrost.Model.WebhookEndpoint.t}on success{:error, Tesla.Env.t}on failure