PandaDoc Webhook Events API

Operations for querying the log of webhook events that have been dispatched, including filtering by type and delivery status.

Operations 2

GET /webhook-events List Webhook Events #
GET /webhook-events/{id} Get Webhook Event Details #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/pandadoc-webhook-events-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

pandadoc-webhook-events-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: PandaDoc REST API Logs Webhook Events API
  description: The PandaDoc REST API provides programmatic access to PandaDoc's document automation platform, enabling developers to create, send, track, and manage documents within their own applications. The API supports the full document lifecycle including generating documents from templates with dynamic data, collecting e-signatures, managing recipients, and tracking document status. Authentication is handled via API keys or OAuth 2.0, and a free sandbox environment is available for testing integrations before moving to production. An active Enterprise plan is required to access the production API.
  version: 7.18.0
  contact:
    name: PandaDoc API Support
    url: https://developers.pandadoc.com/
    email: api-track@pandadoc.com
  termsOfService: https://www.pandadoc.com/master-services-agreement/
servers:
- url: https://api.pandadoc.com/public/v1
  description: Production Server
security:
- apiKey: []
- oauth2: []
tags:
- name: Webhook Events
  description: Operations for querying the log of webhook events that have been dispatched, including filtering by type and delivery status.
paths:
  /webhook-events:
    get:
      operationId: listWebhookEvents
      summary: List Webhook Events
      description: Returns a paginated log of webhook events that have been dispatched. Supports filtering by event type, delivery time range, HTTP status code group, and error type. Use this endpoint to audit deliveries and diagnose failures.
      tags:
      - Webhook Events
      parameters:
      - name: count
        in: query
        required: true
        description: Number of results to return per page.
        schema:
          type: integer
          format: int32
          minimum: 0
      - name: page
        in: query
        required: true
        description: Page number to retrieve.
        schema:
          type: integer
          format: int32
          minimum: 0
      - name: since
        in: query
        description: Return events created on or after this timestamp.
        schema:
          type: string
          format: date-time
      - name: to
        in: query
        description: Return events created before this timestamp.
        schema:
          type: string
          format: date-time
      - name: type
        in: query
        description: Filter by event trigger type.
        schema:
          type: array
          items:
            $ref: '#/components/schemas/WebhookEventTrigger'
      - name: http_status_code
        in: query
        description: Filter by HTTP response status code group.
        schema:
          type: array
          items:
            type: integer
            enum:
            - 100
            - 200
            - 300
            - 400
            - 500
      responses:
        '200':
          description: Paginated list of webhook events.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebhookEventListResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '429':
          $ref: '#/components/responses/TooManyRequests'
  /webhook-events/{id}:
    get:
      operationId: getWebhookEvent
      summary: Get Webhook Event Details
      description: Retrieves detailed information about a specific webhook event by its UUID, including the full request body sent to the subscriber, the response received, HTTP status code, delivery timestamp, and HMAC signature used for verification.
      tags:
      - Webhook Events
      parameters:
      - name: id
        in: path
        required: true
        description: Unique identifier of the webhook event.
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: Webhook event details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebhookEventDetails'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '429':
          $ref: '#/components/responses/TooManyRequests'
components:
  schemas:
    WebhookEventTrigger:
      type: string
      description: Event type that triggers a webhook notification delivery to the subscriber endpoint.
      enum:
      - recipient_completed
      - document_updated
      - document_deleted
      - document_state_changed
      - document_creation_failed
      - document_completed_pdf_ready
      - document_section_added
      - quote_updated
      - template_created
      - template_updated
      - template_deleted
      - content_library_item_created
      - content_library_item_creation_failed
      example: document_state_changed
    WebhookEventDetails:
      type: object
      description: Full details of a webhook event delivery including the request and response bodies, signature, and delivery metadata.
      properties:
        uuid:
          type: string
          format: uuid
          description: Unique identifier of the webhook event.
        name:
          type: string
          description: Name associated with the document or entity.
        type:
          $ref: '#/components/schemas/WebhookEventTrigger'
        url:
          type: string
          format: uri
          description: Subscriber endpoint URL the event was delivered to.
        signature:
          type: string
          description: HMAC-SHA256 signature of the request body computed with the subscription shared key.
        http_status_code:
          type: integer
          description: HTTP response status code from the subscriber.
        delivery_time:
          type: string
          format: date-time
          description: Timestamp when the event was delivered.
        event_time:
          type: string
          format: date-time
          description: Timestamp when the triggering event occurred.
        request_body:
          type: string
          description: JSON-serialized request body sent to the subscriber endpoint.
        response_body:
          type: string
          description: Response body received from the subscriber endpoint.
        response_headers:
          type: string
          description: Response headers received from the subscriber endpoint.
    WebhookEventListResponse:
      type: object
      description: Paginated list of webhook event delivery records.
      properties:
        items:
          type: array
          description: Array of webhook event summary records.
          items:
            $ref: '#/components/schemas/WebhookEventListItem'
    ErrorResponse:
      type: object
      description: Standard error response body.
      properties:
        type:
          type: string
          description: Error type identifier.
        detail:
          type: string
          description: Human-readable description of the error.
    WebhookEventListItem:
      type: object
      description: Summary record for a webhook event delivery attempt.
      properties:
        uuid:
          type: string
          format: uuid
          description: Unique identifier of the webhook event.
        name:
          type: string
          description: Name associated with the document or entity that triggered the event.
        type:
          $ref: '#/components/schemas/WebhookEventTrigger'
        error:
          type: string
          nullable: true
          description: Error code if delivery failed.
        http_status_code:
          type: integer
          description: HTTP response status code received from the subscriber endpoint.
        delivery_time:
          type: string
          format: date-time
          description: Timestamp when the webhook was delivered.
  responses:
    Unauthorized:
      description: Authentication credentials are missing or invalid.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    TooManyRequests:
      description: Rate limit exceeded. Retry after the indicated delay.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  securitySchemes:
    apiKey:
      type: apiKey
      in: header
      name: Authorization
      description: API Key authentication. Include the key in the Authorization header as "API-Key YOUR_API_KEY". Generate keys from the PandaDoc Developer Dashboard.
    oauth2:
      type: oauth2
      description: OAuth 2.0 authentication. Use the authorization code flow to obtain user-scoped access tokens. Tokens expire after approximately one year.
      flows:
        authorizationCode:
          authorizationUrl: https://app.pandadoc.com/oauth2/authorize
          tokenUrl: https://api.pandadoc.com/oauth2/access_token
          scopes:
            read: Read access to documents, templates, contacts, and workspace data.
            write: Write access to create and modify documents, templates, and contacts.
externalDocs:
  description: PandaDoc API Reference
  url: https://developers.pandadoc.com/reference/about