# List Workflows

> List Workflows in the Project, newest first. Archived Workflows are excluded unless archived is true.

```json
{
  "path": "/workflows",
  "method": "get",
  "schema": {
    "description": "List Workflows in the Project, newest first. Archived Workflows are excluded unless archived is true.",
    "operationId": "getWorkflowList",
    "parameters": [
      {
        "description": "Limit specifies the maximum number of results to return.\nAccepts 1 to 100. Defaults to 100.",
        "in": "query",
        "name": "limit",
        "required": false,
        "schema": {
          "default": 100,
          "maximum": 100,
          "minimum": 1,
          "type": "integer"
        }
      },
      {
        "description": "Offset specifies the number of matching results to skip.\nMust be at least 0. Defaults to 0.",
        "in": "query",
        "name": "offset",
        "required": false,
        "schema": {
          "default": 0,
          "minimum": 0,
          "type": "integer"
        }
      },
      {
        "description": "Archived specifies whether to include archived Workflows. Defaults to false.",
        "in": "query",
        "name": "archived",
        "required": false,
        "schema": {
          "type": "boolean"
        }
      }
    ],
    "responses": {
      "200": {
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/WorkflowListResponse",
              "examples": [
                {
                  "data": [
                    {
                      "archived_at": null,
                      "created_at": "2026-10-02T10:00:00Z",
                      "id": "wfl_example",
                      "name": "Captions and downloads",
                      "revision": 1,
                      "rules": [
                        {
                          "actions": [
                            {
                              "id": "caption",
                              "params": {},
                              "type": "create_caption"
                            },
                            {
                              "id": "download",
                              "params": {
                                "resolution": "highest"
                              },
                              "type": "create_static_rendition"
                            }
                          ],
                          "event": "asset.ready",
                          "id": "asset_ready"
                        }
                      ],
                      "schema_version": 1,
                      "updated_at": "2026-10-02T10:00:00Z"
                    }
                  ],
                  "limit": 100,
                  "offset": 0,
                  "status": "success",
                  "total": 1
                }
              ]
            }
          }
        },
        "description": "List Workflows"
      },
      "400": {
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ResponseErrorValidation"
            }
          }
        },
        "description": "Validation error"
      },
      "401": {
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ResponseErrorAuthentication"
            }
          }
        },
        "description": "Authentication error"
      },
      "403": {
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ResponseErrorForbidden"
            }
          }
        },
        "description": "Forbidden error"
      },
      "404": {
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ResponseErrorNotFound"
            }
          }
        },
        "description": "NotFound error"
      },
      "409": {
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ResponseErrorConflict"
            }
          }
        },
        "description": "Conflict error"
      },
      "429": {
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ResponseErrorTooManyRequests"
            }
          }
        },
        "description": "TooManyRequests error"
      },
      "503": {
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ResponseErrorServiceUnavailable"
            }
          }
        },
        "description": "ServiceUnavailable error"
      }
    },
    "security": [
      {
        "ProjectAccessToken": []
      }
    ],
    "summary": "List Workflows",
    "tags": [
      "Workflows"
    ],
    "x-codeSamples": [
      {
        "lang": "typescript",
        "source": "import Chunkify from '@chunkify/chunkify';\n\nconst client = new Chunkify({\n  projectAccessToken: 'My Project Access Token',\n});\n\nconst result = await client.workflows.list({\n  limit: 10,\n});\n\nconsole.log(result);"
      },
      {
        "lang": "python",
        "source": "from chunkify import Chunkify\n\nclient = Chunkify(\n    project_access_token=\"My Project Access Token\",\n)\n\nresult = client.workflows.list(\n    limit=10,\n)\n\nprint(result)"
      },
      {
        "lang": "php",
        "source": "\u003c?php\n\nuse Chunkify\\Client;\n\n$client = new Client(\n    projectAccessToken: 'My Project Access Token',\n);\n\n$result = $client-\u003eworkflows-\u003elist(\n    limit: 10,\n);\n\nvar_dump($result);"
      },
      {
        "lang": "golang",
        "source": "package main\n\nimport (\n\t\"context\"\n\t\"fmt\"\n\n\t\"github.com/chunkifydev/chunkify-go\"\n\t\"github.com/chunkifydev/chunkify-go/option\"\n)\n\nfunc main() {\n\tclient := chunkify.NewClient(\n\t\toption.WithProjectAccessToken(\"My Project Access Token\"),\n\t)\n\n\tresult, err := client.Workflows.List(\n\t\tcontext.TODO(),\n\t\tchunkify.WorkflowListParams{\n\t\t\tLimit: chunkify.Int(10),\n\t\t},\n\t)\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\tfmt.Printf(\"%+v\\n\", result)\n}\n"
      }
    ]
  }
}
```



