Adobe Jobs API

Poll for the status and results of asynchronous PDF operations.

OpenAPI Specification

adobe-jobs-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Adobe PDF Services Accessibility Auto-Tag Jobs API
  description: The Adobe PDF Services API enables developers to create, convert, manipulate, and extract content from PDF documents programmatically. The API uses an asynchronous job-based model where you submit a job, poll for its status, and retrieve the result. Operations include creating PDFs from various formats, exporting PDFs to other formats, combining and splitting PDFs, compressing, OCR processing, protecting with passwords, extracting structured content, auto-tagging for accessibility, and generating documents from templates. Authentication uses OAuth 2.0 with client credentials (server-to-server).
  version: 4.0.0
  contact:
    name: Adobe Developer Support
    url: https://developer.adobe.com/document-services/
    email: pdfsvcops@adobe.com
  license:
    name: Adobe Terms of Service
    url: https://www.adobe.com/legal/terms.html
  termsOfService: https://www.adobe.com/legal/terms.html
servers:
- url: https://pdf-services-ue1.adobe.io
  description: Adobe PDF Services API - US East Production
- url: https://pdf-services.adobe.io
  description: Adobe PDF Services API - Default Production
security:
- bearerAuth: []
tags:
- name: Jobs
  description: Poll for the status and results of asynchronous PDF operations.
paths:
  /operation/{operationType}/status/{jobID}:
    get:
      operationId: getJobStatus
      summary: Adobe Get Job Status
      description: Poll for the status of an asynchronous PDF operation job. Returns the current status (in progress, done, or failed) and, when complete, the output asset information.
      tags:
      - Jobs
      parameters:
      - name: operationType
        in: path
        required: true
        description: The type of operation that was submitted.
        schema:
          type: string
          enum:
          - createpdf
          - exportpdf
          - combinepdf
          - splitpdf
          - ocr
          - compresspdf
          - protectpdf
          - removeprotection
          - linearizepdf
          - extractpdf
          - accessibilitychecker
          - documentgeneration
          - pdfproperties
          - reorderpages
          - deletepages
          - rotatepages
          - insertpages
          - replacepages
        example: createpdf
      - name: jobID
        in: path
        required: true
        description: The unique identifier of the job returned when the operation was submitted.
        schema:
          type: string
        example: '500123'
      responses:
        '200':
          description: Job status returned successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JobStatusResponse'
              examples:
                Getjobstatus200Example:
                  summary: Default getJobStatus 200 response
                  x-microcks-default: true
                  value:
                    status: in progress
                    asset:
                      assetID: '500123'
                      downloadUri: https://www.example.com
                      metadata:
                        type: example_value
                        size: 10
                    error:
                      code: example_value
                      message: example_value
                      status: 10
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
components:
  responses:
    Unauthorized:
      description: Authentication failed. The access token is missing, expired, or invalid.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    NotFound:
      description: The requested resource was not found.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  schemas:
    ErrorResponse:
      type: object
      description: Error response returned when a request fails.
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              description: A machine-readable error code.
              examples:
              - INVALID_ASSET_ID
              - BAD_REQUEST
              - UNAUTHORIZED
              - RATE_LIMIT_EXCEEDED
            message:
              type: string
              description: A human-readable error message.
            status:
              type: integer
              description: The HTTP status code.
              examples:
              - 400
              - 401
              - 404
              - 429
          example: example_value
    JobStatusResponse:
      type: object
      description: The status and result of an asynchronous PDF operation job.
      properties:
        status:
          type: string
          description: The current status of the job.
          enum:
          - in progress
          - done
          - failed
          example: in progress
        asset:
          type: object
          description: The output asset information, available when status is done.
          properties:
            assetID:
              type: string
              description: The asset ID of the output file.
            downloadUri:
              type: string
              format: uri
              description: The pre-signed download URI for the output file.
            metadata:
              type: object
              description: Metadata about the output asset.
              properties:
                type:
                  type: string
                  description: The MIME type of the output file.
                size:
                  type: integer
                  description: The size of the output file in bytes.
          example: example_value
        error:
          type: object
          description: Error information, available when status is failed.
          properties:
            code:
              type: string
              description: A machine-readable error code.
            message:
              type: string
              description: A human-readable error message.
            status:
              type: integer
              description: The HTTP status code associated with the error.
          example: example_value
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: OAuth 2.0 access token obtained via client credentials grant from Adobe Identity Management Service (IMS). Generate credentials in the Adobe Developer Console and exchange them for an access token at https://ims-na1.adobelogin.com/ims/token/v3.