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

# List webhooks for a webhook subscription

> Retrieve all fired webhooks for a specific webhook subscription with comprehensive filtering and pagination support. Returns webhook delivery history including topics, attempts, request/response details, and delivery status over a rolling 30-day period. Supports filtering by resource ID, date ranges, and pagination parameters for detailed webhook delivery analysis. Critical for debugging webhook delivery issues and monitoring event notification success rates.



## OpenAPI

````yaml get /webhook-subscriptions/{id}/webhooks
openapi: 3.1.0
info:
  title: Dwolla API
  description: Dwolla API Documentation
  contact:
    name: Dwolla Developer Relations Team
    url: https://developers.dwolla.com
    email: api@dwolla.com
  version: '2.0'
  termsOfService: https://www.dwolla.com/legal/tos/
  license:
    name: MIT
    url: https://github.com/Dwolla/dwolla-openapi/blob/master/LICENSE
servers:
  - url: https://api.dwolla.com
    description: Production server
  - url: https://api-sandbox.dwolla.com
    description: Sandbox server
security:
  - clientCredentials: []
tags:
  - name: tokens
    description: Operations related to Application Access Tokens
  - name: root
    description: Root API operations
  - name: accounts
    description: Operations related to Accounts
  - name: customers
    description: Operations related to Customers
  - name: kba
    description: Operations related to Knowledge-Based Authentication
  - name: beneficial owners
    description: Operations related to Beneficial Owners
  - name: documents
    description: Operations related to Documents
  - name: exchanges
    description: Operations related to Exchanges
  - name: exchange sessions
    description: Operations related to Exchange Sessions
  - name: funding sources
    description: Operations related to Funding Sources
  - name: transfers
    description: Operations related to Transfers
  - name: labels
    description: Operations related to Labels
  - name: mass payments
    description: Operations related to Mass Payments
  - name: events
    description: Operations related to Events
  - name: webhook subscriptions
    description: Operations related to Webhook Subscriptions
  - name: webhooks
    description: Operations related to Webhooks
  - name: client tokens
    description: Operations related to Client Tokens
  - name: sandbox simulations
    description: Sandbox-only operations for simulating processing of bank transfers
