Adobe Suite Data Merge API

Create document variations from CSV data and InDesign templates. Supports UTF-16BE encoding for CSV files, which is necessary for languages or characters requiring multi-byte representation. For plain English characters, the CSV will function correctly even without this encoding.

Operations 2

POST /v3/merge-data Perform a data merge #
POST /v3/merge-data-tags Get data merge tags #

Documentation

📖
Documentation
https://developer.adobe.com/photoshop/api/docs/
📖
Authentication
https://developer.adobe.com/developer-console/docs/guides/authentication/
📖
Documentation
https://developer.adobe.com/lightroom/api/docs/
📖
Documentation
https://developer.adobe.com/illustrator/api/docs/
📖
Documentation
https://developer.adobe.com/indesign/docs/
📖
Documentation
https://developer.adobe.com/document-services/docs/overview/pdf-services-api/
📖
Documentation
https://developer.adobe.com/document-services/docs/overview/pdf-extract-api/
📖
GettingStarted
https://developer.adobe.com/document-services/docs/overview/pdf-extract-api/gettingstarted/
📖
Documentation
https://developer.adobe.com/document-services/docs/overview/pdf-accessibility-auto-tag-api/
📖
Documentation
https://developer.adobe.com/analytics-apis/docs/
📖
APIReference
https://developer.adobe.com/analytics-apis/docs/2.0/
📖
Documentation
https://developer.adobe.com/firefly-services/docs/
📖
APIReference
https://developer.adobe.com/firefly-services/docs/api/
📖
Documentation
https://developer.adobe.com/audio-video-firefly-services/
📖
GettingStarted
https://developer.adobe.com/audio-video-firefly-services/getting-started/
📖
Documentation
https://developer.adobe.com/creative-cloud-libraries/docs/
📖
APIReference
https://developer.adobe.com/creative-cloud-libraries/docs/api/
📖
Documentation
https://developer.adobe.com/express/embed-sdk/docs/guides/
📖
APIReference
https://developer.adobe.com/express/embed-sdk/docs/v4/
📖
GettingStarted
https://developer.adobe.com/express/embed-sdk/docs/guides/quickstart/
📖
Documentation
https://developer.adobe.com/experience-platform-apis/
📖
GettingStarted
https://experienceleague.adobe.com/en/docs/experience-platform/landing/platform-apis/api-guide
📖
Documentation
https://developer.adobe.com/marketo-apis/
📖
Authentication
https://experienceleague.adobe.com/en/docs/marketo-developer/marketo/rest/authentication
📖
Documentation
https://developer.adobe.com/commerce/docs/
📖
GettingStarted
https://developer.adobe.com/commerce/webapi/get-started/
📖
Documentation
https://developer.adobe.com/experience-cloud/cloud-manager/
📖
Documentation
https://developer.adobe.com/journey-optimizer-apis/
📖
Documentation
https://developer.adobe.com/workfront-apis/
📖
Documentation
https://developer.adobe.com/firefly-services/docs/substance3d/
📖
Documentation
https://developer.adobe.com/data-collection-apis/
📖
Documentation
https://developer.adobe.com/adobe-status/
📖
Documentation
https://developer.adobe.com/vip-marketplace/

Specifications

Other Resources