```json #/components/schemas/ResponseErrorAuthentication
{
  "description": "Error response",
  "properties": {
    "error": {
      "description": "Error response details",
      "properties": {
        "code": {
          "const": 401,
          "description": "Code is the HTTP status code",
          "examples": [
            401
          ],
          "type": "integer"
        },
        "message": {
          "description": "Message is a human-readable error description",
          "examples": [
            "Authentication error: invalid token or subscription inactive"
          ],
          "type": "string"
        },
        "type": {
          "const": "AuthenticationError",
          "description": "Type indicates the error category",
          "enum": [
            "AuthenticationError"
          ],
          "type": "string"
        }
      },
      "required": [
        "type",
        "code",
        "message"
      ],
      "type": "object"
    },
    "status": {
      "const": "error",
      "description": "Status indicates the response status \"error\"",
      "type": "string"
    }
  },
  "required": [
    "status",
    "error"
  ],
  "type": "object"
}
```



```json #/components/schemas/ResponseErrorForbidden
{
  "properties": {
    "error": {
      "description": "Error response details",
      "properties": {
        "code": {
          "const": 403,
          "description": "Code is the HTTP status code",
          "examples": [
            403
          ],
          "type": "integer"
        },
        "message": {
          "description": "Message is a human-readable error description",
          "examples": [
            "Unauthorized to perform this action"
          ],
          "type": "string"
        },
        "type": {
          "const": "ForbiddenError",
          "description": "Type indicates the error category",
          "enum": [
            "ForbiddenError"
          ],
          "type": "string"
        }
      },
      "required": [
        "type",
        "code",
        "message"
      ],
      "type": "object"
    },
    "status": {
      "const": "error",
      "description": "Status indicates the response status \"error\"",
      "type": "string"
    }
  },
  "required": [
    "status",
    "error"
  ]
}
```



```json #/components/schemas/ResponseErrorNotFound
{
  "description": "Error response",
  "properties": {
    "error": {
      "description": "Error response details",
      "properties": {
        "code": {
          "const": 404,
          "description": "Code is the HTTP status code",
          "examples": [
            404
          ],
          "type": "integer"
        },
        "message": {
          "description": "Message is a human-readable error description",
          "examples": [
            "Ressource not found"
          ],
          "type": "string"
        },
        "type": {
          "const": "NotFoundError",
          "description": "Type indicates the error category",
          "enum": [
            "NotFoundError"
          ],
          "type": "string"
        }
      },
      "required": [
        "type",
        "code",
        "message"
      ],
      "type": "object"
    },
    "status": {
      "const": "error",
      "description": "Status indicates the response status \"error\"",
      "type": "string"
    }
  },
  "required": [
    "status",
    "error"
  ],
  "type": "object"
}
```



```json #/components/schemas/ResponseErrorConflict
{
  "description": "Error response",
  "properties": {
    "error": {
      "description": "Error response details",
      "properties": {
        "code": {
          "const": 409,
          "description": "Code is the HTTP status code",
          "examples": [
            409
          ],
          "type": "integer"
        },
        "message": {
          "description": "Message is a human-readable error description",
          "examples": [
            "source_unavailable: the original video is no longer accessible"
          ],
          "type": "string"
        },
        "type": {
          "const": "ConflictError",
          "description": "Type indicates the error category",
          "enum": [
            "ConflictError"
          ],
          "type": "string"
        }
      },
      "required": [
        "type",
        "code",
        "message"
      ],
      "type": "object"
    },
    "status": {
      "const": "error",
      "description": "Status indicates the response status \"error\"",
      "type": "string"
    }
  },
  "required": [
    "status",
    "error"
  ],
  "type": "object"
}
```



