> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kayle.id/llms.txt
> Use this file to discover all available pages before exploring further.

# List webhook deliveries



## OpenAPI

````yaml /api-reference/openapi.json get /v1/webhooks/deliveries
openapi: 3.1.0
info:
  title: Kayle ID
  version: 1.5.0
  description: Privacy-first identity verification.
  license:
    name: Apache License 2.0
    url: https://github.com/kayleai/kayle-id/blob/main/LICENSE
  contact:
    name: Kayle ID
    url: https://kayle.id
    email: help@kayle.id
  termsOfService: https://kayle.id/terms
servers:
  - url: http://127.0.0.1:8787
    description: ''
security:
  - bearerAuth: []
paths:
  /v1/webhooks/deliveries:
    get:
      tags:
        - Webhooks
      summary: List webhook deliveries
      parameters:
        - schema:
            type: string
            enum:
              - pending
              - delivering
              - succeeded
              - failed
            description: Filter webhook deliveries by status.
          required: false
          description: Filter webhook deliveries by status.
          name: status
          in: query
        - schema:
            type: string
            minLength: 1
            maxLength: 128
            pattern: ^[A-Za-z0-9_-]+$
            description: Filter webhook deliveries by webhook endpoint ID.
          required: false
          description: Filter webhook deliveries by webhook endpoint ID.
          name: endpoint_id
          in: query
        - schema:
            type: string
            minLength: 1
            maxLength: 128
            pattern: ^[A-Za-z0-9_-]+$
            description: Filter webhook deliveries by event ID.
          required: false
          description: Filter webhook deliveries by event ID.
          name: event_id
          in: query
        - schema:
            type: integer
            minimum: 1
            maximum: 100
            description: >-
              Maximum number of webhook deliveries to return. Defaults to 10 if
              not specified.
          required: false
          description: >-
            Maximum number of webhook deliveries to return. Defaults to 10 if
            not specified.
          name: limit
          in: query
        - schema:
            type: string
            minLength: 1
            maxLength: 128
            pattern: ^[A-Za-z0-9_-]+$
            description: >-
              Cursor of the last item from the previous page. When provided, the
              next page of results will be returned.
          required: false
          description: >-
            Cursor of the last item from the previous page. When provided, the
            next page of results will be returned.
          name: starting_after
          in: query
      responses:
        '200':
          description: >-
            Retrieve webhook deliveries for the organization with optional
            filters and cursor-based pagination.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/Webhook Delivery'
                  error:
                    type: 'null'
                  pagination:
                    $ref: '#/components/schemas/Pagination'
                required:
                  - data
                  - error
                  - pagination
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: 'null'
                    description: Empty data object.
                  error:
                    type:
                      - object
                      - 'null'
                    properties:
                      code:
                        type: string
                        description: The error code
                      message:
                        type: string
                        description: The error message
                      hint:
                        type: string
                        description: A hint to help the user fix the error
                      docs:
                        type: string
                        description: A link to the documentation for the error
                    required:
                      - code
                      - message
                      - hint
                      - docs
                  pagination:
                    type: object
                    properties:
                      limit:
                        type: number
                      has_more:
                        type: boolean
                        enum:
                          - false
                      next_cursor:
                        type: 'null'
                    required:
                      - limit
                      - has_more
                      - next_cursor
                required:
                  - data
                  - error
                  - pagination
              example:
                data: null
                error:
                  code: INTERNAL_SERVER_ERROR
                  message: An unexpected error occurred
                  hint: Please try again later
                  docs: https://docs.kayle.id/errors/internal-server-error
                pagination:
                  limit: 10
                  has_more: false
                  next_cursor: null
      security:
        - bearerAuth: []
components:
  schemas:
    Webhook Delivery:
      type: object
      properties:
        id:
          type: string
          description: Webhook delivery ID
        event_id:
          type: string
          description: Event ID
        webhook_endpoint_id:
          type: string
          description: The ID of the webhook endpoint this delivery targets
        webhook_encryption_key_id:
          type:
            - string
            - 'null'
          description: >-
            The ID of the encryption key used to encrypt the payload for this
            delivery
        status:
          type: string
          enum:
            - pending
            - delivering
            - succeeded
            - failed
          description: The status of the webhook delivery
        attempt_count:
          type: number
          description: The number of attempts made to deliver the webhook
        next_attempt_at:
          type:
            - string
            - 'null'
          description: >-
            The next time this delivery should be attempted, or null if ready to
            send.
        payload_expires_at:
          type:
            - string
            - 'null'
          description: When the encrypted payload expires for manual retry/replay.
        payload_scrubbed_at:
          type:
            - string
            - 'null'
          description: When the encrypted payload was scrubbed, if no longer stored.
        payload_retention_reason:
          type:
            - string
            - 'null'
          enum:
            - pending_delivery
            - delivered
            - terminal_failure_retention
            - expired
            - no_active_key
            - jwe_creation_failed
            - privacy_request
          description: Why the payload is retained or why it was scrubbed.
        last_status_code:
          type:
            - number
            - 'null'
          description: The last HTTP status code received from the endpoint, if any.
        last_attempt_at:
          type:
            - string
            - 'null'
          description: The time the last delivery attempt was made, if any.
        created_at:
          type: string
          description: The time the delivery was created
        updated_at:
          type: string
          description: The time the delivery was last updated
      required:
        - id
        - event_id
        - webhook_endpoint_id
        - webhook_encryption_key_id
        - status
        - attempt_count
        - next_attempt_at
        - payload_expires_at
        - payload_scrubbed_at
        - payload_retention_reason
        - last_status_code
        - last_attempt_at
        - created_at
        - updated_at
    Pagination:
      type: object
      properties:
        limit:
          type: number
          description: The maximum number of items returned.
          example: 10
        has_more:
          type: boolean
          description: Whether there are more items available after this page.
          example: false
        next_cursor:
          type:
            - string
            - 'null'
          description: >-
            Cursor to use as `starting_after` to fetch the next page of results,
            or null if there are no more items.
          example: null
      required:
        - limit
        - has_more
        - next_cursor
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````