🔗
Pricing
https://developer.adobe.com/document-services/pricing/
🔗
SDKs
https://developer.adobe.com/document-services/docs/overview/pdf-services-api/sdks/
🔗
ReleaseNotes
https://developer.adobe.com/document-services/docs/overview/pdf-services-api/releasenotes
🔗
Guides
https://developer.adobe.com/analytics-apis/docs/2.0/guides/
🔗
Guides
https://developer.adobe.com/firefly-services/docs/guides/
🔗
Usage Notes
https://developer.adobe.com/audio-video-firefly-services/getting_started/usage/
🔗
Overview
https://developer.adobe.com/creative-cloud-libraries/docs/overview/
🔗
Integration Guide
https://developer.adobe.com/creative-cloud-libraries/docs/integrate/
🔗
API Fundamentals
https://experienceleague.adobe.com/en/docs/experience-platform/landing/platform-apis/api-fundamentals
🔗
Developer Guide
https://experienceleague.adobe.com/en/docs/marketo-developer/marketo/home
🔗
REST API
https://experienceleague.adobe.com/en/docs/marketo-developer/marketo/rest/rest-api
🔗
REST API
https://developer.adobe.com/commerce/webapi/rest/
🔗
GraphQL API
https://developer.adobe.com/commerce/webapi/graphql-api/
🔗
REST API Reference
https://developer.adobe.com/commerce/webapi/reference/rest/paas/
🔗
GraphQL
https://raw.githubusercontent.com/api-evangelist/adobe-suite/refs/heads/main/graphql/adobe-suite-graphql.md
🔗
Webhooks
https://developer.adobe.com/experience-cloud/cloud-manager/guides/getting-started/create-event-integration/
🔗
StatusPage
https://status.adobe.com/

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-suite-data-merge-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-suite-data-merge-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: Firefly Service's RESTful InDesign API offers resources to automate tedious, time-consuming design tasks through scalable cloud services, encouraging more personalization at scale, creative automation, and faster content delivery.
  version: ''
  title: Firefly Services - InDesign Data Merge API
  termsOfService: https://www.adobe.com/content/dam/cc/en/legal/terms/enterprise/pdfs/PSLT-AdobeCreativeAPI-WW-2024v2.pdf
  contact:
    email: idservices@adobe.com
servers:
- url: https://indesign.adobe.io
security:
- AccessToken: []
  X-Api-Key: []
tags:
- name: Data Merge
  description: Create document variations from CSV data and InDesign templates. Supports UTF-16BE encoding for CSV files, which is necessary for languages or characters requiring multi-byte representation. For plain English characters, the CSV will function correctly even without this encoding.
paths:
  /v3/merge-data:
    post:
      summary: Perform a data merge
      description: 'Creates InDesign documents or PDFs by merging CSV data with InDesign templates. Supports multiple output formats: JPEG (`image/jpeg`), PNG (`image/png`), PDF (`application/pdf`), and InDesign (`application/x-indesign`).'
      operationId: dataMerge
      tags:
      - Data Merge
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MergeDataRequest'
        description: This job request object specifies parameters for merging the data with the given template.
        required: true
      responses:
        '202':
          $ref: '#/components/responses/Accepted'
        '400':
          $ref: '#/components/responses/BadParams'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '429':
          $ref: '#/components/responses/TooManyRequests'
        '500':
          $ref: '#/components/responses/InternalServerError'
  /v3/merge-data-tags:
    post:
      summary: Get data merge tags
      description: Retrieves the data merge tags from a document.
      operationId: dataMergeTags
      tags:
      - Data Merge
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MergeDataTagsRequest'
        description: This job request object specifies parameters for retrieving the data merge tags.
        required: true
      responses:
        '202':
          $ref: '#/components/responses/Accepted'
        '400':
          $ref: '#/components/responses/BadParams'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '429':
          $ref: '#/components/responses/TooManyRequests'
        '500':
          $ref: '#/components/responses/InternalServerError'