```json #/components/schemas/ResponseErrorTooManyRequests
{
  "description": "Error response",
  "properties": {
    "error": {
      "description": "Error response details",
      "properties": {
        "code": {
          "const": 429,
          "description": "Code is the HTTP status code",
          "examples": [
            429
          ],
          "type": "integer"
        },
        "message": {
          "description": "Message is a human-readable error description",
          "examples": [
            "Rate limit exceeded"
          ],
          "type": "string"
        },
        "type": {
          "const": "TooManyRequestsError",
          "description": "Type indicates the error category",
          "enum": [
            "TooManyRequestsError"
          ],
          "type": "string"
        }
      },
      "required": [
        "type",
        "code",
        "message"
      ],
      "type": "object"
    },
    "status": {
      "const": "error",
      "description": "Status indicates the response status \"error\"",
      "type": "string"
    }
  },
  "required": [
    "status",
    "error"
  ],
  "type": "object"
}
```



```json #/components/schemas/ResponseErrorServiceUnavailable
{
  "properties": {
    "error": {
      "description": "Error response details",
      "properties": {
        "code": {
          "const": 503,
          "description": "Code is the HTTP status code",
          "examples": [
            503
          ],
          "type": "integer"
        },
        "message": {
          "description": "Message is a human-readable error description",
          "examples": [
            "The service is temporarily unavailable; retry the request"
          ],
          "type": "string"
        },
        "type": {
          "const": "ServiceUnavailableError",
          "description": "Type indicates the error category",
          "enum": [
            "ServiceUnavailableError"
          ],
          "type": "string"
        }
      },
      "required": [
        "type",
        "code",
        "message"
      ],
      "type": "object"
    },
    "status": {
      "const": "error",
      "description": "Status indicates the response status \"error\"",
      "type": "string"
    }
  },
  "required": [
    "status",
    "error"
  ]
}
```



```json #/components/schemas/WorkflowListResponse
{
  "description": "A page of Workflows.",
  "properties": {
    "data": {
      "description": "Workflows in this page.",
      "items": {
        "$ref": "#/components/schemas/Workflow"
      },
      "type": "array"
    },
    "limit": {
      "description": "Maximum number of results requested per page.",
      "type": "integer"
    },
    "offset": {
      "description": "Number of matching results skipped.",
      "type": "integer"
    },
    "status": {
      "const": "success",
      "description": "Status of the API request. Always success for this response.",
      "type": "string"
    },
    "total": {
      "description": "Total number of results matching the filters before pagination.",
      "type": "integer"
    }
  },
  "required": [
    "status",
    "data",
    "total",
    "offset",
    "limit"
  ],
  "type": "object"
}
```



```json #/components/schemas/Workflow
{
  "description": "A reusable definition of actions triggered by Asset events.",
  "properties": {
    "archived_at": {
      "description": "When the Workflow was archived, or null if it is available for selection. Archiving stops new runs; accepted actions finish.",
      "format": "date-time",
      "type": [
        "string",
        "null"
      ]
    },
    "created_at": {
      "description": "When the Workflow was created.",
      "format": "date-time",
      "type": "string"
    },
    "id": {
      "description": "Unique Workflow ID.",
      "type": "string"
    },
    "name": {
      "description": "Name specifies the Workflow name.\nUse 1 to 128 characters.",
      "maxLength": 128,
      "minLength": 1,
      "type": "string"
    },
    "revision": {
      "description": "Current definition revision. Starts at 1 and increases when rules are replaced.",
      "type": "integer"
    },
    "rules": {
      "description": "Rules specifies the event subscriptions and actions in this definition.\nProvide exactly one asset.ready rule and up to 15 connected rules, with at most 32 actions and 65536 encoded bytes across all rules. Array order affects display only.",
      "items": {
        "$ref": "#/components/schemas/WorkflowRule"
      },
      "maxItems": 16,
      "minItems": 1,
      "type": "array"
    },
    "schema_version": {
      "description": "SchemaVersion specifies the Workflow definition format. The supported version is 1.",
      "type": "integer"
    },
    "updated_at": {
      "description": "When the Workflow was last updated.",
      "format": "date-time",
      "type": "string"
    }
  },
  "required": [
    "id",
    "name",
    "schema_version",
    "revision",
    "rules",
    "created_at",
    "updated_at",
    "archived_at"
  ],
  "type": "object"
}
```



