{ "$schema": "https://json-structure.org/meta/core/v0/#", "$id": "https://developer.adobe.com/ns/creative-suite/schemas/image-job", "name": "Adobe Creative Suite Image Job", "description": "Schema for asynchronous image processing jobs submitted to Adobe Photoshop and related Creative Suite image APIs. Covers the full lifecycle of a job from submission through completion or failure, including input references, output references, and error details.", "type": "object", "required": [ "jobId", "status" ], "properties": { "jobId": { "type": "string", "description": "Unique identifier assigned to the image processing job upon submission", "examples": [ "f54e0fcb-260b-47c3-b520-de0d17dc2b67" ] }, "status": { "type": "string", "description": "Current lifecycle status of the image processing job", "enum": [ "pending", "running", "succeeded", "failed" ], "examples": [ "succeeded" ] }, "created": { "type": "datetime", "description": "ISO 8601 timestamp indicating when the job was submitted for processing", "examples": [ "2026-03-02T12:00:00.000Z" ] }, "modified": { "type": "datetime", "description": "ISO 8601 timestamp indicating when the job record was last updated", "examples": [ "2026-03-02T12:00:45.000Z" ] }, "input": { "type": "object", "description": "Reference to the input file used for this image processing job", "required": [ "href", "storage" ], "properties": { "href": { "type": "string", "description": "URL or path to the input file in the specified cloud storage provider", "examples": [ "https://my-storage.blob.core.windows.net/images/input.psd" ] }, "storage": { "type": "string", "description": "Cloud storage provider where the input file resides", "enum": [ "adobe", "external", "azure", "dropbox" ], "examples": [ "external" ] }, "type": { "type": "string", "description": "MIME type of the input file", "examples": [ "image/vnd.adobe.photoshop", "image/jpeg", "image/png" ] } }, "additionalProperties": false }, "output": { "type": "object", "description": "Reference to the output file location for this image processing job", "required": [ "href", "storage", "type" ], "properties": { "href": { "type": "string", "description": "URL or path where the processed output file will be stored", "examples": [ "https://my-storage.blob.core.windows.net/images/output.png" ] }, "storage": { "type": "string", "description": "Cloud storage provider where the output file will be written", "enum": [ "adobe", "external", "azure", "dropbox" ], "examples": [ "external" ] }, "type": { "type": "string", "description": "MIME type of the output file to produce", "examples": [ "image/png", "image/jpeg", "image/vnd.adobe.photoshop" ] }, "width": { "type": "int32", "description": "Width of the output image in pixels", "minimum": 1, "examples": [ 1920 ] }, "height": { "type": "int32", "description": "Height of the output image in pixels", "minimum": 1, "examples": [ 1080 ] }, "overwrite": { "type": "boolean", "description": "Whether to overwrite an existing file at the output location", "default": true } }, "additionalProperties": false }, "outputs": { "type": "array", "description": "List of output files produced when the job succeeds (for multi-output operations)", "items": { "type": "object", "description": "An individual output produced by this image processing job", "properties": { "input": { "type": "string", "description": "Reference to the input file that generated this output" }, "status": { "type": "string", "description": "Status of this specific output", "enum": [ "pending", "running", "succeeded", "failed" ] }, "details": { "type": "string", "description": "Additional human-readable detail about this output's status" }, "href": { "type": "string", "description": "URL to download the completed output file", "examples": [ "https://my-storage.blob.core.windows.net/images/output.png" ] }, "storage": { "type": "string", "description": "Cloud storage provider where the output file was written", "enum": [ "adobe", "external", "azure", "dropbox" ] }, "type": { "type": "string", "description": "MIME type of the output file", "examples": [ "image/png" ] }, "width": { "type": "int32", "description": "Actual width of the output image in pixels", "minimum": 1 }, "height": { "type": "int32", "description": "Actual height of the output image in pixels", "minimum": 1 } } } }, "errors": { "type": "array", "description": "List of errors encountered during job processing (populated when status is failed)", "items": { "type": "object", "description": "An individual error encountered during image processing", "properties": { "code": { "type": "string", "description": "Machine-readable error code identifying the type of failure", "examples": [ "InputValidationError", "StorageAccessError" ] }, "title": { "type": "string", "description": "Short human-readable title for the error", "examples": [ "Invalid input file format" ] }, "description": { "type": "string", "description": "Detailed human-readable explanation of what went wrong", "examples": [ "The provided file is not a valid PSD document" ] } }, "required": [ "code" ] } } }, "additionalProperties": false, "examples": [ { "jobId": "f54e0fcb-260b-47c3-b520-de0d17dc2b67", "status": "succeeded", "created": "2026-03-02T12:00:00.000Z", "modified": "2026-03-02T12:00:45.000Z", "input": { "href": "https://my-storage.blob.core.windows.net/images/product.jpg", "storage": "external", "type": "image/jpeg" }, "output": { "href": "https://my-storage.blob.core.windows.net/images/product-cutout.png", "storage": "external", "type": "image/png", "width": 2000, "height": 3000 }, "errors": [] } ] }