Adobe Suite Photoshop API

The Photoshop API from Adobe Suite — 17 operation(s) for photoshop.

Operations 17

POST /sensei/cutout Remove Background #
POST /sensei/mask Create Mask #
GET /sensei/status/{jobId} Get the status of a job for Remove Background and Create Mask #
POST /pie/psdService/renditionCreate Create renditions #
POST /pie/psdService/actionJSON Execute actionJSON #
POST /pie/psdService/actionJsonCreate Create actionJSON #
POST /pie/psdService/smartObject Replace Smart Object #
POST /pie/psdService/photoshopActions Execute Photoshop Actions #
POST /pie/psdService/productCrop Execute Product Crop #
POST /pie/psdService/depthBlur Execute Depth Blur #
POST /pie/psdService/text Edit text layers #
POST /pie/psdService/documentOperations Apply psd edits #
POST /pie/psdService/documentCreate Create a new psd #
POST /pie/psdService/artboardCreate Create an artboard #
GET /pie/psdService/status/{jobId} Get the status of a job #
POST /pie/psdService/documentManifest Get manifest #
GET /pie/psdService/status/{jobid} Get the status of a job for documentManifest #

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-photoshop-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 form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

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

OpenAPI Specification

adobe-suite-photoshop-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: documentation Photoshop API
  description: API Documentation
  version: '1.0'
