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

# List webhook deliveries

> Requires `webhook-deliveries:read`. See [Webhook deliveries behavior](/developer-documentation/api/webhooks) and [common API rules](/developer-documentation/api/overview).

Requires `webhook-deliveries:read`. See the [webhook deliveries guide](https://www.referly.so/docs/developer-documentation/api/webhooks.md) for behavior and examples.


## OpenAPI

````yaml GET /webhook-deliveries
openapi: 3.0.3
info:
  title: Referly API
  description: >-
    REST API for affiliates, referrals, sales, links, coupons, programs, groups,
    commission plans, commissions, adjustments, balances, payouts, analytics and
    webhooks. Send Authorization: Bearer <YOUR_API_KEY>. Keys have resource
    permissions and optional expiry. Requests default to the key’s original
    program; operational endpoints also support X-Program-Id for a program
    created by that exact key. See the authentication and operational API guides
    for scope, pagination, errors and retry behavior.
  version: 1.0.0
servers:
  - url: https://www.referly.so/api/v1
security:
  - bearerAuth: []
paths:
  /webhook-deliveries:
    get:
      tags:
        - webhook-deliveries
      summary: List webhook deliveries
      description: >-
        Requires `webhook-deliveries:read`. See [Webhook deliveries
        behavior](/developer-documentation/api/webhooks) and [common API
        rules](/developer-documentation/api/overview).
      operationId: get_webhook_deliveries
      parameters:
        - name: limit
          in: query
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
            default: 50
        - name: cursor
          in: query
          required: false
          schema:
            type: string
        - name: endpointId
          in: query
          required: false
          schema:
            type: string
        - name: status
          in: query
          required: false
          schema:
            type: integer
            minimum: 0
            maximum: 3
            description: Provider attempt status; endpointId required on list.
        - name: X-Program-Id
          in: header
          required: false
          description: >-
            Select the key's original program or a program provisioned by this
            exact key. Other owned programs remain inaccessible.
          schema:
            type: string
      responses:
        '200':
          description: >-
            Success. Monetary amounts use program currency; see companion
            documentation for resource fields.
          content:
            application/json:
              schema:
                oneOf:
                  - type: object
                    required:
                      - data
                      - nextCursor
                    properties:
                      data:
                        type: array
                        items: 0ed9e99a-b2da-48e1-8091-887a29f77ba5
                      nextCursor:
                        type: string
                        nullable: true
                  - type: object
                    required:
                      - data
                      - nextCursor
                    properties:
                      data:
                        type: array
                        items: 60e7a5fd-4c22-4cea-8ba2-1d5c3114561e
                      nextCursor:
                        type: string
                        nullable: true
              examples:
                messages:
                  summary: Without endpointId
                  value:
                    data:
                      - id: msg_acme_20260930_01
                        eventId: evt_20260930_01
                        eventType: commission.created
                        channels:
                          - ep_acme_events
                        payload:
                          id: evt_20260930_01
                          programId: prog_acme_partners
                          type: commission.created
                          schemaVersion: 1
                          createdAt: '2026-09-30T10:00:00.000Z'
                          data:
                            commissionId: 4821
                        createdAt: '2026-09-30T10:00:00.000Z'
                    nextCursor: null
                attempts:
                  summary: With endpointId
                  value:
                    data:
                      - id: attempt_acme_01
                        msgId: msg_acme_20260930_01
                        endpointId: ep_acme_events
                        status: 0
                        statusCode: 200
                        timestamp: '2026-09-30T10:00:02.000Z'
                        url: https://hooks.acme.example/referly
                        request:
                          body: '{\"type\":\"commission.created\"}'
                          headers:
                            Content-Type: application/json
                        response:
                          body: accepted
                          headers:
                            Content-Type: text/plain
                        nextAttempt: null
                    nextCursor: null
        '400':
          description: Malformed JSON
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                error:
                  code: invalid_json
                  message: Invalid JSON body
                  requestId: 5c1f7a2e-2b39-4c2d-9c31-7a6e0f6a9b21
        '401':
          description: Invalid credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                error:
                  code: unauthorized
                  message: Invalid, expired or revoked API key
                  requestId: 5c1f7a2e-2b39-4c2d-9c31-7a6e0f6a9b21
        '403':
          description: Scope or entitlement denied
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                error:
                  code: insufficient_scope
                  message: Requires webhook-deliveries:read
                  requestId: 5c1f7a2e-2b39-4c2d-9c31-7a6e0f6a9b21
        '404':
          description: Not found within this program
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                error:
                  code: not_found
                  message: Resource not found
                  requestId: 5c1f7a2e-2b39-4c2d-9c31-7a6e0f6a9b21
        '409':
          description: State or idempotency conflict
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                error:
                  code: concurrent_request
                  message: Concurrent operation; retry the same request
                  requestId: 5c1f7a2e-2b39-4c2d-9c31-7a6e0f6a9b21
        '413':
          description: Body too large
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                error:
                  code: body_too_large
                  message: Request body must be at most 64 KiB
                  requestId: 5c1f7a2e-2b39-4c2d-9c31-7a6e0f6a9b21
        '422':
          description: Validation failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                error:
                  code: endpoint_required
                  message: status filtering requires endpointId
                  requestId: 5c1f7a2e-2b39-4c2d-9c31-7a6e0f6a9b21
        '429':
          description: Rate limit exceeded; observe Retry-After
          content:
            application/json:
              schema:
                $ref: f48d42e5-fe37-407f-b348-be8b1adae0be
              example:
                error: Too many requests. Please slow down.
                retryAfter: 42
        '500':
          description: Internal failure
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                error:
                  code: internal_error
                  message: Request failed
                  requestId: 5c1f7a2e-2b39-4c2d-9c31-7a6e0f6a9b21
        '502':
          description: Webhook provider failure
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                error:
                  code: webhook_provider_error
                  message: >-
                    Webhook provider request failed; retry with the same
                    idempotency key
                  requestId: 5c1f7a2e-2b39-4c2d-9c31-7a6e0f6a9b21
components:
  schemas:
    Error:
      type: object
      properties:
        error:
          type: string
          description: Human readable description of what went wrong
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.