```json #/components/schemas/WorkflowRule
{
  "additionalProperties": false,
  "allOf": [
    {
      "else": {
        "required": [
          "origin"
        ]
      },
      "if": {
        "properties": {
          "event": {
            "const": "asset.ready"
          }
        }
      },
      "then": {
        "not": {
          "required": [
            "origin"
          ]
        }
      }
    }
  ],
  "description": "A starting or connected step with one or more independent actions.",
  "properties": {
    "actions": {
      "description": "Actions specifies the work to start when the rule matches. Actions can run concurrently; array order does not define execution order.\nProvide 1 to 32 actions per rule, with at most 32 across the definition.",
      "items": {
        "$ref": "#/components/schemas/WorkflowAction"
      },
      "maxItems": 32,
      "minItems": 1,
      "type": "array"
    },
    "event": {
      "description": "Event specifies when this rule starts. Use asset.ready for the single starting rule. Output ready events require an origin caption or static rendition action in this Workflow.",
      "enum": [
        "asset.ready",
        "asset.output.ready"
      ],
      "type": "string"
    },
    "id": {
      "description": "Id specifies a stable rule key, unique within this Workflow definition.\nUse 1 to 64 characters, starting with a letter and containing only letters, digits, or underscores.",
      "maxLength": 64,
      "minLength": 1,
      "pattern": "^[A-Za-z][A-Za-z0-9_]*$",
      "type": "string"
    },
    "origin": {
      "$ref": "#/components/schemas/WorkflowOrigin",
      "description": "Origin specifies the action whose ready output starts this rule. Required for asset.output.ready; omit it for asset.ready. Translation steps must connect to a create_caption action.\nReferences must point to a compatible action in this definition and must not form a cycle."
    }
  },
  "required": [
    "id",
    "event",
    "actions"
  ],
  "type": "object",
  "x-reject-null-fields": [
    "id",
    "event",
    "origin",
    "actions"
  ],
  "x-reject-unknown-fields": true
}
```



```json #/components/schemas/WorkflowAction
{
  "description": "One action to perform when a rule matches. The type determines the required parameters.",
  "discriminator": {
    "mapping": {
      "create_caption": "#/components/schemas/WorkflowCaptionAction",
      "create_static_rendition": "#/components/schemas/WorkflowStaticAction",
      "create_thumbnails": "#/components/schemas/WorkflowThumbnailAction",
      "create_transcript": "#/components/schemas/WorkflowTranscriptAction",
      "translate_caption": "#/components/schemas/WorkflowTranslationAction"
    },
    "propertyName": "type"
  },
  "oneOf": [
    {
      "$ref": "#/components/schemas/WorkflowStaticAction"
    },
    {
      "$ref": "#/components/schemas/WorkflowCaptionAction"
    },
    {
      "$ref": "#/components/schemas/WorkflowTranslationAction"
    },
    {
      "$ref": "#/components/schemas/WorkflowThumbnailAction"
    },
    {
      "$ref": "#/components/schemas/WorkflowTranscriptAction"
    }
  ]
}
```



```json #/components/schemas/WorkflowCaptionAction
{
  "additionalProperties": false,
  "description": "Generates or reuses original captions and their transcript from the Asset's speech.",
  "properties": {
    "id": {
      "description": "Id specifies a stable action key, unique within its rule.\nUse 1 to 64 characters, starting with a letter and containing only letters, digits, or underscores.",
      "maxLength": 64,
      "minLength": 1,
      "pattern": "^[A-Za-z][A-Za-z0-9_]*$",
      "type": "string"
    },
    "params": {
      "$ref": "#/components/schemas/WorkflowCaptionParams",
      "description": "Params specifies caption generation settings. Pass an empty object."
    },
    "transcript_id": {
      "$ref": "#/components/schemas/WorkflowOutputBinding",
      "description": "TranscriptId binds caption publication to the transcript in the triggering event. Use it only when connected to create_transcript. When omitted, creates or reuses the Asset’s original transcript."
    },
    "type": {
      "const": "create_caption",
      "description": "Type specifies the action to perform. Must be create_caption.",
      "type": "string"
    }
  },
  "required": [
    "id",
    "type",
    "params"
  ],
  "type": "object",
  "x-reject-null-fields": [
    "id",
    "type",
    "params"
  ],
  "x-reject-unknown-fields": true
}
```