paths:
  /webhook-subscriptions/{id}/webhooks:
    get:
      tags:
        - webhook subscriptions
      summary: List webhooks for a webhook subscription
      description: >-
        Retrieve all fired webhooks for a specific webhook subscription with
        comprehensive filtering and pagination support. Returns webhook delivery
        history including topics, attempts, request/response details, and
        delivery status over a rolling 30-day period. Supports filtering by
        resource ID, date ranges, and pagination parameters for detailed webhook
        delivery analysis. Critical for debugging webhook delivery issues and
        monitoring event notification success rates.
      operationId: listWebhooks
      parameters:
        - name: id
          in: path
          description: Webhook subscription unique identifier
          required: true
          schema:
            type: string
        - name: limit
          in: query
          description: How many results to return
          required: false
          schema:
            type: string
        - name: offset
          in: query
          description: How many results to skip
          required: false
          schema:
            type: string
        - name: startDate
          in: query
          description: >-
            Only include webhooks created after this date. ISO-8601 format
            `YYYY-MM-DD`
          required: false
          schema:
            type: string
        - name: endDate
          in: query
          description: >-
            Only include webhooks created before this date. ISO-8601 format
            `YYYY-MM-DD`
          required: false
          schema:
            type: string
        - $ref: '#/components/parameters/Accept'
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/vnd.dwolla.v1.hal+json:
              schema:
                type: object
                properties:
                  _links:
                    type: object
                    properties:
                      self:
                        type: object
                        properties:
                          href:
                            type: string
                            example: >-
                              https://api.dwolla.com/webhook-subscriptions/a0943041-7a5c-4e8f-92de-b55711ef3a83/webhooks
                      first:
                        type: object
                        properties:
                          href:
                            type: string
                            example: >-
                              https://api.dwolla.com/webhook-subscriptions/a0943041-7a5c-4e8f-92de-b55711ef3a83/webhooks?limit=25&offset=0
                      last:
                        type: object
                        properties:
                          href:
                            type: string
                            example: >-
                              https://api.dwolla.com/webhook-subscriptions/a0943041-7a5c-4e8f-92de-b55711ef3a83/webhooks?limit=25&offset=150
                      next:
                        type: object
                        properties:
                          href:
                            type: string
                            example: >-
                              https://api.dwolla.com/webhook-subscriptions/a0943041-7a5c-4e8f-92de-b55711ef3a83/webhooks?limit=25&offset=25
                  _embedded:
                    type: object
                    properties:
                      webhooks:
                        type: array
                        items:
                          $ref: '#/components/schemas/Webhook'
                  total:
                    type: integer
                    format: int32
                    example: 1
        '403':
          description: Forbidden
          headers: {}
          content:
            application/vnd.dwolla.v1.hal+json:
              schema:
                $ref: '#/components/schemas/ForbiddenError'
        '404':
          description: Not Found
          headers: {}
          content:
            application/vnd.dwolla.v1.hal+json:
              schema:
                $ref: '#/components/schemas/NotFoundError'
      x-codeSamples:
        - lang: bash
          source: >
            GET
            https://api-sandbox.dwolla.com/webhook-subscriptions/10d4133e-b308-4646-b276-40d9d36def1c/webhooks

            Accept: application/vnd.dwolla.v1.hal+json

            Authorization: Bearer
            pBA9fVDBEyYZCEsLf/wKehyh1RTpzjUj5KzIRfDi0wKTii7DqY
        - lang: javascript
          source: >
            // Using dwolla-v2 - https://github.com/Dwolla/dwolla-v2-node

            var webhookSubscriptionUrl =
              "https://api-sandbox.dwolla.com/webhook-subscriptions/5af4c10a-f6de-4ac8-840d-42cb65454216";

            dwolla.get(`${webhookSubscriptionUrl}/webhooks`).then((res) =>
            res.body.total); // => 5
        - lang: python
          source: >
            # Using dwollav2 - https://github.com/Dwolla/dwolla-v2-python

            webhook_subscription_url =
            'https://api-sandbox.dwolla.com/webhook-subscriptions/5af4c10a-f6de-4ac8-840d-42cb65454216'


            hooks = app_token.get('%s/webhooks' % webhook_subscription_url)

            hooks.body['total'] # => 5
        - lang: php
          source: >
            <?php

            // Using dwollaswagger -
            https://github.com/Dwolla/dwolla-swagger-php

            $webhookApi = new DwollaSwagger\WebhooksApi($apiClient);


            $hooks =
            $webhookApi->hooksById('https://api-sandbox.dwolla.com/webhook-subscriptions/5af4c10a-f6de-4ac8-840d-42cb65454216');

            $hooks->total; # => 5

            ?>
        - lang: ruby
          source: >
            # Using dwolla_v2 - https://github.com/Dwolla/dwolla-v2-ruby

            webhook_subscription_url =
            'https://api-sandbox.dwolla.com/webhook-subscriptions/5af4c10a-f6de-4ac8-840d-42cb65454216'


            hooks = app_token.get "#{webhook_subscription_url}/webhooks"

            hooks.total # => 5
