Webhooks

envless.webhooks.list_all_deliveries()

Collect every delivery attempt into one list

def list_all_deliveries(
    id: str,
    *,
    limit: int | None = None,
    offset: int | None = None,
    status: str | None = None,
    timeout: float | None = None,
) -> list[WebhookDeliveryResource]

Walks every page of one endpoint delivery log and returns a flat list. Unlike the endpoint list, this collection has no small cap: a busy endpoint accumulates deliveries indefinitely, so narrow with status= or reach for iterate_deliveries when you only need the first few matches.

The pagination envelope is dropped, so totalCount is gone. responseBody is absent from every row here as well, exactly as in list_deliveries.

Example

from envless import envless

failed = envless.webhooks.list_all_deliveries(
    '0194f2b1-9c3a-7c21-8f0e-2b6d4a1c5e90', status='failed'
)

for delivery in failed:
    envless.webhooks.redeliver(
        delivery['webhookId'], delivery['id']
    )

Parameters

ParameterTypeRequiredDescription
idstrYesEndpoint id whose delivery log is walked.
statusstrNoRestricts the walk to one delivery state such as failed.
limitintNoPage size used while walking, capped at 100 and defaulting to 100.
offsetintNoRow the walk starts from, so newer deliveries are left out of the result.
timeoutfloatNoSeconds each attempt of this call may take, the response body included, before it raises EnvlessNetworkError with is_timeout set. Overrides the client's timeout for this call, and 0 turns the limit off.

Returns

list[WebhookDeliveryResource] holding each matching delivery attempt for the endpoint.

Reads the deliveries collection. list returns one page as a dict with items and pagination, list_all collects every page into a list, and iterate yields one item at a time, fetching the next page only when the loop reaches it. On AsyncEnvless, iterate is an async iterator for async for.

Worth knowing

  • Every page is a separate read, so a delivery that retried mid walk can land in the list with a stale status.
  • A failure on any page fails the whole call and the rows already collected are lost.

Required scopes

webhooks:read

Underlying endpoint

GET /webhooks/{id}/deliveries

Request and response schema, every error code, and a live playground.

In TypeScript

envless.webhooks.listAllDeliveries()

The same method in @goenvless/sdk, with the same request, retries and errors.