```json #/components/schemas/WorkflowCaptionParams
{
  "additionalProperties": false,
  "description": "Parameters for generating original captions. Pass an empty object; the spoken language is detected automatically.",
  "properties": {},
  "type": "object",
  "x-reject-null-fields": [],
  "x-reject-unknown-fields": true
}
```



```json #/components/schemas/WorkflowOutputBinding
{
  "additionalProperties": false,
  "description": "Selects the output referenced by the triggering event.",
  "properties": {
    "from": {
      "description": "From specifies where to read the input output ID. Use event.output.id to consume the output in the triggering asset.output.ready event.",
      "enum": [
        "event.output.id"
      ],
      "type": "string"
    }
  },
  "required": [
    "from"
  ],
  "type": "object",
  "x-reject-null-fields": [
    "from"
  ],
  "x-reject-unknown-fields": true
}
```



```json #/components/schemas/WorkflowTranslationAction
{
  "additionalProperties": false,
  "description": "Translates or reuses an original caption in one target language. Requires an asset.output.ready rule connected to an original caption creation action.",
  "properties": {
    "caption_id": {
      "$ref": "#/components/schemas/WorkflowOutputBinding",
      "description": "CaptionId specifies the binding to the original caption in the triggering event."
    },
    "id": {
      "description": "Id specifies a stable action key, unique within its rule.\nUse 1 to 64 characters, starting with a letter and containing only letters, digits, or underscores.",
      "maxLength": 64,
      "minLength": 1,
      "pattern": "^[A-Za-z][A-Za-z0-9_]*$",
      "type": "string"
    },
    "params": {
      "$ref": "#/components/schemas/WorkflowTranslationParams",
      "description": "Params specifies the target language."
    },
    "type": {
      "const": "translate_caption",
      "description": "Type specifies the action to perform. Must be translate_caption.",
      "type": "string"
    }
  },
  "required": [
    "id",
    "type",
    "params",
    "caption_id"
  ],
  "type": "object",
  "x-reject-null-fields": [
    "id",
    "type",
    "params",
    "caption_id"
  ],
  "x-reject-unknown-fields": true
}
```



```json #/components/schemas/WorkflowOutputBinding
{
  "additionalProperties": false,
  "description": "Selects the output referenced by the triggering event.",
  "properties": {
    "from": {
      "description": "From specifies where to read the input output ID. Use event.output.id to consume the output in the triggering asset.output.ready event.",
      "enum": [
        "event.output.id"
      ],
      "type": "string"
    }
  },
  "required": [
    "from"
  ],
  "type": "object",
  "x-reject-null-fields": [
    "from"
  ],
  "x-reject-unknown-fields": true
}
```



```json #/components/schemas/WorkflowTranslationParams
{
  "additionalProperties": false,
  "description": "Parameters for translating one original caption into another language.",
  "properties": {
    "language_code": {
      "description": "LanguageCode specifies the target language for the translated subtitle track, such as en or fr. The same code appears in the caption and HLS manifest.",
      "enum": [
        "en",
        "fr",
        "es",
        "de",
        "it",
        "pt",
        "nl",
        "ja",
        "ko",
        "zh",
        "ar",
        "hi",
        "ru",
        "tr",
        "pl",
        "sv"
      ],
      "type": "string"
    }
  },
  "required": [
    "language_code"
  ],
  "type": "object",
  "x-reject-unknown-fields": true
}
```



```json #/components/schemas/WorkflowThumbnailAction
{
  "additionalProperties": false,
  "description": "Creates an independent thumbnail request after asset.ready. Replaying this action uses its accepted request; separate actions create separate requests.",
  "properties": {
    "id": {
      "description": "Id specifies a stable action key, unique within its rule.",
      "maxLength": 64,
      "minLength": 1,
      "pattern": "^[A-Za-z][A-Za-z0-9_]*$",
      "type": "string"
    },
    "params": {
      "$ref": "#/components/schemas/WorkflowThumbnailParams",
      "description": "Params specifies sampling and image settings. Outputs use the Asset folder and Storage."
    },
    "type": {
      "const": "create_thumbnails",
      "description": "Type specifies the action to perform. Must be create_thumbnails.",
      "type": "string"
    }
  },
  "required": [
    "id",
    "type",
    "params"
  ],
  "type": "object",
  "x-reject-null-fields": [
    "id",
    "type",
    "params"
  ],
  "x-reject-unknown-fields": true
}
```