components:
  parameters:
    Accept:
      name: Accept
      in: header
      required: true
      description: >-
        The media type of the response. Must be
        application/vnd.dwolla.v1.hal+json
      schema:
        type: string
        enum:
          - application/vnd.dwolla.v1.hal+json
        default: application/vnd.dwolla.v1.hal+json
  schemas:
    Webhook:
      title: Webhook
      type: object
      properties:
        _links:
          type: object
          properties:
            self:
              type: object
              properties:
                href:
                  type: string
                  example: >-
                    https://api.dwolla.com/webhooks/9ece9660-aa34-41eb-80d7-0125d53b45e8
            subscription:
              type: object
              properties:
                href:
                  type: string
                  example: >-
                    https://api.dwolla.com/webhook-subscriptions/a0943041-7a5c-4e8f-92de-b55711ef3a83
            retry:
              type: object
              properties:
                href:
                  type: string
                  example: >-
                    https://api.dwolla.com/webhooks/9ece9660-aa34-41eb-80d7-0125d53b45e8/retries
            event:
              type: object
              properties:
                href:
                  type: string
                  example: >-
                    https://api.dwolla.com/events/03c7e14c-7f15-44a2-bcf7-83f2f7e95d50
        id:
          type: string
          example: 9ece9660-aa34-41eb-80d7-0125d53b45e8
        topic:
          type: string
          example: transfer_created
        accountId:
          type: string
          example: ca32853c-48fa-40be-ae75-77b37504581b
        eventId:
          type: string
          example: 03c7e14c-7f15-44a2-bcf7-83f2f7e95d50
        subscriptionId:
          type: string
          example: a0943041-7a5c-4e8f-92de-b55711ef3a83
        attempts:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
                example: d4d16621-c6b0-40cb-8dc3-0469fa9dc4e8
              request:
                type: object
                properties:
                  timestamp:
                    type: string
                    format: date-time
                    example: '2022-10-27T17:07:34.304Z'
                  url:
                    type: string
                    example: https://myapp.runscope.net
                  headers:
                    type: array
                    items:
                      type: object
                      properties:
                        name:
                          type: string
                          example: X-Dwolla-Topic
                        value:
                          type: string
                          example: transfer_created
                  body:
                    type: string
                    example: >-
                      id:03c7e14c-7f15-44a2-bcf7-83f2f7e95d50resourceId:81BA6F36-CD7C-E511-80DB-0AA34A9B2388topic:transfer_createdtimestamp:2022-10-27T17:07:34.207Z_links:self:href:https://api.dwolla.com/events/03c7e14c-7f15-44a2-bcf7-83f2f7e95d50account:href:https://api.dwolla.com/accounts/ca32853c-48fa-40be-ae75-77b37504581bresource:href:https://api.dwolla.com/transfers/81BA6F36-CD7C-E511-80DB-0AA34A9B2388
              response:
                type: object
                properties:
                  timestamp:
                    type: string
                    format: date-time
                    example: '2022-10-27T17:07:34.308Z'
                  headers:
                    type: array
                    items:
                      type: object
                      properties:
                        name:
                          type: string
                          example: Date
                        value:
                          type: string
                          example: Tue 27 Oct 2022 17:07:34 GMT
                  statusCode:
                    type: integer
                    format: int32
                    example: 200
                  body:
                    type: string
                    example: >-
                      body:id:03c7e14c-7f15-44a2-bcf7-83f2f7e95d50resourceId:81BA6F36-CD7C-E511-80DB-0AA34A9B2388topic:transfer_createdtimestamp:2022-10-27T17:07:34.207Z_links:self:href:https://api.dwolla.com/events/03c7e14c-7f15-44a2-bcf7-83f2f7e95d50account:href:https://api.dwolla.com/accounts/ca32853c-48fa-40be-ae75-77b37504581bresource:href:https://api.dwolla.com/transfers/81BA6F36-CD7C-E511-80DB-0AA34A9B2388files:[]form:fragment:headers:Connection:[close]Content-Length:[453]Content-Type:[application/json;
                      charset=UTF-8]Host:[myapp.runscope.net]User-Agent:[dwolla-webhooks/1.0]X-Dwolla-Topic:[transfer_created]X-Request-Signature:[bd93780bd7e1ad77ab821094aaa0f9e3dece5ee3]host:myapp.runscope.netmethod:POSTparams:path:/region:us5runscope_host:prod078.runscope.inscheme:httpssource:capturesource_ip:52.24.10.184timestamp:1.4459656543078682e+09url:https://myapp.runscope.net/
    ForbiddenError:
      title: ForbiddenError
      description: Error response schema for 403 Forbidden
      type: object
      required:
        - code
        - message
      properties:
        code:
          type: string
          example: Forbidden
        message:
          type: string
          example: The supplied credentials are not authorized for this resource.
    NotFoundError:
      title: NotFoundError
      description: Error response schema for 404 NotFound
      type: object
      required:
        - code
        - message
      properties:
        code:
          type: string
          example: NotFound
        message:
          type: string
          example: The requested resource was not found.
  securitySchemes:
    clientCredentials:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: /token
          x-speakeasy-token-endpoint-authentication: client_secret_basic
          scopes: {}

````