PDFfiller Callbacks API

Manage webhook callbacks for document events

OpenAPI Specification

pdffiller-callbacks-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: PDFfiller REST Applications Callbacks API
  description: 'The PDFfiller REST API allows developers to build applications that interact with PDFfiller over HTTP. It supports operations for managing documents, templates, fillable forms, fields, annotations, and eSignature requests. Authentication uses OAuth 2.0 with password or client credentials grant types. PDFfiller is part of the airSlate family of products.

    '
  version: '2.0'
  contact:
    name: PDFfiller Developer Support
    url: https://developers.pdffiller.com/
  license:
    name: Proprietary
    url: https://www.pdffiller.com/en/terms.htm
servers:
- url: https://api.pdffiller.com/v2
  description: PDFfiller API v2
security:
- oauth2: []
tags:
- name: Callbacks
  description: Manage webhook callbacks for document events
paths:
  /callbacks:
    get:
      operationId: listCallbacks
      summary: List all callbacks
      description: Returns a list of all webhook callback configurations.
      tags:
      - Callbacks
      parameters:
      - $ref: '#/components/parameters/per_page'
      - $ref: '#/components/parameters/page'
      - $ref: '#/components/parameters/order_by'
      - $ref: '#/components/parameters/order'
      responses:
        '200':
          description: List of callbacks
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CallbackList'
        '401':
          $ref: '#/components/responses/Unauthorized'
    post:
      operationId: createCallback
      summary: Create a callback
      description: Creates a new webhook callback configuration for document events.
      tags:
      - Callbacks
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CallbackInput'
      responses:
        '201':
          description: Callback created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Callback'
        '401':
          $ref: '#/components/responses/Unauthorized'
  /callbacks/{callback_id}:
    get:
      operationId: getCallback
      summary: Get callback by ID
      description: Returns information about a specific callback configuration.
      tags:
      - Callbacks
      parameters:
      - $ref: '#/components/parameters/callback_id'
      responses:
        '200':
          description: Callback details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Callback'
        '404':
          $ref: '#/components/responses/NotFound'
    put:
      operationId: updateCallback
      summary: Update a callback
      description: Updates an existing webhook callback configuration.
      tags:
      - Callbacks
      parameters:
      - $ref: '#/components/parameters/callback_id'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CallbackInput'
      responses:
        '200':
          description: Callback updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Callback'
        '404':
          $ref: '#/components/responses/NotFound'
    delete:
      operationId: deleteCallback
      summary: Delete a callback
      description: Removes the specified webhook callback configuration.
      tags:
      - Callbacks
      parameters:
      - $ref: '#/components/parameters/callback_id'
      responses:
        '204':
          description: Callback deleted
        '404':
          $ref: '#/components/responses/NotFound'
  /callbacks/global:
    get:
      operationId: getGlobalCallback
      summary: Get global callback
      description: Returns the global webhook callback configuration that applies to all documents.
      tags:
      - Callbacks
      responses:
        '200':
          description: Global callback configuration
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Callback'
        '401':
          $ref: '#/components/responses/Unauthorized'
    put:
      operationId: updateGlobalCallback
      summary: Update global callback
      description: Updates the global webhook callback configuration.
      tags:
      - Callbacks
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CallbackInput'
      responses:
        '200':
          description: Global callback updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Callback'
    delete:
      operationId: deleteGlobalCallback
      summary: Delete global callback
      description: Removes the global webhook callback configuration.
      tags:
      - Callbacks
      responses:
        '204':
          description: Global callback deleted
components:
  parameters:
    per_page:
      name: per_page
      in: query
      description: Number of items per page
      schema:
        type: integer
        default: 15
        maximum: 100
    order_by:
      name: order_by
      in: query
      description: Field to sort results by
      schema:
        type: string
    callback_id:
      name: callback_id
      in: path
      required: true
      description: Unique identifier for the callback
      schema:
        type: integer
    page:
      name: page
      in: query
      description: Page number
      schema:
        type: integer
        default: 1
    order:
      name: order
      in: query
      description: Sort order
      schema:
        type: string
        enum:
        - asc
        - desc
        default: desc
  schemas:
    Callback:
      type: object
      properties:
        id:
          type: integer
        document_id:
          type: integer
        callback_url:
          type: string
          format: uri
        event:
          type: string
        created_at:
          type: string
          format: date-time
    CallbackInput:
      type: object
      required:
      - callback_url
      properties:
        document_id:
          type: integer
          description: Document ID to attach callback to
        callback_url:
          type: string
          format: uri
          description: Webhook URL to receive notifications
        event:
          type: string
          description: Event type to trigger the callback
    Error:
      type: object
      properties:
        error:
          type: string
        error_description:
          type: string
        code:
          type: integer
    CallbackList:
      type: object
      properties:
        total:
          type: integer
        items:
          type: array
          items:
            $ref: '#/components/schemas/Callback'
  responses:
    NotFound:
      description: Resource not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    Unauthorized:
      description: Authentication required or token invalid
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  securitySchemes:
    oauth2:
      type: oauth2
      flows:
        password:
          tokenUrl: https://api.pdffiller.com/v2/oauth/token
          scopes:
            read: Read access
            write: Write access
        clientCredentials:
          tokenUrl: https://api.pdffiller.com/v2/oauth/token
          scopes:
            read: Read access
            write: Write access