```json #/components/schemas/WorkflowThumbnailParams
{
  "additionalProperties": false,
  "description": "Generate additional thumbnails in the Asset folder and Storage. Each layout, format and size combination can be requested once. Specify exactly one of timestamps or count.",
  "oneOf": [
    {
      "required": [
        "timestamps"
      ]
    },
    {
      "required": [
        "count"
      ]
    }
  ],
  "properties": {
    "count": {
      "description": "Count specifies 1 to 100 thumbnails at the middle of equal sections of the selected range.",
      "maximum": 100,
      "minimum": 1,
      "type": "integer"
    },
    "format": {
      "$ref": "#/components/schemas/ThumbnailFormat",
      "default": "jpeg",
      "description": "Format selects JPEG or WebP. Defaults to JPEG."
    },
    "metadata": {
      "additionalProperties": {
        "type": "string"
      },
      "description": "Metadata attaches string values to this request. The serialized object may contain at most 2048 bytes.",
      "type": "object",
      "x-maxJSONBytes": 2048
    },
    "output": {
      "$ref": "#/components/schemas/ThumbnailOutput",
      "default": "images",
      "description": "Output selects images or sprites. Defaults to images."
    },
    "range": {
      "$ref": "#/components/schemas/ThumbnailRangeParams",
      "description": "Range limits sampling to part of the Source. Defaults to the whole Source duration."
    },
    "size": {
      "default": 320,
      "description": "Size specifies the maximum image or tile edge in pixels, from 64 to 1920. Defaults to 320. Odd sizes are supported. Preserves display aspect ratio without cropping or upscaling.",
      "maximum": 1920,
      "minimum": 64,
      "type": "integer"
    },
    "timestamps": {
      "description": "Timestamps specifies 1 to 100 Source-relative target times in seconds. Times outside the selected range are skipped when the action runs. If none remain, the action is skipped without a charge. Repeated targets produce separate outputs.",
      "items": {
        "description": "A target time in seconds.",
        "minimum": 0,
        "type": "number"
      },
      "maxItems": 100,
      "minItems": 1,
      "type": "array"
    }
  },
  "type": "object",
  "x-reject-null-fields": [
    "timestamps",
    "count",
    "range",
    "output",
    "format",
    "size",
    "metadata"
  ],
  "x-reject-unknown-fields": true
}
```



```json #/components/schemas/ThumbnailFormat
{
  "description": "Format specifies the image encoding.",
  "enum": [
    "jpeg",
    "webp"
  ],
  "type": "string"
}
```



```json #/components/schemas/ThumbnailOutput
{
  "description": "Output specifies individual images or automatically arranged sprite sheets.",
  "enum": [
    "images",
    "sprites"
  ],
  "type": "string"
}
```



```json #/components/schemas/ThumbnailRangeParams
{
  "additionalProperties": false,
  "description": "Optional Source-relative sampling boundaries.",
  "properties": {
    "end": {
      "description": "End specifies the exclusive upper bound in seconds. Defaults to the Source duration.",
      "exclusiveMinimum": 0,
      "type": "number"
    },
    "start": {
      "description": "Start specifies the inclusive lower bound in seconds. Defaults to zero.",
      "minimum": 0,
      "type": "number"
    }
  },
  "type": "object",
  "x-reject-null-fields": [
    "start",
    "end"
  ],
  "x-reject-unknown-fields": true
}
```



```json #/components/schemas/WorkflowTranscriptAction
{
  "additionalProperties": false,
  "description": "Creates or reuses the original-language transcript. Can run alongside caption generation in the same asset.ready rule.",
  "properties": {
    "id": {
      "description": "Id specifies a stable action key, unique within its rule.\nUse 1 to 64 characters, starting with a letter and containing only letters, digits, or underscores.",
      "maxLength": 64,
      "minLength": 1,
      "pattern": "^[A-Za-z][A-Za-z0-9_]*$",
      "type": "string"
    },
    "params": {
      "$ref": "#/components/schemas/AssetTranscriptOutputParams",
      "description": "Params specifies transcript settings. Pass an empty object."
    },
    "type": {
      "const": "create_transcript",
      "description": "Type specifies the action to perform. Must be create_transcript.",
      "type": "string"
    }
  },
  "required": [
    "id",
    "type",
    "params"
  ],
  "type": "object",
  "x-reject-null-fields": [
    "id",
    "type",
    "params"
  ],
  "x-reject-unknown-fields": true
}
```



