Adobe Lightroom XMP API

Read and write external develop XMP sidecar files

OpenAPI Specification

lightroom-xmp-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Adobe Lightroom Lightroom Albums Album Assets XMP API
  description: API for creating and managing albums and collections within an Adobe Lightroom cloud catalog. Albums organize assets into user-defined collections. Supports listing, creating, updating, and deleting albums as well as managing the assets within each album.
  version: '2'
  contact:
    name: Adobe Lightroom Developer Support
    url: https://community.adobe.com/t5/lightroom/ct-p/ct-lightroom
  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://lr.adobe.io/v2
  description: Lightroom Services Production Server
security:
- oauth2:
  - lr_partner_apis
- apiKey: []
tags:
- name: XMP
  description: Read and write external develop XMP sidecar files
paths:
  /catalogs/{catalog_id}/assets/{asset_id}/xmp/develop:
    get:
      operationId: getDevelopXmp
      summary: Adobe Lightroom Get Develop Settings Xmp
      description: Retrieves the external develop XMP sidecar data for the asset. Contains Lightroom develop module settings including exposure, white balance, tone curve, and other adjustments in XMP/RDF format.
      tags:
      - XMP
      parameters:
      - $ref: '#/components/parameters/CatalogId'
      - $ref: '#/components/parameters/AssetId'
      - $ref: '#/components/parameters/XApiKey'
      responses:
        '200':
          description: XMP develop settings retrieved
          content:
            application/rdf+xml:
              schema:
                type: string
              examples:
                Getdevelopxmp200Example:
                  summary: Default getDevelopXmp 200 response
                  x-microcks-default: true
                  value: example_value
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    put:
      operationId: putDevelopXmp
      summary: Adobe Lightroom Upload Develop Settings Xmp
      description: Uploads external develop XMP sidecar data for the asset. Applies Lightroom develop settings to the asset.
      tags:
      - XMP
      parameters:
      - $ref: '#/components/parameters/CatalogId'
      - $ref: '#/components/parameters/AssetId'
      - $ref: '#/components/parameters/XApiKey'
      requestBody:
        required: true
        content:
          application/rdf+xml:
            schema:
              type: string
            examples:
              PutdevelopxmpRequestExample:
                summary: Default putDevelopXmp request
                x-microcks-default: true
                value: example_value
      responses:
        '200':
          description: XMP develop settings applied
        '201':
          description: XMP develop settings created
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
components:
  parameters:
    AssetId:
      name: asset_id
      in: path
      required: true
      description: Unique identifier of the asset (UUID format)
      schema:
        type: string
        format: uuid
    CatalogId:
      name: catalog_id
      in: path
      required: true
      description: Unique identifier of the Lightroom catalog
      schema:
        type: string
    XApiKey:
      name: X-Api-Key
      in: header
      required: true
      description: API key from Adobe Developer Console
      schema:
        type: string
  responses:
    NotFound:
      description: Resource not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    Unauthorized:
      description: Authentication required
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  schemas:
    ErrorResponse:
      type: object
      properties:
        code:
          type: integer
          example: 10
        description:
          type: string
          example: A sample description.
  securitySchemes:
    oauth2:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: https://ims-na1.adobelogin.com/ims/authorize/v2
          tokenUrl: https://ims-na1.adobelogin.com/ims/token/v3
          scopes:
            lr_partner_apis: Access Lightroom partner APIs
    apiKey:
      type: apiKey
      name: X-Api-Key
      in: header
externalDocs:
  description: Lightroom Albums API Documentation
  url: https://developer.adobe.com/lightroom/lightroom-api-docs/api/