Adobe Generate Token API

Creates an access token using client id and client secret. Click here to refer underlying IMS authentication APIs.

Operations 1

POST /token Generate access token to perform PDF Services operations #

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/adobe-generate-token-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 email required.

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

OpenAPI Specification

adobe-generate-token-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: PDF Services Generate Token API
  description: "<p><ul>\n\t<li>Learn more about using \n\t<a href=\"https://developer.adobe.com/document-services/docs/overview/pdf-services-api/howtos/api-usage/\"> Adobe PDF Services API.</a>\n\t</li>\n\t<li> Invoking PDF Services API requires an Adobe-provided credential, <a href=\"https://developer.adobe.com/document-services/docs/overview/pdf-services-api/gettingstarted/#step-1--getting-the-access-token\">learn more about authentication.</a>\n\t</li>\n<li><a href=\"https://developer.adobe.com/document-services/docs/overview/pdf-services-api/#sdk\">Downloadable SDKs</a></li>\n<li><a href=\"https://raw.githubusercontent.com/AdobeDocs/pdfservices-api-documentation/main/src/pages/resources/Platform%20PDF%20Services%20Postman%20Collection.zip\" download>Click here</a> to download sample Postman collection</li>\n<li><a href=\"https://raw.githubusercontent.com/AdobeDocs/pdfservices-api-documentation/main/src/pages/resources/Platform%20PDF%20Services%20with%20External%20Storage%20Postman%20Collection.zip\">Click here</a> to download sample Postman collection with External Storage</li><li><a href=\"https://developer.adobe.com/document-services/docs/overview/pdf-services-api/howtos/service-region-configuration-for-apis/\">Click here</a> to know more about <b>multi-region support</b> for PDF Services API</li><li><a href=\"https://community.adobe.com/t5/document-services-apis/ct-p/ct-Document-Cloud-SDK\">Support Forum</a></li><li>First released on 26th September, 2022</li><li>To use your custom external storage, click <a href=\"https://developer.adobe.com/document-services/docs/overview/pdf-services-api/howtos/pdf-external-storage-sol\">here</a>.</li></ul></p>"
  version: ''
servers:
- url: https://pdf-services-ue1.adobe.io
- url: https://pdf-services-ew1.adobe.io
tags:
- name: Generate Token
  description: Creates an access token using client id and client secret. Click <a href="https://developer.adobe.com/developer-console/docs/guides/authentication/ServerToServerAuthentication/IMS/">here</a> to refer underlying IMS authentication APIs.
paths:
  /token:
    post:
      tags:
      - Generate Token
      summary: Generate access token to perform PDF Services operations
      description: Creates an access token using client id and client Secret.
      operationId: authentication.generatetoken
      requestBody:
        description: Params for generating the access token.
        content:
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/Token'
        required: true
      responses:
        '200':
          description: The request was successful.
          headers:
            x-request-id:
              description: A unique value to identify this request. If x-request-id is specified in the POST request, this value will be the same as the input.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TokenResponse'
        '400':
          description: Bad Request. The request was invalid or cannot be otherwise served.
          headers:
            content-type:
              description: The content type of the POST API call response
              schema:
                type: string
            x-request-id:
              description: A unique value to identify this request. If x-request-id is specified in the POST request, this value will be the same as the input.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IMS400'
        '401':
          description: Unauthorized.
          headers:
            content-type:
              description: The content type of the error JSON response.
              schema:
                type: string
            x-request-id:
              description: A unique value to identify this request. If x-request-id is specified in the POST request, this value will be the same as the input.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IMS401'
        '403':
          description: Forbidden.
          headers:
            content-type:
              description: The content type of the error JSON response.
              schema:
                type: string
            x-request-id:
              description: A unique value to identify this request. If x-request-id is specified in the POST request, this value will be the same as the input.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IMS403'
        '404':
          description: Resource Not Found.
          headers:
            content-type:
              description: The content type of the POST API call response
              schema:
                type: string
            x-request-id:
              description: A unique value to identify this request. If x-request-id is specified in the POST request, this value will be the same as the input.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IMS404'
        '409':
          description: The request could not be processed because of conflict in the request
          headers:
            content-type:
              description: The content type of the POST API call response
              schema:
                type: string
            x-request-id:
              description: A unique value to identify this request. If x-request-id is specified in the POST request, this value will be the same as the input.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IMS409'
        '500':
          description: Internal Server Error. The server has encountered an error and is unable to process your request at this time.
          headers:
            content-type:
              description: The content type of the POST API call response
              schema:
                type: string
            x-request-id:
              description: A unique value to identify this request. If x-request-id is specified in the POST request, this value will be the same as the input.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IMS500'
      x-codegen-request-body-name: body