```json #/components/schemas/AssetTranscriptOutputParams
{
  "additionalProperties": false,
  "description": "Parameters for an original-language transcript. Pass an empty object; the spoken language is detected automatically.",
  "properties": {},
  "type": "object",
  "x-go-required-presence": true,
  "x-reject-unknown-fields": true
}
```



```json #/components/schemas/WorkflowStaticAction
{
  "additionalProperties": false,
  "description": "Creates or reuses one static rendition for the Asset.",
  "properties": {
    "id": {
      "description": "Id specifies a stable action key, unique within its rule.\nUse 1 to 64 characters, starting with a letter and containing only letters, digits, or underscores.",
      "maxLength": 64,
      "minLength": 1,
      "pattern": "^[A-Za-z][A-Za-z0-9_]*$",
      "type": "string"
    },
    "params": {
      "$ref": "#/components/schemas/WorkflowStaticParams",
      "description": "Params specifies the static rendition resolution."
    },
    "type": {
      "const": "create_static_rendition",
      "description": "Type specifies the action to perform. Must be create_static_rendition.",
      "type": "string"
    }
  },
  "required": [
    "id",
    "type",
    "params"
  ],
  "type": "object",
  "x-reject-null-fields": [
    "id",
    "type",
    "params"
  ],
  "x-reject-unknown-fields": true
}
```



```json #/components/schemas/WorkflowStaticParams
{
  "additionalProperties": false,
  "description": "Parameters for creating one static rendition.",
  "properties": {
    "resolution": {
      "description": "Resolution specifies the H.264 MP4 output resolution. highest selects the largest supported output without upscaling.\nHobby supports up to 1080p; other plans support up to 2160p. Streaming resolution limits do not apply.",
      "enum": [
        "highest",
        "240p",
        "360p",
        "480p",
        "540p",
        "720p",
        "1080p",
        "1440p",
        "2160p"
      ],
      "type": "string"
    }
  },
  "required": [
    "resolution"
  ],
  "type": "object",
  "x-reject-null-fields": [
    "resolution"
  ],
  "x-reject-unknown-fields": true
}
```



```json #/components/schemas/WorkflowOrigin
{
  "additionalProperties": false,
  "description": "Connects this rule to the output created or reused by an action in the same Workflow revision.",
  "properties": {
    "action_id": {
      "description": "ActionId specifies the ID of the producing action within that rule.\nUse 1 to 64 characters, starting with a letter and containing only letters, digits, or underscores.",
      "maxLength": 64,
      "minLength": 1,
      "pattern": "^[A-Za-z][A-Za-z0-9_]*$",
      "type": "string"
    },
    "rule_id": {
      "description": "RuleId specifies the ID of the rule containing the producing action.\nUse 1 to 64 characters, starting with a letter and containing only letters, digits, or underscores.",
      "maxLength": 64,
      "minLength": 1,
      "pattern": "^[A-Za-z][A-Za-z0-9_]*$",
      "type": "string"
    }
  },
  "required": [
    "rule_id",
    "action_id"
  ],
  "type": "object",
  "x-reject-null-fields": [
    "rule_id",
    "action_id"
  ],
  "x-reject-unknown-fields": true
}
```



```json #/components/schemas/ResponseErrorValidation
{
  "properties": {
    "error": {
      "properties": {
        "code": {
          "const": 400,
          "description": "Code is the HTTP status code",
          "examples": [
            400
          ],
          "type": "integer"
        },
        "message": {
          "description": "Message is a human-readable error description",
          "examples": [
            "Invalid request parameters"
          ],
          "type": "string"
        },
        "type": {
          "const": "ValidationError",
          "description": "Type indicates the error category",
          "enum": [
            "ValidationError"
          ],
          "type": "string"
        }
      },
      "required": [
        "type",
        "code",
        "message"
      ],
      "type": "object"
    },
    "status": {
      "const": "error",
      "description": "Status indicates the response status \"error\"",
      "type": "string"
    }
  },
  "required": [
    "status",
    "error"
  ]
}
```