openapi: 3.2.0 info: title: Adobe Suite Manage jobs API version: '1.0' description: 'Operations tagged Manage jobs across 2 of this provider''s published API definitions: adobe-suite-firefly-audio-video-openapi.json, adobe-suite-firefly-openapi.json. Each path carries the servers of the definition it was published in.' servers: - url: https://audio-video-api.adobe.io description: Production server. - url: https://firefly-api.adobe.io description: Production server. security: - AccessToken: [] X-Api-Key: [] tags: - name: Manage jobs description: Endpoints for managing asynchronous jobs. paths: /v1/status/{jobId}: get: tags: - Manage jobs summary: Get job status description: Provides the status and result of an asynchronous job. For Dynamic Graphics Render (DGR), returns the status of a Describe template or Render job. operationId: status parameters: - name: jobId in: path description: The job ID of an asynchronous job. required: true schema: type: string responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/StatusAPIResponse' examples: StatusAPIInprogressRequestResponse: $ref: '#/components/examples/StatusApiInProgressRequestResponse' StatusAPISuccessRequestResponse: $ref: '#/components/examples/StatusApiSuccessRequestResponse' StatusAPIFailedInputFileDownloadResponse: $ref: '#/components/examples/StatusAPIFailedInputFileDownloadResponse' DGRJobStatusNotStarted: $ref: '#/components/examples/DGRJobStatusNotStarted' DGRJobStatusRunning: $ref: '#/components/examples/DGRJobStatusRunning' DGRDescribeSuccess: $ref: '#/components/examples/DGRDescribeSuccess' DGRDescribeAEPSuccess: $ref: '#/components/examples/DGRDescribeAEPSuccess' DGRRenderSuccessSingle: $ref: '#/components/examples/DGRRenderSuccessSingle' DGRRenderSuccessMultiple: $ref: '#/components/examples/DGRRenderSuccessMultiple' DGRRenderPartialSuccess: $ref: '#/components/examples/DGRRenderPartialSuccess' DGRRenderSuccessTwoVariations: $ref: '#/components/examples/DGRRenderSuccessTwoVariations' DGRJobFailed: $ref: '#/components/examples/DGRJobFailed' DGRJobCanceled: $ref: '#/components/examples/DGRJobCanceled' StatusAPIFailedMediatypeMismatchResponse: $ref: '#/components/examples/StatusAPIFailedMediatypeMismatchResponse' StatusAPIFailedCAISigningResponse: $ref: '#/components/examples/StatusAPIFailedCAISigningResponse' StatusAPIFailedUploadErrorResponse: $ref: '#/components/examples/StatusAPIFailedUploadErrorResponse' StatusAPIFailedDownloadErrorResponse: $ref: '#/components/examples/StatusAPIFailedDownloadErrorResponse' StatusAPIFailedTTSErrorResponse: $ref: '#/components/examples/StatusAPIFailedTTSErrorResponse' StatusAPIFailedDurationTooLongResponse: $ref: '#/components/examples/StatusAPIFailedDurationTooLongResponse' StatusAPIFailedUnsupportedBackgroundResponse: $ref: '#/components/examples/StatusAPIFailedUnsupportedBackgroundResponse' StatusAPIFailedBackgroundResolutionErrorResponse: $ref: '#/components/examples/StatusAPIFailedBackgroundResolutionErrorResponse' StatusAPIFailedCropAreaErrorResponse: $ref: '#/components/examples/StatusAPIFailedCropAreaErrorResponse' StatusAPIFailedBackgroundCropErrorResponse: $ref: '#/components/examples/StatusAPIFailedBackgroundCropErrorResponse' StatusAPIFailedFFMpegErrorResponse: $ref: '#/components/examples/StatusAPIFailedFFMpegErrorResponse' StatusAPIFailedAvatarErrorResponse: $ref: '#/components/examples/StatusAPIFailedAvatarErrorResponse' StatusAPIFailedLipsyncErrorResponse: $ref: '#/components/examples/StatusAPIFailedLipsyncErrorResponse' StatusAPIFailedLipsyncPollingErrorResponse: $ref: '#/components/examples/StatusAPIFailedLipsyncPollingErrorResponse' StatusAPIFailedMediaTrimErrorResponse: $ref: '#/components/examples/StatusAPIFailedMediaTrimErrorResponse' StatusAPIFailedMediaTrimAlphaErrorResponse: $ref: '#/components/examples/StatusAPIFailedMediaTrimAlphaErrorResponse' StatusAPIFailedInternalErrorResponse: $ref: '#/components/examples/StatusAPIFailedInternalErrorResponse' StatusAPIFailedTTSInternalErrorResponse: $ref: '#/components/examples/StatusAPIFailedTTSInternalErrorResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/FailedResponse' examples: ErrorBodyUnauthorized: $ref: '#/components/examples/ErrorBodyUnauthorized' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/FailedResponse' examples: ErrorBodyForbidden: $ref: '#/components/examples/ErrorBodyForbidden' ErrorBodyAPIKeyInvalid: $ref: '#/components/examples/ErrorBodyAPIKeyInvalid' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/FailedResponse' examples: ErrorBodyResourceNotFound: $ref: '#/components/examples/ErrorBodyResourceNotFound' '429': description: Too Many Requests content: application/json: schema: $ref: '#/components/schemas/FailedResponse' examples: ErrorBodyTooManyRequests: $ref: '#/components/examples/ErrorBodyTooManyRequests' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/FailedResponse' examples: RunTimeError: $ref: '#/components/examples/RunTimeError' TEXT_TO_SPEECH_ENTITY_CREATION_ERROR: $ref: '#/components/examples/TEXT_TO_SPEECH_ENTITY_CREATION_ERROR' TEXT_TO_SPEECH_SERVICE_SUBMIT_ERROR: $ref: '#/components/examples/TEXT_TO_SPEECH_SERVICE_SUBMIT_ERROR' servers: - url: https://audio-video-api.adobe.io description: Production server. /v1/cancel/{jobId}: put: tags: - Manage jobs summary: Cancel a render job description: 'Aborts an in-flight render job. Returns `202 Accepted` as soon as the cancellation has been accepted; subsequent calls to `GET /v1/status/{jobId}` will report `"status": "canceled"` once the worker has fully stopped the underlying render. **Applicable only to render jobs submitted via `POST /v1/templates/render`.** This endpoint does not apply to Describe, Reframe, TLS, TTS, or Avatar jobs. **Notes:** - Cancellation is idempotent. - Once propagated to the worker, in-progress outputs are not uploaded to the destinations specified in the original render request. - For a short window after the PUT, the status endpoint may still report `running`; poll until it transitions to `canceled`.' operationId: cancel-render-job parameters: - name: jobId in: path required: true schema: type: string format: uuid description: UUID of the render job to cancel, as returned in the `jobId` field of the original 202 submit response or in the `cancelUrl` property of a List Render Jobs response item. - $ref: '#/components/parameters/XRequestIdHeader' responses: '202': description: Cancellation accepted. The job is transitioning to `canceled`; poll `GET /v1/status/{jobId}` to observe the terminal state. content: application/json: schema: $ref: '#/components/schemas/CancelAcceptedResponse' examples: CancelAccepted: $ref: '#/components/examples/CancelAccepted' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' examples: InvalidJsonError: value: error_code: invalid_json message: Invalid request. Please check the input data. '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' examples: InvalidToken: value: error_code: '401013' message: OAuth token is not valid. '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' examples: InvalidContext: value: error_code: access_error message: Token not allowed in the current context. '404': description: Not Found — `jobId` is unknown or no longer accessible. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' examples: JobNotFound: $ref: '#/components/examples/CancelJobNotFound' '409': description: Conflict — the job is already in a terminal state and cannot be canceled. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' examples: JobAlreadyCompleted: $ref: '#/components/examples/CancelJobAlreadyCompleted' JobAlreadyCanceled: $ref: '#/components/examples/CancelJobAlreadyCanceled' '429': description: Too Many Requests content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' examples: RateLimited: value: error_code: rate_limit_exceeded message: Too many requests. Please retry after some time. '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' examples: InternalServerError: value: error_code: runtime_error message: Internal Server Error messageId: '50005001' servers: - url: https://audio-video-api.adobe.io description: Production server. /v1/templates/render-jobs: get: tags: - Manage jobs summary: List render jobs description: 'Returns a paginated list of template render jobs owned by the authenticated caller, optionally filtered by status and creation date. **Applicable only to render jobs submitted via `POST /v1/templates/render`.** Jobs from other API types (Describe, Reframe, TLS, TTS, Avatar) are not returned. **Filter syntax (FIQL):** - `status==running` — single status equality - `status=in=(running,not_started)` — status set membership - `createdDate=ge=2026-05-01T00:00:00Z` — absolute ISO 8601 lower bound - `createdDate=ge=-P7D` — relative ISO 8601 duration (last 7 days) - Combine with `;` (AND): `status==running;createdDate=ge=-P7D` **Default filter:** all statuses, `createdDate` within the last 30 days. **Retention:** `createdDate` filter values must fall within the 30-day retention window. **Pagination:** follow `paging.nextUrl` until it is absent (last page).' operationId: list-render-jobs parameters: - name: filter in: query required: false description: 'FIQL filter string. Supported sub-params: `status` (enum) and `createdDate` (ISO 8601 date-time or relative duration). Default: `createdDate=ge=-P30D;status=in=(not_started,running,succeeded,partially_succeeded,failed,canceled)`.' schema: type: string examples: RunningOnly: summary: Running jobs only value: status==running Last7DaysRunning: summary: Running jobs in last 7 days value: createdDate=ge=-P7D;status==running AbsoluteDateRange: summary: Absolute date range value: createdDate=ge=2026-05-14T00:00:00Z;createdDate=le=2026-05-21T00:00:00Z MultipleStatuses: summary: Multiple statuses value: status=in=(running,not_started) - name: limit in: query required: false description: Maximum number of job entries to return per page. Must be between 1 and 100 (inclusive). Defaults to 20. schema: type: integer minimum: 1 maximum: 100 default: 20 - name: cursor in: query required: false description: Opaque pagination cursor returned in `paging.nextUrl` of a previous response. Omit to fetch the first page. schema: type: string - $ref: '#/components/parameters/XRequestIdHeader' responses: '200': description: Success — list of render jobs (may be empty). content: application/json: schema: $ref: '#/components/schemas/RenderJobListResponse' examples: FirstPageWithMore: $ref: '#/components/examples/RenderJobListFirstPage' LastPage: $ref: '#/components/examples/RenderJobListLastPage' EmptyResult: $ref: '#/components/examples/RenderJobListEmpty' '400': description: Bad request — invalid filter, limit, cursor, or date range. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' examples: InvalidStatusFilter: $ref: '#/components/examples/ListJobsInvalidStatusFilter' LimitOutOfRange: $ref: '#/components/examples/ListJobsLimitOutOfRange' InvalidCursor: $ref: '#/components/examples/ListJobsInvalidCursor' InvalidFilter: $ref: '#/components/examples/ListJobsInvalidFilter' FilterOutOfRetention: $ref: '#/components/examples/ListJobsFilterOutOfRetention' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' examples: InvalidToken: value: error_code: '401013' message: OAuth token is not valid. '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' examples: InvalidContext: value: error_code: access_error message: Token not allowed in the current context. '429': description: Too Many Requests content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' examples: RateLimited: value: error_code: rate_limit_exceeded message: Too many requests. Please retry after some time. '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' examples: InternalServerError: value: error_code: runtime_error message: Internal Server Error messageId: '50005001' servers: - url: https://audio-video-api.adobe.io description: Production server. /v2/status/{jobId}: get: tags: - Manage jobs summary: Get job result description: This endpoint retrieves the result of an asynchronous reframed job initiated using the job ID. operationId: job-result-v2 parameters: - name: jobId in: path description: The job ID to get status for an asynchronous generate reframed video job. required: true schema: type: string responses: '200': description: Success content: application/json: schema: type: object description: Job response on status API. oneOf: - title: Job In Progress type: object description: Response indicating that the reframed video job is in progress. properties: status: type: string enum: - not_started - running - failed - succeeded - partially_succeeded description: The status of the reframed video job. jobId: type: string description: The unique identifier for the job. required: - status - jobId - title: Job Success type: object description: Success response for the reframed video job. properties: status: type: string enum: - not_started - running - failed - succeeded - partially_succeeded description: The status of the reframed video job. jobId: type: string description: The unique identifier for the job. outputs: type: array uniqueItems: true description: Array of output rendition results. items: oneOf: - title: Successful Rendition type: object properties: destination: type: object properties: url: type: string format: uri description: The pre-signed URL pointing to the output. required: - url description: Details of the output destination, including a pre-signed URL. required: - destination - title: Failed Rendition type: object description: Error response for the generate reframed video job. properties: error: type: object properties: error_code: type: string description: A code representing the specific error type. message: type: string description: A description of the error that occurred. required: - message - error_code description: Details of the error encountered during the reframing process. required: - error required: - status - jobId - outputs - title: Job Partial Success type: object description: Response for a reframed video job that partially succeeded. properties: status: type: string enum: - not_started - running - failed - succeeded - partially_succeeded description: The status of the reframed video job. jobId: type: string description: The unique identifier for the job. outputs: type: array items: oneOf: - title: Successful Rendition type: object description: Success response for the generate reframed video job. properties: destination: type: object properties: url: type: string format: uri description: The pre-signed URL pointing to the output. required: - url description: Details of the output destination, including a pre-signed URL. required: - destination - title: Failed Rendition type: object description: Error response for the generate reframed video job. properties: error: type: object properties: error_code: type: string description: A code representing the specific error type. message: type: string description: A description of the error that occurred. required: - message - error_code description: Details of the error encountered during the reframing process. required: - error description: Details of the job's partial success, including successful outputs and any errors encountered. required: - status - jobId - outputs - title: Job Failure type: object description: Error response for a reframed video job that failed. properties: status: type: string enum: - not_started - running - failed - succeeded - partially_succeeded description: The status of the reframed video job, indicating a failure. jobId: type: string description: The unique identifier for the job. outputs: type: object properties: renditions: type: array uniqueItems: true description: Array of failed rendition outputs. items: title: Failed Rendition type: object description: Error response for the generate reframed video job. properties: error: type: object properties: error_code: type: string description: A code representing the specific error type. message: type: string description: A description of the error that occurred. required: - message - error_code description: Details of the error encountered during the reframing process. required: - error required: - renditions description: Details of the errors encountered during the job. required: - status - jobId - outputs examples: GenerateReframedVideoJobPendingResponse: summary: Job is pending value: status: pending jobId: 123e4567-e89b-12d3-a456-426614174002 GenerateReframedVideoJobInProgressResponse: summary: Job is in progress value: status: running jobId: 123e4567-e89b-12d3-a456-426614174002 GenerateReframedVideoJobSuccessResponse: summary: Job succeeded value: status: succeeded jobId: 123e4567-e89b-12d3-a456-426614174002 outputs: - destination: url: <<>> GenerateReframedVideoJobPartialSuccessResponse: summary: Job partially succeeded value: status: partially_succeeded jobId: 123e4567-e89b-12d3-a456-426614174002 outputs: - destination: url: <<>> - error: error_code: <> message: <> GenerateReframedVideoJobFailureResponse: summary: Job failed value: status: failed jobId: 123e4567-e89b-12d3-a456-426614174002 outputs: - error: error_code: <> message: <> - error: error_code: <> message: <> '400': description: Bad Request content: application/json: schema: description: Response indicating that the reframed video job has been successfully submitted. properties: jobId: type: string description: The unique identifier for the job. statusUrl: type: string description: The URL to monitor the status of the job. required: - jobId - statusUrl type: object examples: ErrorBodyBadRequest: summary: Bad Request value: error_code: '400001' message: Invalid request. Please check the input data. '401': description: Unauthorized content: application/json: schema: description: Response indicating that the reframed video job has been successfully submitted. properties: jobId: type: string description: The unique identifier for the job. statusUrl: type: string description: The URL to monitor the status of the job. required: - jobId - statusUrl type: object examples: ErrorBodyUnauthorized: summary: Unauthorized value: error_code: '401013' message: OAuth token is not valid '403': description: Forbidden content: application/json: schema: description: Response indicating that the reframed video job has been successfully submitted. properties: jobId: type: string description: The unique identifier for the job. statusUrl: type: string description: The URL to monitor the status of the job. required: - jobId - statusUrl type: object examples: ErrorBodyForbidden: summary: Forbidden value: error_code: '401013' message: OAuth token is not valid '404': description: Resource Not Found content: application/json: schema: description: Response indicating that the reframed video job has been successfully submitted. properties: jobId: type: string description: The unique identifier for the job. statusUrl: type: string description: The URL to monitor the status of the job. required: - jobId - statusUrl type: object examples: ErrorBodyResourceNotFound: summary: Resource Not Found value: error_code: '404001' message: The requested resource was not found. '405': description: Method Not Allowed content: application/json: schema: description: Response indicating that the reframed video job has been successfully submitted. properties: jobId: type: string description: The unique identifier for the job. statusUrl: type: string description: The URL to monitor the status of the job. required: - jobId - statusUrl type: object examples: ErrorBodyMethodNotAllowed: summary: Method Not Allowed value: error_code: '405001' message: The requested method is not allowed on this endpoint. '422': description: Unprocessable Entity content: application/json: schema: description: Response indicating that the reframed video job has been successfully submitted. properties: jobId: type: string description: The unique identifier for the job. statusUrl: type: string description: The URL to monitor the status of the job. required: - jobId - statusUrl type: object '429': description: Too Many Requests content: application/json: schema: description: Response indicating that the reframed video job has been successfully submitted. properties: jobId: type: string description: The unique identifier for the job. statusUrl: type: string description: The URL to monitor the status of the job. required: - jobId - statusUrl type: object examples: ErrorBodyTooManyRequests: summary: Too Many Requests value: message: Too Many Requests error_code: '429011' '500': description: Internal Server Error content: application/json: schema: description: Response indicating that the reframed video job has been successfully submitted. properties: jobId: type: string description: The unique identifier for the job. statusUrl: type: string description: The URL to monitor the status of the job. required: - jobId - statusUrl type: object examples: ErrorBodyInternalServerError: summary: Internal Server Error value: error_code: '500001' message: An internal server error occurred. Please try again later. servers: - url: https://audio-video-api.adobe.io description: Production server. /v3/status/{jobId}: get: operationId: jobResultV3 summary: Get job status description: Get the status of an asynchronous job (including upscale jobs). When the job has completed successfully, the result reflects the operation type (for example generation, composite, or upscale). tags: - Manage jobs parameters: - name: jobId in: path required: true description: The job ID or URN returned in async response links. schema: type: string title: Job ID responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/JobResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/ApiErrorGeneric' example: error_code: string message: string '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/ApiErrorGeneric' example: error_code: string message: string '404': description: Requested Resource Was Not Found content: application/json: schema: $ref: '#/components/schemas/ApiErrorGeneric' example: error_code: string message: string '422': description: Unprocessable Entity content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' example: error_code: validation_error validation_errors: - loc: - parameters - jobId msg: invalid job identifier format type: value_error '429': description: Too Many Requests content: application/json: schema: $ref: '#/components/schemas/ApiErrorGeneric' example: error_code: string message: string '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorGeneric' example: error_code: string message: string '503': description: Service Unavailable content: application/json: schema: $ref: '#/components/schemas/ApiErrorGeneric' example: error_code: string message: string servers: - url: https://firefly-api.adobe.io description: Production server. /v3/cancel/{jobId}: put: operationId: cancelJobV4 summary: Cancel job description: Cancel an asynchronous job. tags: - Manage jobs parameters: - name: jobId in: path required: true description: The job ID or URN returned in async response links. schema: type: string title: Job ID responses: '200': description: Job Cancelled '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/ApiErrorGeneric' example: error_code: string message: string '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/ApiErrorGeneric' example: error_code: string message: string '404': description: Requested Resource Was Not Found content: application/json: schema: $ref: '#/components/schemas/ApiErrorGeneric' example: error_code: string message: string '409': description: Conflict content: application/json: schema: $ref: '#/components/schemas/ApiErrorGeneric' example: error_code: string message: string '410': description: Gone content: application/json: schema: $ref: '#/components/schemas/ApiErrorGeneric' example: error_code: string message: string '429': description: Too Many Requests content: application/json: schema: $ref: '#/components/schemas/ApiErrorGeneric' example: error_code: string message: string '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorGeneric' example: error_code: string message: string '503': description: Service Unavailable content: application/json: schema: $ref: '#/components/schemas/ApiErrorGeneric' example: error_code: string message: string servers: - url: https://firefly-api.adobe.io description: Production server. components: examples: StatusAPIFailedUnsupportedBackgroundResponse: summary: Unsupported Background File Type value: jobId: string status: failed error_code: validation_error message: Unsupported file type for background ListJobsInvalidStatusFilter: summary: Invalid status value in filter value: error_code: invalid_status_filter message: status must be one of not_started, running, succeeded, partially_succeeded, failed, canceled. StatusApiSuccessRequestResponse: summary: Success response with job details value: jobId: string status: succeeded output: destination: url: string StatusApiInProgressRequestResponse: summary: Inprogress response with job details value: jobId: string status: running ErrorBodyForbidden: summary: Api Key is required value: error_code: '403000' message: Api Key is required StatusAPIFailedFFMpegErrorResponse: summary: Error in FFMpeg value: jobId: string status: failed error_code: runtime_error message: Failed in FFmpeg worker StatusAPIFailedMediaTrimErrorResponse: summary: Error Processing Avatar Video value: jobId: string status: failed error_code: runtime_error message: Error while triming avatar video ListJobsInvalidFilter: summary: Syntactically invalid FIQL expression value: error_code: invalid_filter message: 'Invalid filter: unexpected token at position 5.' DGRJobCanceled: summary: DGR render job canceled (applies only to render jobs from POST /v1/templates/render) value: jobId: 27776956-d405-4754-97e9-7e9cfd3809af status: canceled createdDate: '2024-02-21T14:00:00Z' totalJobItems: 3 outputs: - destination: url: https://mogrt-outputs-prod.s3.amazonaws.com/27776956-d405-4754-97e9-7e9cfd3809af/some_custom_file_name.mp4 startedDate: '2024-02-21T14:05:00Z' completedDate: '2024-02-21T14:07:17Z' variationIndex: 0 presetIndex: 0 errors: - variationIndex: 1 presetIndex: 0 error: error_code: validation_error message: You have exceeded the limit for... TEXT_TO_SPEECH_SERVICE_SUBMIT_ERROR: summary: Internal Server Error during Submit value: error_code: runtime_error message: Internal Server Error while submitting text to speech request RunTimeError: summary: Internal Server Error value: error_code: runtime_error message: Internal Server Error StatusAPIFailedBackgroundResolutionErrorResponse: summary: Error in Background Resolution value: jobId: string status: failed error_code: validation_error message: Background asset resolution should be greater than 640x360 StatusAPIFailedUploadErrorResponse: summary: Failed Output Upload value: jobId: string status: failed error_code: runtime_error message: Unable to upload the output DGRJobStatusRunning: summary: DGR job running value: status: running percentCompleted: '55' jobId: StatusAPIFailedDownloadErrorResponse: summary: Failed Stock Media Download value: jobId: string status: failed error_code: runtime_error message: Unable to download stock media DGRJobFailed: summary: DGR job failed value: jobId: 6b77c479-b599-46d3-a6bc-307b5389c105 status: failed message: 'Error extracting definition.json: [Errno 2] No such file or directory: ''6b77c479-b599-46d3-a6bc-307b5389c105/template.zip''' CancelJobAlreadyCanceled: summary: Render job already canceled value: error_code: job_already_canceled message: Render job 27776956-d405-4754-97e9-7e9cfd3809af was already canceled. ErrorBodyUnauthorized: summary: Invalid Token value: error_code: '401013' message: Oauth token is not valid StatusAPIFailedCropAreaErrorResponse: summary: Error in Crop Area value: jobId: string status: failed error_code: validation_error message: Crop Area is going out of bounds DGRDescribeSuccess: summary: DGR describe template succeeded value: jobId: status: succeeded output: fonts: - name: FranklinGothicURW-Boo uploadRequired: false - name: uploadRequired: true elements: - type: mogrt controls: - variableId: label: Headline type: text defaultData: text: This is your headline. fontName: FranklinGothicURW-Boo - variableId: label: Show Extra? type: checkbox defaultData: selectedCheckboxValue: true options: - true - false - variableId: label: Choices Dropdown type: dropdown defaultData: selectedDropdownValue: '2' options: '0': AAA '1': BBB '2': CCC '3': DDD '4': EEE - variableId: label: Size selector type: slider defaultData: selectedSliderValue: 1 range: minimum: 1 maximum: 5 - variableId: label: Logo type: media size: width: 1344 height: 768 defaultData: scale: no_scale possibleScaleValues: - no_scale - fit_to_frame - stretch_to_fill - fill_frame - variableId: label: Mogrt Audio type: audio durationInSeconds: 22.3 possibleAudioPreferences: - replace - mix - label: Logo comment type: comment text: Add your company logo here. CancelJobAlreadyCompleted: summary: Render job already completed value: error_code: job_completed message: Render job 27776956-d405-4754-97e9-7e9cfd3809af was already completed and cannot be canceled. DGRRenderSuccessMultiple: summary: DGR render succeeded (multiple outputs) value: jobId: status: succeeded outputs: - variationIndex: 0 presetIndex: 0 destination: url: https://.mp4 - variationIndex: 0 presetIndex: 1 destination: url: https://.mp4 CancelAccepted: summary: Render job cancellation accepted value: jobId: 27776956-d405-4754-97e9-7e9cfd3809af status: canceling TEXT_TO_SPEECH_ENTITY_CREATION_ERROR: summary: Internal Server Error during Entity Creation value: error_code: runtime_error message: Internal Server Error while creating text to speech request DGRDescribeAEPSuccess: summary: DGR describe AEP project succeeded value: jobId: status: succeeded output: fonts: - name: AdobeClean-ExtraBold uploadRequired: true - name: ArialMT uploadRequired: false elements: - type: aep controls: - variableId: c169:l193:layer:sourceText label: Show Title type: text defaultData: text: Beach Runners fontName: AdobeClean-ExtraBold - variableId: c259:l261:media label: Video type: media defaultData: scale: no_scale size: width: 1920 height: 1080 possibleScaleValues: - no_scale - fit_to_frame - stretch_to_fill - fill_frame - variableId: c786:l799:layer:sourceText label: Test color type: text defaultData: text: '000000' fontName: ArialMT - variableId: c786:l810:eff:1:1 label: Test checkbox type: checkbox defaultData: selectedCheckboxValue: false options: - true - false - variableId: c786:l810:eff:2:1 label: Test dropdown type: dropdown defaultData: selectedDropdownValue: '1' options: '1': Item 1 '2': Item 2 '3': Item 3 - variableId: c786:l810:eff:3:1 label: Test slider type: slider defaultData: selectedSliderValue: 0 range: {} layers: - id: c259:l819:layer name: 1. Controls Checker compName: A. Variable Duration - id: c259:l398:layer name: 2. Intro compName: A. Variable Duration - id: c259:l265:layer name: 3. Outro compName: A. Variable Duration - id: c259:l263:layer name: 4. Show Details compName: A. Variable Duration - id: c259:l262:layer name: 5. Show Title compName: A. Variable Duration - id: c259:l261:layer name: 6. Video Media compName: A. Variable Duration RenderJobListEmpty: summary: No matching render jobs value: paging: totalRecords: 0 jobs: [] StatusAPIFailedInternalErrorResponse: summary: Error Processing Response value: jobId: string status: failed error_code: runtime_error message: Internal Server Error while receiving or handling response ErrorBodyAPIKeyInvalid: summary: Api Key is invalid value: error_code: '403003' message: Api Key is invalid RenderJobListFirstPage: summary: First page of render jobs, more pages available value: paging: nextUrl: https://audio-video-api.adobe.io/v1/templates/render-jobs?cursor=eyJzIjoiMjAyNi0wNS0wNFQwOToxNDowMVoifQ&limit=20 totalRecords: 47 jobs: - jobId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 status: succeeded totalJobItems: 5 createdDate: '2026-05-20T10:00:00Z' completedDate: '2026-05-20T10:05:30Z' statusUrl: https://audio-video-api.adobe.io/v1/status/3fa85f64-5717-4562-b3fc-2c963f66afa6 - jobId: 7ba95c74-6828-5673-c4fd-3d074g77bgb7 status: running totalJobItems: 10 percentCompleted: 42.0 createdDate: '2026-05-20T11:00:00Z' statusUrl: https://audio-video-api.adobe.io/v1/status/7ba95c74-6828-5673-c4fd-3d074g77bgb7 cancelUrl: https://audio-video-api.adobe.io/v1/cancel/7ba95c74-6828-5673-c4fd-3d074g77bgb7 CancelJobNotFound: summary: Render job not found value: error_code: job_not_found message: Render job 27776956-d405-4754-97e9-7e9cfd3809af does not exist or is no longer accessible. StatusAPIFailedInputFileDownloadResponse: summary: Failed Input Download value: jobId: string status: failed error_code: resource_not_found message: Failed to download input file StatusAPIFailedMediatypeMismatchResponse: summary: Invalid Input Mediatype value: jobId: string status: failed error_code: validation_error message: Provided input mediaType should match the type of source media ListJobsLimitOutOfRange: summary: limit parameter outside [1, 100] value: error_code: limit_out_of_range message: limit must be between 1 and 100. DGRJobStatusNotStarted: summary: DGR job not started value: status: not_started jobId: ErrorBodyTooManyRequests: summary: Too many requests value: error_code: '429050' message: Too many requests StatusAPIFailedCAISigningResponse: summary: CAI Signing Failed value: jobId: string status: failed error_code: runtime_error message: CAI Signing Failed StatusAPIFailedBackgroundCropErrorResponse: summary: Error in Background Aspect Ratio value: jobId: string status: failed error_code: validation_error message: ' Image background asset should be 16:9 aspect ratio, please provide crop the media and then send' DGRRenderSuccessSingle: summary: DGR render succeeded (single output) value: jobId: status: succeeded outputs: - variationIndex: 0 presetIndex: 0 destination: url: https://.mp4 ErrorBodyResourceNotFound: summary: Not Found value: error_code: unknown_job_id message: The requested resource was not found. StatusAPIFailedTTSInternalErrorResponse: summary: Error Getting Status value: jobId: string status: failed error_code: runtime_error message: Internal Server Error while getting text to speech request status ListJobsInvalidCursor: summary: Malformed or expired cursor value: error_code: invalid_cursor message: The provided cursor is invalid or has expired. StatusAPIFailedTTSErrorResponse: summary: Error in TTS value: jobId: string status: failed error_code: runtime_error message: Run time error in tts DGRRenderSuccessTwoVariations: summary: DGR render succeeded (two variations) value: jobId: status: succeeded outputs: - variationIndex: 0 presetIndex: 0 destination: url: https://.mp4 - variationIndex: 1 presetIndex: 0 destination: url: https://.mp4 RenderJobListLastPage: summary: Last page of render jobs (no nextUrl) value: paging: totalRecords: 47 jobs: - jobId: 9cd06d85-7939-6784-d5ge-4e185h88chc8 status: running totalJobItems: 50 percentCompleted: 23.0 createdDate: '2026-05-04T08:01:09Z' statusUrl: https://audio-video-api.adobe.io/v1/status/9cd06d85-7939-6784-d5ge-4e185h88chc8 cancelUrl: https://audio-video-api.adobe.io/v1/cancel/9cd06d85-7939-6784-d5ge-4e185h88chc8 StatusAPIFailedDurationTooLongResponse: summary: Unsupported Audio Duration value: jobId: string status: failed error_code: validation_error message: Audio duration should be less than 30 mins StatusAPIFailedMediaTrimAlphaErrorResponse: summary: Error Processing Avatar Alpha Video value: jobId: string status: failed error_code: runtime_error message: Error while triming avatar alpha video StatusAPIFailedLipsyncPollingErrorResponse: summary: Error polling for lip sync value: jobId: string status: failed error_code: runtime_error message: Failed while polling for Lipsync StatusAPIFailedAvatarErrorResponse: summary: Error in Avatar value: jobId: string status: failed error_code: runtime_error message: Run time error in avatar ListJobsFilterOutOfRetention: summary: createdDate outside 30-day retention window value: error_code: filter_out_of_retention message: createdDate filter values must fall within the 30-day retention window. StatusAPIFailedLipsyncErrorResponse: summary: Error in lip sync value: jobId: string status: failed error_code: runtime_error message: Validation failure in Lipsync Pipeline DGRRenderPartialSuccess: summary: DGR render partially succeeded value: jobId: status: partially_succeeded outputs: - variationIndex: 1 presetIndex: 0 destination: url: https://.mp4 errors: - variationIndex: 0 presetIndex: 0 error: error_code: validation_error message: You have exceeded the limit for... schemas: StatusAPIInprogressResponse: type: object properties: jobId: type: string status: $ref: '#/components/schemas/StatusAPIResponseStatus' CancelAcceptedResponse: type: object description: Success response body returned with HTTP 202 when a render job cancel request is accepted. Applies only to render jobs submitted via `POST /v1/templates/render`. required: - jobId - status properties: jobId: type: string format: uuid description: UUID of the render job for which cancellation was accepted. status: type: string enum: - canceling description: Transient in-progress status. Poll `GET /v1/status/{jobId}` to observe the terminal `canceled` state. StatusAPICompletedResponse: type: object properties: jobId: type: string status: $ref: '#/components/schemas/StatusAPIResponseStatus' output: type: object properties: destination: $ref: '#/components/schemas/Destination' FailedResponse: type: object description: Generic error response object. properties: error_code: type: string message: type: string Destination: type: object properties: url: type: string format: uri description: The pre-signed URL pointing to the output destination. required: - url description: Destination details including a pre-signed URL for the output media. RenderJobListResponse: type: object description: Response body for `GET /v1/templates/render-jobs`. Contains render jobs submitted via `POST /v1/templates/render` only. required: - paging - jobs properties: paging: $ref: '#/components/schemas/PagingInfo' jobs: type: array items: $ref: '#/components/schemas/RenderJobListItem' description: Ordered list of render job summaries for the current page. Empty array when no jobs match the filter. ErrorResponse: type: object required: - error_code - message properties: error_code: type: string description: The error code returned with the response. message: type: string description: The error message returned with the response. messageId: type: string description: The error message ID returned with the response. StatusAPIResponse: type: object description: Response object for job status queries. oneOf: - $ref: '#/components/schemas/StatusAPIInprogressResponse' - $ref: '#/components/schemas/StatusAPICompletedResponse' - $ref: '#/components/schemas/StatusAPIFailedResponse' - $ref: '#/components/schemas/JobStatus' StatusAPIFailedResponse: type: object description: Response object for failed jobs. properties: status: $ref: '#/components/schemas/StatusAPIResponseStatus' jobId: type: string error_code: type: string message: type: string StatusAPIResponseStatus: type: string enum: - pending - running - failed - succeeded description: Status of the job. RenderJobListItem: type: object description: Summary of a single template render job as returned by `GET /v1/templates/render-jobs`. Applies only to render jobs submitted via `POST /v1/templates/render`. required: - jobId - status - totalJobItems - createdDate - statusUrl properties: jobId: type: string format: uuid description: Unique identifier of the render job. status: type: string enum: - not_started - running - succeeded - partially_succeeded - failed - canceled description: Current overall status of the render job. totalJobItems: type: integer description: Total number of output items (variation × preset combinations) in this batch render job. percentCompleted: type: number format: float minimum: 0 maximum: 100 description: Percentage of the job completed (0–100). Present only when `status` is `running`. createdDate: type: string format: date-time description: ISO 8601 date-time when the render job was submitted. completedDate: type: string format: date-time description: ISO 8601 date-time when the job reached a terminal state. Present only when `status` is `succeeded`, `partially_succeeded`, `failed`, or `canceled`. statusUrl: type: string format: uri description: Absolute URL to poll for the latest job status (`GET /v1/status/{jobId}`). cancelUrl: type: string format: uri description: Absolute URL to submit a cancel request (`PUT /v1/cancel/{jobId}`). Present only when the job is still cancellable (`status` is `not_started` or `running`). PagingInfo: type: object description: Cursor-based pagination metadata returned by the List Render Jobs endpoint. required: - totalRecords properties: nextUrl: type: string format: uri description: Absolute URL to the next page of results. Absent on the last page — treat its absence as the end of the result set. totalRecords: type: integer description: Total number of render jobs matching the filter across all pages. JobStatus: type: object required: - jobId - status properties: jobId: type: string description: ID of the render job. status: type: string enum: - not_started - running - canceling - canceled - succeeded - failed - partially_succeeded description: Current status of the job. `canceling` is a transient state between a `PUT /v1/cancel/{jobId}` call and the worker fully stopping; `canceled` is the terminal state once stopped. **Note:** `canceling` and `canceled` apply only to render jobs submitted via `POST /v1/templates/render`. message: type: string description: Error message when job status is failed. percentCompleted: type: string description: Percentage of job completed, as a string. outputs: type: array description: Array of output files with destination URLs, keyed by variation and preset indices. items: type: object required: - variationIndex - presetIndex - destination properties: variationIndex: type: integer description: Zero-based index of the variation that was rendered. presetIndex: type: integer description: Zero-based index of the preset that was used for rendering. destination: type: object required: - url properties: url: type: string format: uri description: URL from which the rendered video can be downloaded. sidecarDestination: type: object required: - url properties: url: type: string format: uri description: URL from which the collected After Effects project archive can be downloaded. Present only when `config.sidecar` was set to `aep`. startedDate: type: string format: date-time description: ISO 8601 date-time when this output item started rendering. Present only for render jobs (`POST /v1/templates/render`). completedDate: type: string format: date-time description: ISO 8601 date-time when this output item finished rendering. Present only for render jobs (`POST /v1/templates/render`). errors: type: array description: Array of errors for failed variations (only present when status is partially_succeeded). items: type: object required: - variationIndex - presetIndex - error properties: variationIndex: type: integer description: Zero-based index of the variation that failed. presetIndex: type: integer description: Zero-based index of the preset that was used for the failed variation. error: type: object required: - error_code - message properties: error_code: type: string description: Error code for the failure. message: type: string description: Error message describing the failure. startedDate: type: string format: date-time description: ISO 8601 date-time when this item started processing. Present only for render jobs (`POST /v1/templates/render`). completedDate: type: string format: date-time description: ISO 8601 date-time when this item reached a terminal failure state. Present only for render jobs (`POST /v1/templates/render`). createdDate: type: string format: date-time description: ISO 8601 date-time when the job was submitted. Present only for render jobs (`POST /v1/templates/render`). totalJobItems: type: integer description: Total number of output items (variation × preset combinations) in this render job. Present once the job has been dispatched to workers. Applies only to render jobs (`POST /v1/templates/render`). retryPayloadUrl: type: string format: uri description: Pre-built retry payload URL containing only the failed items. Present only when `status` is `partially_succeeded`. Applies only to render jobs (`POST /v1/templates/render`). output: type: object description: Output for describe API jobs. properties: fonts: type: array description: Array of fonts from the template. items: type: object properties: name: type: string description: PostScript name of the font. uploadRequired: type: boolean description: Whether the font needs to be uploaded in the render request. required: - name elements: type: array description: Array of elements from the template. items: type: object required: - type - controls properties: id: type: string description: Unique identifier for the element. type: type: string enum: - mogrt - aep description: Type of the element. controls: type: array description: Array of controls from the template. items: type: object properties: variableId: type: string description: Unique identifier for the template variable. id: type: string description: Unique identifier for the control. label: type: string description: Human-readable label for the control. type: type: string enum: - text - media - dropdown - checkbox - slider - audio - comment description: Type of the control. defaultData: type: object description: Default or current values for the control (e.g., text, fontName, selectedCheckboxValue, selectedDropdownValue, selectedSliderValue, scale). data: type: object description: Data associated with the control. options: description: Available options (object for dropdown; array for checkbox). range: type: object description: Minimum and maximum values for slider controls. properties: minimum: type: number maximum: type: number size: type: object description: Dimensions for media controls. properties: width: type: integer height: type: integer possibleScaleValues: type: array items: type: string description: Possible scale values for media controls. durationInSeconds: type: number description: Duration in seconds for audio controls. possibleAudioPreferences: type: array items: type: string description: Possible audio preferences (e.g., replace, mix) for audio controls. text: type: string description: Comment text for comment controls. layers: type: array description: Layers of the described AEP composition, in render order (top-to-bottom). Present only for `aep` elements. Use a layer's composite `id` as the `layerId` in render `layerOperations`. items: type: object properties: id: type: string description: Composite ID of the form `c{comp}:l{layer}:layer`. name: type: string description: Layer name as displayed in After Effects. compName: type: string description: Name of the composition that contains the layer. JobResponse: title: JobResponse description: Represents the job response, which may be either in progress or completed. oneOf: - $ref: '#/components/schemas/JobSucceededPayload' - $ref: '#/components/schemas/JobPollPayload' discriminator: propertyName: status mapping: succeeded: '#/components/schemas/JobSucceededPayload' running: '#/components/schemas/JobPollPayload' failed: '#/components/schemas/JobPollPayload' cancelled: '#/components/schemas/JobPollPayload' cancel_pending: '#/components/schemas/JobPollPayload' timeout: '#/components/schemas/JobPollPayload' examples: - status: succeeded jobId: result: outputs: - seed: 333 image: url: https://example.com - status: running jobId: PublicBinary-Output: type: object title: PublicBinary-Output description: Represents binary output (e.g., image, mesh, etc.) with pre-signed URL or storage ID. required: - url properties: url: type: string format: uri example: https://example.com description: Temporary pre-signed URL to access the output file. JobOutput: type: object title: JobOutput description: A single output entry from the job. required: - seed - image properties: seed: type: integer example: 333 description: Random seed used for generation. image: $ref: '#/components/schemas/PublicBinary-Output' description: The generated output image. PreciseUpsamplerResponse: type: object title: PreciseUpsamplerResponse description: Upscale result. Each item in outputs is a storage reference for an upscaled image. required: - outputs - version properties: outputs: type: array items: $ref: '#/components/schemas/UpscaleBinaryOutput' description: The list of upscaled images (storage items). version: type: string description: The version of the upscale feature. ValidationErrorDetail: type: object properties: loc: type: array items: oneOf: - type: string - type: integer description: Path to the field that caused the error. msg: type: string description: Human-readable error message. type: type: string description: Error type identifier. ctx: type: object additionalProperties: true description: Additional context about the error. UpscaleBinaryOutput: type: object title: UpscaleBinaryOutput description: Reference to output binary (for example an upscaled image). Use id in subsequent API calls or the presigned URL to download. properties: id: type: string description: The internal ID for a storage item. presignedUrl: type: string format: uri minLength: 1 maxLength: 4096 description: URL to download the file. Expires in one hour. creativeCloudFileId: type: string description: Optional ID of the file in ACP. Must be an ACP File asset ID. creativeCloudComponentId: type: string description: Optional ID of the component in ACP. Must be an ACP Component asset ID. name: type: string description: Optional name for the item (for example for lookup in multipart responses). JobSucceededPayload: type: object title: JobSucceededPayload description: Returned when the job has completed successfully. required: - status - jobId - result properties: status: type: string enum: - succeeded description: Indicates that the job has succeeded. jobId: type: string example: description: The job ID. result: description: The result of the completed job. The schema depends on the async operation (for example generation, composite, or upscale). oneOf: - $ref: '#/components/schemas/JobResult' - $ref: '#/components/schemas/PreciseUpsamplerResponse' ValidationErrorResponse: type: object title: ValidationErrorResponse description: Error response body for HTTP 422 (validation failures). required: - error_code properties: error_code: $ref: '#/components/schemas/ValidationErrorCode422' message: type: string description: Human-readable error description. validation_errors: type: array items: $ref: '#/components/schemas/ValidationErrorDetail' description: List of field-level validation errors. ValidationErrorCode422: type: string title: ValidationErrorCode422 description: Error code for HTTP 422 responses (request validation only). enum: - validation_error - cai_assertion_violation_error JobPollPayload: type: object title: JobPollPayload description: Returned when the job is pending, running, failed, cancelled, cancel_pending, or timeout. required: - status - jobId properties: status: type: string enum: - pending - running - failed - cancelled - cancel_pending - timeout description: Current non-succeeded job status. jobId: type: string example: description: The job ID. error_code: type: string description: Error code present when status is failed, cancelled, cancel_pending, or timeout. message: type: string description: Human-readable string describing the error or status. JobResult: type: object title: JobResult description: Contains output data returned by a successfully completed job. required: - outputs properties: outputs: type: array description: List of generated outputs. items: $ref: '#/components/schemas/JobOutput' ApiErrorGeneric: type: object title: ApiErrorGeneric description: The error within the error response for non-400 failure responses. properties: error_code: type: string description: The error code. message: title: Message description: A human-readable error message. type: string parameters: XRequestIdHeader: name: x-request-id in: header required: false description: GUID, unique per request. Auto-generated if not provided. schema: type: string format: uuid example: a1b2c3d4-e5f6-7890-abcd-ef1234567890 securitySchemes: AccessToken: type: http scheme: bearer description: The Adobe-generated access token, S2S format. X-Api-Key: type: apiKey name: x-api-key in: header description: The client ID for authentication. x-refined-from: - adobe-suite-firefly-audio-video-openapi.json - adobe-suite-firefly-openapi.json x-original-swagger-version: '2.0'