components:
  schemas:
    TokenResponse:
      description: Response of generate Access Token Operation.
      type: object
      properties:
        access_token:
          description: The token which can be used in performing the PDF Service Operation.
          type: string
        token_type:
          description: The type of the token issued.
          type: string
        expires_in:
          description: The lifetime in seconds of the access token.
          type: integer
      example:
        access_token: '*******'
        token_type: Bearer
        expires_in: '86399'
    Token:
      description: Params for generating the Access Token.
      type: object
      properties:
        client_id:
          description: Contains the client id obtained upon client registration.
          type: string
        client_secret:
          description: Contains the client secret obtained upon client registration.
          type: string
      example:
        client_id: <client_id>
        client_secret: <client_secret>
      required:
      - client_id
      - client_secret
      additionalProperties: false
    IMS409:
      properties:
        error:
          type: object
          properties:
            code:
              description: The string containing the code field. code is the Mnemonic returned by service in case of any failure. The below list is extendable and going forward the error codes can become more specific.
              type: string
            message:
              description: "An English language string that contains more information about the error.  \n\n<table><tr><th>code</th><th>message</th></tr><tr><td>duplicate_binding</td><td>There are multiple bindings for this client and org.</td></tr></table>"
              type: string
      example:
        error:
          code: duplicate_binding
          message: There are multiple bindings for this client and org.
    IMS400:
      properties:
        error:
          type: object
          properties:
            code:
              description: The string containing the code field. code is the Mnemonic returned by service in case of any failure. The below list is extendable and going forward the error codes can become more specific.
              type: string
            message:
              description: "An English language string that contains more information about the error. \n\n<table><tr><th>code</th><th>message</th></tr><tr><td>invalid_client</td><td>missing client_id parameter</td></tr><tr><td>invalid_client</td><td>invalid client_id parameter</td></tr><tr><td>invalid_client</td><td>missing client_secret parameter</td></tr><tr><td>invalid_client</td><td>missing client_secret parameter</td></tr><tr><td>unauthorized_client</td><td>client is not authorized to use this grant type.</td></tr><tr><td>invalid_target_scope</td><td>None of the requested scopes is enabled in the SP binding</td></tr><tr><td>missing_separator</td><td>The guid xXx is invalid.</td></tr></table>"
              type: string
      example:
        error:
          code: invalid_client
          message: missing client_id parameter
    IMS500:
      properties:
        error:
          type: object
          properties:
            code:
              description: The string containing the code field. code is the Mnemonic returned by service in case of any failure. The below list is extendable and going forward the error codes can become more specific.
              type: string
            message:
              description: "An English language string that contains more information about the error.  \n\n<table><tr><th>code</th><th>message</th></tr><tr><td>INTERNAL_SERVER_ERROR</td><td>There was an error processing your request.</td></tr></table>"
              type: string
      example:
        error:
          code: INTERNAL_SERVER_ERROR
          message: There was an error processing your request.
    IMS403:
      properties:
        error:
          type: object
          properties:
            code:
              description: The string containing the code field. code is the Mnemonic returned by service in case of any failure. The below list is extendable and going forward the error codes can become more specific.
              type: string
            message:
              description: "An English language string that contains more information about the error.  \n\n<table><tr><th>code</th><th>message</th></tr><tr><td>access_denied</td><td>field matching the authentication scheme used by the client.</td></tr><tr><td>access_denied</td><td>Service principal is no longer part of the organization.</td></tr><tr><td>Forbidden</td><td>The client is not allowed to perform the operation.</td></tr></table>"
              type: string
      example:
        error:
          code: access_denied
          message: field matching the authentication scheme used by the client.
    IMS401:
      properties:
        error:
          type: object
          properties:
            code:
              description: The string containing the code field. code is the Mnemonic returned by service in case of any failure. The below list is extendable and going forward the error codes can become more specific.
              type: string
            message:
              description: "An English language string that contains more information about the error.  \n\n<table><tr><th>code</th><th>message</th></tr><tr><td>invalid_client</td><td>According to Section 5.2 of RFC6749 the response includes the \"WWW-Authenticate\" response header field matching the authentication scheme used by the client.</td></tr></table>"
              type: string
      example:
        error:
          code: invalid_client
          message: According to Section 5.2 of RFC6749 the response includes the "WWW-Authenticate" response header field matching the authentication scheme used by the client.
    IMS404:
      properties:
        error:
          type: object
          properties:
            code:
              description: The string containing the code field. code is the Mnemonic returned by service in case of any failure. The below list is extendable and going forward the error codes can become more specific.
              type: string
            message:
              description: "An English language string that contains more information about the error. \n\n<table><tr><th>code</th><th>message</th></tr><tr><td>not_found</td><td>Organization with id xXX cannot be found</td></tr></table>"
              type: string
      example:
        error:
          code: NOT_FOUND
          message: Asset not found.
x-tagGroups:
- name: Authentication
  tags:
  - Generate Token
- name: Files
  tags:
  - Assets
- name: PDF Operations
  tags:
  - Combine PDF
  - Compress PDF
  - Create PDF
  - Document Generation
  - Export PDF
  - Export PDF Form Data
  - Extract PDF
  - Html to PDF
  - Import PDF Form Data
  - Linearize PDF
  - OCR
  - Page Manipulation
  - PDF Accessibility Auto-Tag
  - PDF Accessibility Checker
  - PDF Electronic Seal
  - PDF Properties
  - PDF To Images
  - PDF To Markdown
  - PDF Watermark
  - Protect PDF
  - Remove Protection
  - Split PDF