components:
  responses:
    Forbidden:
      description: Forbidden
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
      headers:
        Content-Type:
          schema:
            type: string
          description: The type of content returned (e.g., `application/json`).
        Content-Length:
          schema:
            type: integer
          description: The length of the response content.
        Access-Control-Allow-Origin:
          schema:
            type: string
          description: The Cross Origin Resource Sharing (CORS) header.
        Access-Control-Allow-Methods:
          schema:
            type: string
          description: This header indicates what HTTP methods are allowed.
        Access-Control-Allow-Headers:
          schema:
            type: string
          description: This indicates which HTTP headers can be used during the actual request.
        Access-Control-Allow-Credentials:
          schema:
            type: string
          description: This header is used by servers to indicate that the client shall share HTTP responses.
        Access-Control-Max-Age:
          schema:
            type: integer
          description: This indicates how long the results of a preflight request can be cached.
    InternalServerError:
      description: Internal Server Error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
      headers:
        Content-Type:
          schema:
            type: string
          description: The type of content returned (e.g., `application/json`).
        Content-Length:
          schema:
            type: integer
          description: The length of the response content.
        Access-Control-Allow-Origin:
          schema:
            type: string
          description: The Cross Origin Resource Sharing (CORS) header.
        Access-Control-Allow-Methods:
          schema:
            type: string
          description: This header indicates what HTTP methods are allowed.
        Access-Control-Allow-Headers:
          schema:
            type: string
          description: This indicates which HTTP headers can be used during the actual request.
        Access-Control-Allow-Credentials:
          schema:
            type: string
          description: This header is used by servers to indicate that the client shall share HTTP responses.
        Access-Control-Max-Age:
          schema:
            type: integer
          description: This indicates how long the results of a preflight request can be cached.
    TooManyRequests:
      description: Too Many Requests
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
      headers:
        Content-Type:
          schema:
            type: string
          description: The format of the content returned (e.g., `application/json`).
        Content-Length:
          schema:
            type: integer
          description: The length of the response content.
        Retry-After:
          schema:
            type: integer
          description: The number of seconds until the user should try again.
        Access-Control-Allow-Origin:
          schema:
            type: string
          description: The Cross Origin Resource Sharing (CORS) header.
        Access-Control-Allow-Methods:
          schema:
            type: string
          description: This indicates what HTTP methods are allowed.
        Access-Control-Allow-Headers:
          schema:
            type: string
          description: This indicates which HTTP headers can be used during the actual request.
        Access-Control-Allow-Credentials:
          schema:
            type: string
          description: This header is used by servers to indicate that the client shall share HTTP responses.
        Access-Control-Max-Age:
          schema:
            type: integer
          description: This indicates how long the results of a preflight request can be cached.
    Unauthorized:
      description: Unauthorized
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
      headers:
        Content-Type:
          schema:
            type: string
          description: The type of content returned (e.g., `application/json`).
        Content-Length:
          schema:
            type: integer
          description: The length of the response content.
        Access-Control-Allow-Origin:
          schema:
            type: string
          description: The Cross Origin Resource Sharing (CORS) header.
        Access-Control-Allow-Methods:
          schema:
            type: string
          description: This indicates what HTTP methods are allowed.
        Access-Control-Allow-Headers:
          schema:
            type: string
          description: This indicates which HTTP headers can be used during the actual request.
        Access-Control-Allow-Credentials:
          schema:
            type: string
          description: This header is used by servers to indicate that the client shall share HTTP responses.
        Access-Control-Max-Age:
          schema:
            type: integer
          description: This indicates how long the results of a preflight request can be cached.
    NotFound:
      description: Not Found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
      headers:
        Content-Type:
          schema:
            type: string
          description: The type of content returned (e.g., `application/json`).
        Content-Length:
          schema:
            type: integer
          description: The length of the response content.
        Access-Control-Allow-Origin:
          schema:
            type: string
          description: The Cross Origin Resource Sharing (CORS) header.
        Access-Control-Allow-Methods:
          schema:
            type: string
          description: This header indicates what HTTP methods are allowed.
        Access-Control-Allow-Headers:
          schema:
            type: string
          description: This indicates which HTTP headers can be used during the actual request.
        Access-Control-Allow-Credentials:
          schema:
            type: string
          description: This header is used by servers to indicate that the client shall share HTTP responses.
        Access-Control-Max-Age:
          schema:
            type: integer
          description: This indicates how long the results of a preflight request can be cached.
    Accepted:
      description: The job has been accepted for processing.
      content:
        application/json:
          schema:
            properties:
              jobId:
                type: string
                description: The job ID.
              statusUrl:
                type: string
                description: The status URL.
      headers:
        link:
          schema:
            type: string
          description: The status URL for a retry.
        retry-after:
          schema:
            type: integer
          description: The number of seconds until the user should try again.
        Content-Type:
          schema:
            type: string
          description: The type of content that is returned (e.g., `application/json`).
        Content-Length:
          schema:
            type: integer
          description: The length of the response content.
        Access-Control-Allow-Origin:
          schema:
            type: string
          description: The Cross Origin Resource Sharing (CORS) header.
        Access-Control-Allow-Methods:
          schema:
            type: string
          description: This indicates what HTTP methods are allowed.
        Access-Control-Allow-Headers:
          schema:
            type: string
          description: This indicates which HTTP headers can be used during the actual request.
        Access-Control-Allow-Credentials:
          schema:
            type: string
          description: This header is used by servers to indicate that the client shall share HTTP responses.
        Access-Control-Max-Age:
          schema:
            type: integer
          description: This indicates how long the results of a preflight request can be cached.
    BadParams:
      description: Bad Parameter
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
      headers:
        Content-Type:
          schema:
            type: string
          description: The type of content returned (e.g., `application/json`).
        Content-Length:
          schema:
            type: integer
          description: The length of the response content.
        Access-Control-Allow-Origin:
          schema:
            type: string
          description: The Cross Origin Resource Sharing (CORS) header.
        Access-Control-Allow-Methods:
          schema:
            type: string
          description: This header indicates what HTTP methods are allowed.
        Access-Control-Allow-Headers:
          schema:
            type: string
          description: This indicates which HTTP headers can be used during the actual request.
        Access-Control-Allow-Credentials:
          schema:
            type: string
          description: This header is used by servers to indicate that the client shall share HTTP responses.
        Access-Control-Max-Age:
          schema:
            type: integer
          description: This indicates how long the results of a preflight request can be cached.
  schemas:
    BaseJobRequest:
      description: The base job request for any job.
      required:
      - assets
      properties:
        assets:
          type: array
          items:
            $ref: '#/components/schemas/InputAsset'
          description: Information about the assets, which will be used to process the job.
        params:
          type: object
          properties:
            generalSettings:
              description: General settings.
              type: object
              properties:
                fonts:
                  description: Settings related to fonts. It is recommended to include fonts to avoid missing fonts warnings when processing the job.
                  type: object
                  properties:
                    fontsDirectories:
                      description: This lists the font directories for the input InDesign documents. "Document Fonts" in parallel to the document will continue to work even without specifying them.  <br></br> If none are specified, a temporary base directory (working directory) will be considered as a font directory.
                      type: array
                      items:
                        type: string
                        description: This provides a path to a directory relative to a temporary base directory (working directory) where the fonts can be found. It cannot go up using '..' or '/'. Should be a valid path. For specifying a working directory, mention '.'.
                links:
                  description: Settings related to links.
                  type: object
                  properties:
                    replaceLinks:
                      type: array
                      items:
                        type: object
                        required:
                        - targetDocument
                        - mapping
                        properties:
                          targetDocument:
                            description: The document in which the relinking is to be done. Relinking of assets is required to ensure that there are no missing links in the output document.
                            type: string
                          mapping:
                            type: array
                            items:
                              type: object
                              required:
                              - newAssetRelativePath
                              properties:
                                newAssetRelativePath:
                                  type: string
                                  description: This provides a path relative to a temporary base directory (working directory) where the asset to be linked to can be found. It cannot go up using '..' or '/'. Should be a valid file name.
                                currentURI:
                                  type: string
                                  description: The existing URI of the link that needs relinking. If multiple links with this URI are found, all will be relinked. If `linkID` is provided, this attribute will be ignored. Either `currentURI` or `linkID` should be present.
                                linkID:
                                  type: integer
                                  description: The ID of the link which is to be relinked. If `currentURI` is also provided, it will be ignored. Either `currentURI` or `linkID` should be present.
                appLogs:
                  description: Describes parameters regarding application logs.
                  type: object
                  properties:
                    logsRelativePath:
                      type: string
                      description: This provides a path to a file, relative to the temporary base directory (working directory). This file is where the application's logs are to be dumped.
    HyphenationLanguage:
      type: string
      description: Supported hyphenation dictionary languages.
      enum:
      - Arabic
      - Bengali (India)
      - Bulgarian
      - Burmese (Myanmar [Burma])
      - Catalan
      - Croatian
      - Czech
      - Danish
      - 'Dutch: 2005 Reform'
      - 'Dutch: Old Rules'
      - 'English: Canadian'
      - 'English: UK'
      - 'English: USA'
      - 'English: USA Legal'
      - 'English: USA Medical'
      - Estonian
      - Finnish
      - French
      - 'French: Canadian'
      - 'German: 1996 Reform'
      - 'German: 2006 Reform'
      - 'German: Austria 2006 Reform'
      - 'German: Old Rules'
      - 'German: Swiss'
      - 'German: Swiss 2006 Reform'
      - Greek
      - Gujarati (India)
      - Hebrew
      - Hindi (India)
      - Hungarian
      - Indonesian (Indonesia)
      - Italian
      - Kannada (India)
      - Khmer (Cambodia)
      - Lao (Laos)
      - Latvian
      - Lithuanian
      - Malayalam (India)
      - Marathi (India)
      - 'Norwegian: Bokmål'
      - 'Norwegian: Nynorsk'
      - Oriya (India)
      - Polish
      - Portuguese
      - 'Portuguese: Brazilian'
      - 'Portuguese: Orthographic Agreement'
      - Punjabi (India)
      - Romanian
      - Russian
      - Sinhala (Sri Lanka)
      - Slovak
      - Slovenian
      - Spanish
      - Swedish
      - Tamil (India)
      - Telugu (India)
      - Thai
      - Turkish
      - Ukrainian
      - Vietnamese
    BaseJobRequestWithOutput:
      allOf:
      - $ref: '#/components/schemas/BaseJobRequest'
      - description: The base job request for any job with the option to specify output URLs.
        type: object
        properties:
          outputs:
            type: array
            items:
              $ref: '#/components/schemas/OutputAsset'
    MergeDataTagsRequest:
      allOf:
      - $ref: '#/components/schemas/BaseJobRequest'
      - description: Filters according to which the information related to data merge tags would be retrieved.
        type: object
        required:
        - params
        properties:
          params:
            type: object
            required:
            - targetDocument
            properties:
              targetDocument:
                description: The target document that will have its tags extracted.
                type: string
              dataSource:
                description: The data source file to be used for extracting and matching the tags.
                type: string
              filter:
                description: The filter applied for tags. Accepts multiple values.
                type: array
                example:
                - text
                - image
                default:
                - all
                items:
                  type: string
                  enum:
                  - all
                  - text
                  - image
                  - qr
              includePageItemIdentifiers:
                type: boolean
                description: If true, the information for associated page items is added to the tags extracted from the document.
                default: false
    MergeDataRequest:
      allOf:
      - $ref: '#/components/schemas/BaseJobRequestWithOutput'
      - description: Inputs for the data merge request.
        type: object
        required:
        - params
        properties:
          params:
            type: object
            required:
            - targetDocument
            - dataSource
            properties:
              targetDocument:
                description: The tagged document to be used as the template for merging.
                type: string
              dataSource:
                description: The data source files to be used.
                type: string
              outputMediaType:
                description: The type of output.
                type: string
                enum:
                - image/jpeg
                - image/png
                - application/pdf
                - application/x-indesign
                default: application/x-indesign
              exportSettings:
                type: object
                description: The settings corresponding to the output format.
                properties:
                  jobOptionsFile:
                    type: string
                    description: File path reference to a `.joboptions` file (Adobe PDF preset file) containing custom PDF export settings. This file must be included as part of the input assets. It defines detailed PDF output configurations such as compression, color management, and security settings. When provided, this takes precedence over the `pdfPreset` attribute. Only applicable when generating PDF output.
                    default: PDF preset `High Quality Print` will be used if not provided.
                  pdfPreset:
                    type: string
                    description: The PDF export style to be used. This is relevant if `outputMediaType` is `application/pdf`.
                    default: High Quality Print
                    enum:
                    - High Quality Print
                    - PDF/X-1a:2001
                    - PDF/X-3:2002
                    - PDF/X-4:2008
                    - Press Quality
                    - Smallest File Size
                  quality:
                    type: string
                    description: Defines the quality of the output for JPEG and PNG formats.
                    default: medium
                    enum:
                    - low
                    - medium
                    - high
                    - maximum
                  linkImages:
                    description: If `true`, links images to the target document. If `false`, embeds linked images already referred in the target document.  Only relevant if `outputMediaType` is `application/x-indesign`.
                    type: boolean
                    default: false
              recordRange:
                description: The ranges of records to process for this job. Value can be `All`, along with numeral ranges. For example, '1-2, 5'.
                type: string
                default: All
              allowMultipleRecordsPerPage:
                description: If `true`, will show as many records as will fit on a page.
                type: boolean
                default: false
              multipleRecordLayoutOptions:
                description: The options to be used when `allowMultipleRecordsPerPage` is set to `true`.
                type: object
                properties:
                  arrangeBy:
                    description: 'The order that records will be arranged in the target document.

                      * `rows_first` - Arranges records by row.

                      * `columns_first` - Arranges records by column.

                      '
                    type: string
                    default: rows_first
                    enum:
                    - rows_first
                    - columns_first
                  bottomMargin:
                    description: The offset value of the bottom margin in the target document. The values can be specified like `1 pt`, `1 pica`, `1`, etc. If a number is mentioned in the string, it will be used as a value in pica.
                    type: string
                  topMargin:
                    description: The offset value of the top margin in the target document.  The values can be specified like `1 pt`, `1 pica`, `1`, etc. If a number is mentioned in the string, it will be used as a value in pica.
                    type: string
                  leftMargin:
                    description: The offset value of the left margin in the target document. The values can be specified like `1 pt`, `1 pica`, `1`, etc. If a number is mentioned in the string, it will be used as a value in pica.
                    type: string
                  rightMargin:
                    description: The offset value of the right margin in the target document. The values can be specified like `1 pt`, `1 pica`, `1`, etc. If a number is mentioned in the string, it will be used as a value in pica.
                    type: string
                  columnSpacing:
                    description: The amount of spacing between columns of records in the target document.  The values can be specified like `1 pt`, `1 pica`, `1`, etc. If a number is mentioned in the string, it will be used as a value in pica.
                    type: string
                  rowSpacing:
                    description: The amount of spacing between rows of records in the target document.  The values can be specified like `1 pt`, `1 pica`, `1`, etc. If a number is mentioned in the string, it will be used as a value in pica.
                    type: string
              imagePlacementOptions:
                description: These are the options for image placement which will be used while merging images in the document.
                type: object
                properties:
                  centerImage:
                    description: If true, this centers the image in the frame while preserving the frame size as content size and proportions. If the content is larger than the frame, content around the edges is obscured by the bounding box of the frame. <br></br> This won't work when `fittingOption` is `Content_Aware_Fit`.
                    type: boolean
                    default: false
                  fittingOption:
                    description: 'The method of fitting content in a frame.

                      * `content_aware_fit` - Selects best crop region of the content for the frame based on Adobe Sensei. This preserves frame size but it might scale the content size. If this fitting is set, the `centerImage` property is turned-off.

                      * `fill_proportional` - Resizes content to fill the frame while preserving the proportions of the content. If the content and frame have different proportions, some of the content is obscured by the bounding box of the frame.

                      * `fit_content_to_frame` - Resizes content to fit the frame. Content that is a different size than the frame appears stretched or squeezed.

                      * `fit_frame_to_content` - Resizes the frame so it fits the content.

                      * `honor_existing_style` - Applies the frame fitting based on existing settings applied on the original frame.

                      * `preserve_sizes` - Preserves the original sizes of the frame and the content. Content that is larger than the frame is obscured around the edges.

                      * `proportional` - Resizes content to fit the frame while preserving content proportions. If the content and frame have different proportions, an empty space occurs in the frame.

                      '
                    type: string
                    default: proportional
                    enum:
                    - content_aware_fit
                    - fill_proportional
                    - fit_content_to_frame
                    - fit_frame_to_content
                    - honor_existing_style
                    - preserve_sizes
                    - proportional
                  linkImages:
                    description: This applies to the images being brought in the document while merging. If true, this links images to the target document. If false, it embeds images in the target document.
                    type: boolean
                    default: false
              hyphenationSettings:
                description: Hyphenation settings to control word breaking and hyphenation behavior during merge.
                type: object
                properties:
                  afterFirst:
                    type: integer
                    description: Minimum number of characters at the start of a word before a hyphen may be inserted.
                  beforeLast:
                    type: integer
                    description: Minimum number of characters at the end of a word after a hyphen.
                  wordsLongerThan:
                    type: integer
                    description: Minimum word length for hyphenation to apply.
                  ladderLimit:
                    type: integer
                    description: Maximum allowed consecutive hyphenated lines.
                  zone:
                    type: number
                    description: Whitespace ratio allowed at the end of a line before hyphenation begins (0–1).
                  capitalizedWords:
                    type: boolean
                    description: If true, allows hyphenation of capitalized words.
                  lastWord:
                    type: boolean
                    description: If true, allows hyphenation of the last word in a paragraph.
                  acrossColumns:
                    type: boolean
                    description: If true, allows hyphenation across columns.
                  dictionarySettings:
                    type: array
                    description: Special hyphenation definitions by language.
                    items:
                      type: object
                      required:
                      - language
                      - wordList
                      properties:
                        language:
                          $ref: '#/components/schemas/HyphenationLanguage'
                        wordList:
                          type: array
                          description: List of special hyphenation definitions (use `~` to mark break points, e.g., `Know~how`, `check~in`. Put `~` at the beginning of the word to exclude it from hyphenation, e.g., `~Wallstreet`, `~Starbucks`).
                          items:
                            type: string
              pagesPerDocument:
                description: The maximum number of pages per document.
                type: integer
                default: By default this would not be applicable.
              removeBlankLines:
                description: If true, removes blank lines caused by empty fields.
                type: boolean
                default: false
              convertUrlToHyperlink:
                description: If true, all URLs in the merged document are converted into hyperlinks.
                type: boolean
                default: true
              outputFileBaseString:
                type: string
                description: The name of the output file.
                default: It is derived from the original document filename.
              outputFolderPath:
                type: string
                description: The path of the output folder.
                default: A unique temporary folder name would be created.
    OutputAsset:
      description: The URL where the output assets are to be posted after the job is processed.
      type: object
      required:
      - destination
      - source
      properties:
        destination:
          type: object
          required:
          - url
          properties:
            url:
              type: string
              description: The URL of the asset.
            storageType:
              type: string
              description: This is an optional parameter, however IT IS RECOMMENDED to provide this information.
              enum:
              - Azure
              - Dropbox
              - AWS
        source:
          type: string
          description: This provides a path relative of the output where the resource would be generated. It cannot go up using '..' or '/'. Should be a valid file name.
    InputAsset:
      type: object
      description: The URL where the asset will be fetched.
      required:
      - source
      properties:
        source:
          type: object
          required:
          - url
          properties:
            url:
              type: string
              description: The pre-signed URL of the input asset. This is the URL of the asset that will be downloaded and a

# --- truncated at 32 KB (32 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/adobe-suite/refs/heads/main/openapi/adobe-suite-data-merge-api-openapi.yml