servers:
- url: https://image.adobe.io
security: []
tags:
- name: Photoshop
paths:
  /sensei/cutout:
    post:
      tags:
      - Photoshop
      summary: Remove Background
      description: " Generates a PNG file in 4 channel RGBA format with the cutout operation applied to the input image \\\n Generates a PNG file in 3 channel RGB format with the mask operation applied to the input image.\\\n To get status of this job, call [Status API](./#operation/icstatus).\\\n To know more about this feature refer [Remove Background](../features/#remove-background)"
      operationId: cutout
      parameters:
      - name: Authorization
        description: 'Bearer: ${Authorization Token}'
        in: header
        required: true
        schema:
          type: string
      - name: x-api-key
        description: API key/client id
        in: header
        required: true
        schema:
          type: string
      - name: Content-Type
        description: application/json
        in: header
        required: true
        schema:
          type: string
      - name: x-gw-ims-org-id
        description: IMS organization ID. This needs to be sent only if it is desirable to receive the job status through Adobe I/O Events.
        in: header
        required: false
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: ./ic/post_cutout.schema.json
        required: true
      responses:
        '202':
          description: Successful operation
          content:
            application/json:
              schema:
                $ref: ./ic/api_response_success_schema.json
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: ./api_response_400_error_schema.json
        '402':
          description: Trial Limit Exceeded
          content:
            application/json:
              schema:
                $ref: ./api_response_402_error_schema.json
        '403':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: ./api_response_403_error_schema.json
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: ./api_response_404_error_schema.json
        '409':
          description: File Overwrite Error
          content:
            application/json:
              schema:
                $ref: ./api_response_409_error_schema.json
        '410':
          description: Asset Link Invalid
          content:
            application/json:
              schema:
                $ref: ./api_response_410_error_schema.json
        '500':
          description: Internal Server Error
      x-codeSamples:
      - lang: shell
        source: "curl --request POST \\\n  --url https://image.adobe.io/sensei/cutout \\\n  --header 'Authorization: Bearer $token' \\\n  --header 'content-type: application/json' \\\n  --header 'x-api-key: $x-api-key' \\\n  --data '{\"input\":{\"href\":\"string\",\"storage\":\"external\"},\\\n \"output\":{\"href\":\"string\",\"storage\":\"external\",\"mask\":{\"format\":\"soft\"}}}'"
  /sensei/mask:
    post:
      tags:
      - Photoshop
      summary: Create Mask
      description: " Generates a mask PNG.\nTo get status of this job, call [Status API](./#operation/icstatus).\\\n To know more about this feature refer [Image Mask](../features/#image-mask)"
      operationId: mask
      parameters:
      - name: Authorization
        description: 'Bearer: ${Authorization Token}'
        in: header
        required: true
        schema:
          type: string
      - name: x-api-key
        description: API key/client id
        in: header
        required: true
        schema:
          type: string
      - name: Content-Type
        description: application/json
        in: header
        required: true
        schema:
          type: string
      - name: x-gw-ims-org-id
        description: IMS organization ID. This needs to be sent only if it is desirable to receive the job status through Adobe I/O Events.
        in: header
        required: false
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: ./ic/post_cutout.schema.json
        required: true
      responses:
        '202':
          description: Successful operation
          content:
            application/json:
              schema:
                $ref: ./ic/api_response_success_schema.json
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: ./api_response_400_error_schema.json
        '402':
          description: Trial Limit Exceeded
          content:
            application/json:
              schema:
                $ref: ./api_response_402_error_schema.json
        '403':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: ./api_response_403_error_schema.json
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: ./api_response_404_error_schema.json
        '409':
          description: File Overwrite Error
          content:
            application/json:
              schema:
                $ref: ./api_response_409_error_schema.json
        '410':
          description: Asset Link Invalid
          content:
            application/json:
              schema:
                $ref: ./api_response_410_error_schema.json
        '500':
          description: Internal Server Error
      x-codeSamples:
      - lang: shell
        source: "curl --request POST \\\n  --url https://image.adobe.io/sensei/mask \\\n  --header 'Authorization: Bearer $token' \\\n  --header 'content-type: application/json' \\\n  --header 'x-api-key: $x-api-key' \\\n  --data '{\"input\":{\"href\":\"string\",\"storage\":\"external\"},\\\n \"output\":{\"href\":\"string\",\"storage\":\"external\",\"mask\":{\"format\":\"soft\"}}}'"
  /sensei/status/{jobId}:
    get:
      tags:
      - Photoshop
      summary: Get the status of a job for Remove Background and Create Mask
      description: Returns the status of a job. Please expand `200 Successful operation` under `Responses` to know details of the status returned.
      operationId: icstatus
      parameters:
      - name: Authorization
        description: 'Bearer: ${Authorization Token}'
        in: header
        required: true
        schema:
          type: string
      - name: x-api-key
        description: API key/client id
        in: header
        required: true
        schema:
          type: string
      - name: Content-Type
        description: application/json
        in: header
        required: true
        schema:
          type: string
      - name: x-gw-ims-org-id
        description: IMS organization ID. This needs to be sent only if it is desirable to receive the job status through Adobe I/O Events.
        in: header
        required: false
        schema:
          type: string
      - name: jobId
        in: path
        description: The jobId to get status for.
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                $ref: ./ic/get_status.schema.json
  /pie/psdService/renditionCreate:
    post:
      tags:
      - Photoshop
      summary: Create renditions
      description: " Create renditions.\nTo get status of this job, call [Status API](./#operation/pitsstatus). \\\n To know more about this feature refer [Rendering Conversions](../features/#rendering--conversions)"
      operationId: renditionCreate
      parameters:
      - name: Authorization
        description: 'Bearer: ${Authorization Token}'
        in: header
        required: true
        schema:
          type: string
      - name: x-api-key
        description: API key/client id
        in: header
        required: true
        schema:
          type: string
      - name: Content-Type
        description: application/json
        in: header
        required: true
        schema:
          type: string
      - name: x-gw-ims-org-id
        description: IMS organization ID. This needs to be sent only if it is desirable to receive the job status through Adobe I/O Events.
        in: header
        required: false
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: ./PITS/post_rendition_create.schema.json
        required: true
      responses:
        '202':
          description: Successful operation
          content:
            application/json:
              schema:
                $ref: ./PITS/api_response_success_schema.json
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: ./api_response_400_error_schema.json
        '402':
          description: Trial Limit Exceeded
          content:
            application/json:
              schema:
                $ref: ./api_response_402_error_schema.json
        '403':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: ./api_response_403_error_schema.json
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: ./api_response_404_error_schema.json
        '409':
          description: File Overwrite Error
          content:
            application/json:
              schema:
                $ref: ./api_response_409_error_schema.json
        '410':
          description: Asset Link Invalid
          content:
            application/json:
              schema:
                $ref: ./api_response_410_error_schema.json
        '500':
          description: Internal Server Error
      x-codeSamples:
      - lang: shell
        source: "curl --request POST \\\n  --url https://image.adobe.io/pie/psdService/renditionCreate \\\n  --header 'Authorization: Bearer $token' \\\n  --header 'content-type: application/json' \\\n  --header 'x-api-key: $x-api-key' \\\n  --data '{\"inputs\":[{\"href\":\"string\",\"storage\":\"external\"}],\\\n \"outputs\":[{\"href\":\"string\",\"storage\":\"external\",\"type\":\"image/jpeg\",\"quality\": 5},\\\n {\"href\":\"string\",\"storage\":\"external\",\"type\":\"image/png\",\\\n \"layers\":[{\"name\":\"bug\"},{\"name\":\"flower\"}]}]}'"
      - lang: batch_example
        source: "curl --request POST \\\n  --url https://image.adobe.io/pie/psdService/renditionCreate \\\n  --header 'Authorization: Bearer $token' \\\n  --header 'content-type: application/json' \\\n  --header 'x-api-key: $x-api-key' \\\n  --data '{\"inputs\":[{\"href\":\"presigned_get_url_to_folder_containing_files\",\\\n \"storage\":\"external\"}],\"outputs\":[{\"href\":\"presigned_put_url\",\\\n \"storage\":\"external\",\"type\":\"image/jpeg\",\\\n \"width\":0,\"quality\":3},\\\n {\"href\":\"presigned_put_url\",\"storage\":\"external\",\\\n \"type\":\"image/png\",\"width\":0,\"compression\":\"medium\"},\\\n {\"href\":\"presigned_put_url\",\"storage\":\"external\",\"type\":\"image/vnd.adobe.photoshop\"}]}'"
      - lang: icc_profile_example
        source: "curl --request POST \\\n  --url https://image.adobe.io/pie/psdService/renditionCreate \\\n  --header 'Authorization: Bearer $token' \\\n  --header 'content-type: application/json' \\\n  --header 'x-api-key: $x-api-key' \\\n  --data '{\"inputs\":[{\"href\":\"presigned_getURL\",\"storage\":\"external\"}],\\\n \"outputs\":[{\"href\":\"presigned_getURL\",\"storage\":\"external\",\\\n \"type\":\"images/jpeg\",\\\n \"iccProfile\":{\"imageMode\":\"rgb\",\"iccProfile\":{\"href\":\"presigned_getURL\",\"storage\":\"external\"}}}]}'"
  /pie/psdService/actionJSON:
    post:
      tags:
      - Photoshop
      summary: Execute actionJSON
      description: " Playback photoshop actions in actionJSON format.\nTo get status of this job, call [Status API](./#operation/pitsstatus). \\\n To know more about this feature refer [Rendering Conversions](../features/#rendering--conversions)"
      operationId: actionJSON
      parameters:
      - name: Authorization
        description: 'Bearer: ${Authorization Token}'
        in: header
        required: true
        schema:
          type: string
      - name: x-api-key
        description: API key/client id
        in: header
        required: true
        schema:
          type: string
      - name: Content-Type
        description: application/json
        in: header
        required: true
        schema:
          type: string
      - name: x-gw-ims-org-id
        description: IMS organization ID. This needs to be sent only if it is desirable to receive the job status through Adobe I/O Events.
        in: header
        required: false
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: ./PITS/post_action_json.schema.json
        required: true
      responses:
        '202':
          description: Successful operation
          content:
            application/json:
              schema:
                $ref: ./PITS/api_response_success_schema.json
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: ./api_response_400_error_schema.json
        '402':
          description: Trial Limit Exceeded
          content:
            application/json:
              schema:
                $ref: ./api_response_402_error_schema.json
        '403':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: ./api_response_403_error_schema.json
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: ./api_response_404_error_schema.json
        '409':
          description: File Overwrite Error
          content:
            application/json:
              schema:
                $ref: ./api_response_409_error_schema.json
        '410':
          description: Asset Link Invalid
          content:
            application/json:
              schema:
                $ref: ./api_response_410_error_schema.json
        '500':
          description: Internal Server Error
      x-codeSamples:
      - lang: shell
        source: "curl --request POST \\\n  --url https://image.adobe.io/pie/psdService/actionJSON \\\n  --header 'Authorization: Bearer $token' \\\n  --header 'content-type: application/json' \\\n  --header 'x-api-key: $x-api-key' \\\n  --data '{\"inputs\": [{\"href\": \"string\",\"storage\": \"external\"}],\"options\": {\"actionJSON\": [{\"_obj\": \"crop\",\"angle\": {\"_unit\": \"angleUnit\",\"_value\": 0.0},\\\n\"constrainProportions\": false,\"cropAspectRatioModeKey\": {\"_enum\": \"cropAspectRatioModeClass\",\"_value\": \"pureAspectRatio\"},\"delete\": true,\"to\": {\"_obj\": \"rectangle\",\"bottom\": {\"_unit\": \"pixelsUnit\",\"_value\": 469.0},\"left\": {\"_unit\": \"pixelsUnit\",\"_value\": 0.0},\"right\": {\"_unit\": \"pixelsUnit\",\"_value\": 750.0},\"top\": {\"_unit\": \"pixelsUnit\",\"_value\": 0.0}}},{\"_obj\": \"crop\",\"angle\": {\"_unit\": \"angleUnit\",\"_value\": 0.0},\"constrainProportions\": false,\"cropAspectRatioModeKey\": {\"_enum\": \"cropAspectRatioModeClass\",\"_value\": \"pureAspectRatio\"},\"delete\": true,\"to\": {\"_obj\": \"rectangle\",\"bottom\": {\"_unit\": \"pixelsUnit\",\"_value\": 368.421875},\"left\": {\"_unit\": \"pixelsUnit\",\"_value\": 108.515625},\"right\": {\"_unit\": \"pixelsUnit\",\"_value\": 603.375},\"top\": {\"_unit\": \"pixelsUnit\",\"_value\": 0.0}}},{\"_obj\": \"make\",\"_target\": [{\"_ref\": \"contentLayer\"}],\"using\": {\"_obj\": \"contentLayer\",\"type\": {\"_obj\": \"gradientLayer\",\"angle\": {\"_unit\": \"angleUnit\",\"_value\": 90.0},\"gradient\": {\"_obj\": \"gradientClassEvent\",\"colors\": [{\"_obj\": \"colorStop\",\"color\": {\"_obj\": \"RGBColor\",\"blue\": 0.0,\"grain\": 0.0,\"red\": 0.0},\"location\": 0,\"midpoint\": 50,\"type\": {\"_enum\": \"colorStopType\",\"_value\": \"userStop\"}}, {\"_obj\": \"colorStop\",\"color\": {\"_obj\": \"RGBColor\",\"blue\": 0.0,\"grain\": 0.0,\"red\": 0.0},\"location\": 4096,\"midpoint\": 50,\"type\": {\"_enum\": \"colorStopType\",\"_value\": \"userStop\"}}],\"gradientForm\": {\"_enum\": \"gradientForm\",\"_value\": \"customStops\"},\"interfaceIconFrameDimmed\": 4096.0,\"name\": \"Color to Transparent\",\"transparency\": [{\"_obj\": \"transferSpec\",\"location\": 0,\"midpoint\": 50,\"opacity\": {\"_unit\": \"percentUnit\",\"_value\": 100.0}}, {\"_obj\": \"transferSpec\",\"location\": 4096,\"midpoint\": 50,\"opacity\": {\"_unit\": \"percentUnit\",\"_value\": 0.0}}]},\"gradientsInterpolationMethod\":{\"_enum\": \"gradientInterpolationMethodType\",\"_value\": \"perceptual\"},\"type\": {\"_enum\": \"gradientType\",\"_value\": \"linear\"}}}}]},\"outputs\": [{\"storage\": \"external\",\"type\": \"image/jpeg\",t\"overwrite\": true,\"href\": \"string\"}]}'"
      - lang: multiple_input_example
        source: "curl --request POST \\\n  --url https://image.adobe.io/pie/psdService/actionJSON \\\n  --header 'Authorization: Bearer $token' \\\n  --header 'content-type: application/json' \\\n  --header 'x-api-key: $x-api-key' \\\n  --data '{\"inputs\": [{\"href\": \"string\",\"storage\": \"external\"}],\"options\": {\"additionalImages\": [{\"href\": \"string\",\"storage\": \"external\"}],\"actionJSON\": [{\"ID\": 3,\"_obj\": \"placeEvent\",\"freeTransformCenterState\": {\"_enum\": \"quadCenterState\",\"_value\": \"QCSAverage\"},\"null\": {\"_kind\": \"local\",\"_path\": \"PEGASUS_ACTION_JSON_OPTIONS_ADDITIONAL_IMAGES_0\"},\"offset\": {\"_obj\": \"offset\",\"horizontal\": {\"_unit\": \"pixelsUnit\",\"_value\": 0},\"vertical\": {\"_unit\": \"pixelsUnit\",\"_value\": 0}}},{\"_obj\": \"autoCutout\",\"sampleAllLayers\": false},{\"_obj\":\"make\",\"at\": {\"_enum\":\"channel\",\"_ref\": \"channel\",  \"_value\": \"mask\"},\"new\": {  \"_class\": \"channel\"},\"using\": {  \"_enum\": \"userMaskEnabled\",\"_value\":\"revealSelection\"}},{\"_obj\": \"set\",\"_target\": [{\"_property\": \"selection\",\"_ref\": \"channel\"  }],\"to\": {  \"_enum\": \"ordinal\",\"_value\": \"allEnum\"}},{\"_obj\": \"align\",\"_target\": [{\"_enum\": \"ordinal\",\"_ref\": \"layer\"  }],\"alignToCanvas\": false,\"using\": {\"_enum\": \"alignDistributeSelector\",  \"_value\": \"ADSBottoms\"}},{\"_obj\": \"align\",\"_target\": [{\"_enum\": \"ordinal\",\"_ref\": \"layer\"  }],\"alignToCanvas\": false,\"using\": {\"_enum\": \"alignDistributeSelector\",\"_value\": \"ADSRights\"}},{\"_obj\": \"set\",\"_target\": [  {\"_property\": \"selection\",\"_ref\": \"channel\"}],\"to\": {\"_enum\": \"ordinal\",\"_value\": \"none\"}}]},\"outputs\":[{\"type\": \"image/jpeg\",\"href\": \"string\",\"storage\": \"external\"}]}'"
  /pie/psdService/actionJsonCreate:
    post:
      tags:
      - Photoshop
      summary: Create actionJSON
      description: " Converts an atn file to actionJSON.\nTo get status of this job, call [Status API](./#operation/pitsstatus). \\\n To know more about this feature refer [Rendering Conversions](../features/#rendering--conversions)"
      operationId: actionJsonCreate
      parameters:
      - name: Authorization
        description: 'Bearer: ${Authorization Token}'
        in: header
        required: true
        schema:
          type: string
      - name: x-api-key
        description: API key/client id
        in: header
        required: true
        schema:
          type: string
      - name: Content-Type
        description: application/json
        in: header
        required: true
        schema:
          type: string
      - name: x-gw-ims-org-id
        description: IMS organization ID. This needs to be sent only if it is desirable to receive the job status through Adobe I/O Events.
        in: header
        required: false
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: ./PITS/post_action_json_create.schema.json
        required: true
      responses:
        '202':
          description: Successful operation
          content:
            application/json:
              schema:
                $ref: ./PITS/api_response_success_schema.json
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: ./api_response_400_error_schema.json
        '402':
          description: Trial Limit Exceeded
          content:
            application/json:
              schema:
                $ref: ./api_response_402_error_schema.json
        '403':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: ./api_response_403_error_schema.json
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: ./api_response_404_error_schema.json
        '410':
          description: Asset Link Invalid
          content:
            application/json:
              schema:
                $ref: ./api_response_410_error_schema.json
        '500':
          description: Internal Server Error
      x-codeSamples:
      - lang: shell
        source: "curl --request POST \\\n --url https://image.adobe.io/pie/psdService/actioJsonCreate \\\n --header 'Authorization: Bearer $token' \\\n --header 'content-type: application/json' \\\n --header 'x-api-key: $x-api-key' \\\n --data '{\"inputs\": [{\"storage\": \"external\",\"href\": \"string\"}] \\\n,\"options\": {\"actions\": [{\"actionName\": \"string\"}]}}'"
  /pie/psdService/smartObject:
    post:
      tags:
      - Photoshop
      summary: Replace Smart Object
      description: " Edits a PSD for replacing embedded smart object and then generate renditions and/or save a new psd.\nTo get status of this job, call [Status API](./#operation/pitsstatus).\\\n To know more about this feature refer [SmartObject](../features/#smartobject)"
      operationId: smartObject
      parameters:
      - name: Authorization
        description: 'Bearer: ${Authorization Token}'
        in: header
        required: true
        schema:
          type: string
      - name: x-api-key
        description: API key/client id
        in: header
        required: true
        schema:
          type: string
      - name: Content-Type
        description: application/json
        in: header
        required: true
        schema:
          type: string
      - name: x-gw-ims-org-id
        description: IMS organization ID. This needs to be sent only if it is desirable to receive the job status through Adobe I/O Events.
        in: header
        required: false
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: ./PITS/post_smart_object.schema.json
        required: true
      responses:
        '202':
          description: Successful operation
          content:
            application/json:
              schema:
                $ref: ./PITS/api_response_success_schema.json
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: ./api_response_400_error_schema.json
        '402':
          description: Trial Limit Exceeded
          content:
            application/json:
              schema:
                $ref: ./api_response_402_error_schema.json
        '403':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: ./api_response_403_error_schema.json
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: ./api_response_404_error_schema.json
        '409':
          description: File Overwrite Error
          content:
            application/json:
              schema:
                $ref: ./api_response_409_error_schema.json
        '410':
          description: Asset Link Invalid
          content:
            application/json:
              schema:
                $ref: ./api_response_410_error_schema.json
        '500':
          description: Internal Server Error
      x-codeSamples:
      - lang: shell
        source: "curl --request POST \\\n  --url https://image.adobe.io/pie/psdService/smartObject \\\n  --header 'Authorization: Bearer $token' \\\n  --header 'content-type: application/json' \\\n  --header 'x-api-key: $x-api-key' \\\n  --data '{\"inputs\":[{\"href\":\"get_presigned_url\",\"storage\":\"external\"}],\\\n \"options\":{\"layers\":[{\"name\":\"New\",\\\n \"input\":{\"href\":\"get_presigned_url\",\"storage\":\"external\"},\\\n \"bounds\":{\"width\":602,\"height\":400}}]},\\\n \"outputs\":[{\"storage\":\"external\",\"href\":\"put_presigned_url\",\\\n \"type\":\"image/vnd.adobe.photoshop\"}]}'"
  /pie/psdService/photoshopActions:
    post:
      tags:
      - Photoshop
      summary: Execute Photoshop Actions
      description: " Executes Photoshop Actions on a given image.\nTo get status of this job, call [Status API](./#operation/pitsstatus). \\\n To know more about this feature refer [Photoshop Actions](../features/#photoshop-actions)"
      operationId: photoshopActions
      parameters:
      - name: Authorization
        description: 'Bearer: ${Authorization Token}'
        in: header
        required: true
        schema:
          type: string
      - name: x-api-key
        description: API key/client id
        in: header
        required: true
        schema:
          type: string
      - name: Content-Type
        description: application/json
        in: header
        required: true
        schema:
          type: string
      - name: x-gw-ims-org-id
        description: IMS organization ID. This needs to be sent only if it is desirable to receive the job status through Adobe I/O Events.
        in: header
        required: false
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: ./PITS/post_photoshop_actions.schema.json
        required: true
      responses:
        '202':
          description: Successful operation
          content:
            application/json:
              schema:
                $ref: ./PITS/api_response_success_schema.json
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: ./api_response_400_error_schema.json
        '402':
          description: Trial Limit Exceeded
          content:
            application/json:
              schema:
                $ref: ./api_response_402_error_schema.json
        '403':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: ./api_response_403_error_schema.json
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: ./api_response_404_error_schema.json
        '409':
          description: File Overwrite Error
          content:
            application/json:
              schema:
                $ref: ./api_response_409_error_schema.json
        '410':
          description: Asset Link Invalid
          content:
            application/json:
              schema:
                $ref: ./api_response_410_error_schema.json
        '500':
          description: Internal Server Error
      x-codeSamples:
      - lang: shell
        source: "curl --request POST \\\n  --url https://image.adobe.io/pie/psdService/photoshopActions \\\n  --header 'Authorization: Bearer $token' \\\n  --header 'content-type: application/json' \\\n  --header 'x-api-key: $x-api-key' \\\n  --data '{\"inputs\":[{\"href\":\"get_presigned_url\",\"storage\":\"external\"}],\\\n \"options\":{\"actions\":[{\"href\":\"https://get-presigned-url.com/Oil-paint.atn\",\"storage\":\"string\"}]}\\\n \"outputs\":[{\"href\":\"https://put-presigned-url.com/output.jpg\",\"storage\":\"external\",\"type\":\"image/jpeg\"}]}'"
  /pie/psdService/productCrop:
    post:
      tags:
      - Photoshop
      summary: Execute Product Crop
      description: " Executes Product Crop on a given image.\nTo get status of this job, call [Status API](./#operation/pitsstatus).\\\n To know more about this feature refer [ProductCrop](../features/#productcrop)"
      operationId: productCrop
      parameters:
      - name: Authorization
        description: 'Bearer: ${Authorization Token}'
        in: header
        required: true
        schema:
          type: string
      - name: x-api-key
        description: API key/client id
        in: header
        required: true
        schema:
          type: string
      - name: Content-Type
        description: application/json
        in: header
        required: true
        schema:
          type: string
      - name: x-gw-ims-org-id
        description: IMS organization ID. This needs to be sent only if it is desirable to receive the job status through Adobe I/O Events.
        in: header
        required: false
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: ./PITS/post_product_crop_action_json.schema.json
        required: true
      responses:
        '202':
          description: Successful operation
          content:
            application/json:
              schema:
                $ref: ./PITS/api_response_success_schema.json
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: ./api_response_400_error_schema.json
        '402':
          description: Trial Limit Exceeded
          content:
            application/json:
              schema:
                $ref: ./api_response_402_error_schema.json
        '403':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: ./api_response_403_error_schema.json
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: ./api_response_404_error_schema.json
        '409':
          description: File Overwrite Error
          content:
            application/json:
              schema:
                $ref: ./api_response_409_error_schema.json
        '410':
          description: Asset Link Invalid
          content:
            application/json:
              schema:
                $ref: ./api_response_410_error_schema.json
        '500':
          description: Internal Server Error
      x-codeSamples:
      - lang: shell
        source: "curl --request POST \\\n  --url https://image.adobe.io/pie/psdService/productCrop \\\n  --header 'Authorization: Bearer $token' \\\n  --header 'content-type: application/json' \\\n  --header 'x-api-key: $x-api-key' \\\n  --data '{\"inputs\":[{\"href\":\"get_presigned_url\",\"storage\":\"external\"}],\n\"options\": {\"unit\":\"Pixels\",\"width\":10,\"height\":10},\n \"outputs\":[{\"href\":\"https://put-presigned-url.com/output.jpg\",\"storage\":\"external\",\"type\":\"image/jpeg\"}]}'"
  /pie/psdService/depthBlur:
    post:
      tags:
      - Photoshop
      summary: Execute Depth Blur
      description: " Executes Depth Blur on a given image.\nTo get status of this job, call [Status API](./#operation/pitsstatus). \\\n To know more about this feature refer [DepthBlur](../features/#depthblur)"
      operationId: depthBlur
      parameters:
      - name: Authorization
        description: 'Bearer: ${Authorization Token}'
        in: header
        required: true
        schema:
          type: string
      - name: x-api-key
        description: API key/client id
        in: header
        require

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