{"components":{"schemas":{"Schema_005a01ba58ae0ad47bab35d7b78f964895edfa15304dc581291f5710082ad6b8":{"items":{"additionalProperties":true,"properties":{"action":{"additionalProperties":true,"properties":{"message":{"type":"string"},"text":{"type":"string"},"type":{"const":"intercom","type":"string"}},"required":["message","text","type"],"type":"object"},"level":{"enum":["notice","warning"],"type":"string"},"msg":{"type":"string"}},"required":["level","msg"],"type":"object"},"type":"array","x-transloadit-schema-id":"sha256:005a01ba58ae0ad47bab35d7b78f964895edfa15304dc581291f5710082ad6b8"},"Schema_0144982ec4603cb590f811306ccc61b4adab1982c8d2428e72f553f5b6b29e60":{"additionalProperties":false,"properties":{"assets":{"items":{"additionalProperties":false,"properties":{"asset_id":{"description":"Case-sensitive, canonical 22-character Base64URL DAM identifier.","pattern":"^[A-Za-z0-9_-]{21}[AQgw]$","type":"string","x-transloadit-description-id":"damId"},"deleted_at":{"allOf":[{"pattern":"^(([0-9][0-9][2468][048]|[0-9][0-9][13579][26]|[0-9][0-9]0[48]|[02468][048]00|[13579][26]00)-02-29|[0-9]{4}-((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01])|(0[469]|11)-(0[1-9]|[12][0-9]|30)|(02)-(0[1-9]|1[0-9]|2[0-8])))T([01][0-9]|2[0-3]):[0-5][0-9](:[0-5][0-9](\\.[0-9]+)?)?(Z)$"}],"type":"string"}},"required":["asset_id","deleted_at"],"type":"object"},"type":"array"},"message":{"minLength":1,"type":"string"},"ok":{"const":"DAM_ASSETS_DELETED","type":"string"}},"required":["assets","message","ok"],"type":"object","x-transloadit-schema-id":"sha256:0144982ec4603cb590f811306ccc61b4adab1982c8d2428e72f553f5b6b29e60"},"Schema_03e4961eba9e9b422ce714f9224b8d47a380c80d27b8342a78ba4e2702feb4db":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"items":{"enum":["execute","import","meta"],"type":"string"},"type":"array"}]}],"default":[],"description":"\nIgnore errors during specific phases of processing.\n\nSetting this to `[\"meta\"]` will cause the Robot to ignore errors during metadata extraction.\n\nSetting this to `[\"execute\"]` will cause the Robot to ignore errors during the main execution phase.\n\nSetting this to `[\"import\"]` will cause the Robot to ignore errors while importing the source file. The `\"import\"` phase is only available to import Robots.\n\nSetting this to `true` is equivalent to `[\"meta\", \"import\", \"execute\"]` and will ignore errors in all three phases.\n","x-transloadit-schema-id":"sha256:03e4961eba9e9b422ce714f9224b8d47a380c80d27b8342a78ba4e2702feb4db"},"Schema_05bfded8bff85d456673951be6fccc1bc4f149589a64fb7d239467051b736eee":{"description":"Comma-separated metadata keys and canonical standard Base64 values serialized by the pinned tus runtime.","pattern":"^(?:\\t|[^\u0000- ,])+(?: (?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?)?(?:,(?:\\t|[^\u0000- ,])+(?: (?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?)?)*$","type":"string","x-transloadit-description-id":"tusSerializedUploadMetadata","x-transloadit-schema-id":"sha256:05bfded8bff85d456673951be6fccc1bc4f149589a64fb7d239467051b736eee"},"Schema_06fe2325d4d36556a72ff5a83da3dad02e83587ee09a458f85f1d2964ff06dda":{"additionalProperties":false,"description":"Authentication metadata and upload constraints for a Bearer-authenticated Assembly request. The token supplies the API key, so the request may omit it.\n\nThe `referer` property is a regular expression to match against the HTTP referer of this upload, such as `\"example\\.org\"`. Use it to check supplied Referer values against an expected domain.\n\nUploads without a referer will always pass (as they are turned off for some browsers) making this useful in just a handful of use cases. For details about regular expressions, see [Mozilla's RegExp documentation](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/RegExp).\n\nInvalid regular expressions and expressions that exceed the evaluation time limit are rejected. This check is not a substitute for Signature Authentication: clients can omit or forge the Referer header.\n\nThe `max_size` property limits the Assembly’s total expected upload size in bytes, such as `1048576` (1 MB), rather than each file separately. This includes the multipart request body, or the initial Assembly request bytes plus its resumable uploads. Exceeding the limit stops the entire Assembly with an error, including files that individually fit within the limit.\nDo not rely on this limit to reject every oversized transfer before it starts. For resumable uploads, the declared or received size becomes available through tus updates, and the Assembly checks the limit when a finished upload is processed. A deferred upload’s size is not known at creation, and bytes may already have transferred before the Assembly rejects it.\nIf you want to just ignore the files that exceed a certain size, but process all others, then please use [🤖/file/filter](https://transloadit.com/docs/robots/file-filter/).\n\nThe `max_number_of_files` property can be used to set a maximum number of files that an upload can have, such as `100`. Specify this to prevent users from uploading excessively many files, both via file uploads and via import Robots.\n\nThese properties can be set as part of the Assembly request or as part of the Template.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"},"max_number_of_files":{"description":"Maximum number of input files allowed per Assembly. If the number of uploaded or imported files exceeds this limit, the Assembly will be stopped with an error. This is useful for preventing abuse when Signature Authentication credentials are exposed.","minimum":1,"type":"integer","x-transloadit-description-id":"signatureAuthMaxNumberOfFiles"},"max_size":{"description":"Maximum total expected upload size in bytes for the Assembly, including request-body overhead. This is not a per-file limit and does not guarantee rejection before a resumable transfer starts.","type":"number","x-transloadit-description-id":"signatureAuthMaxSize"},"referer":{"description":"Regular expression matched against a supplied HTTP Referer. Invalid expressions and expressions that exceed the evaluation time limit are rejected. Missing Referer headers pass this check; use Signature Authentication to authenticate requests.","type":"string","x-transloadit-description-id":"signatureAuthReferer"}},"type":"object","x-transloadit-description-id":"assemblyCreateAuth","x-transloadit-schema-id":"sha256:06fe2325d4d36556a72ff5a83da3dad02e83587ee09a458f85f1d2964ff06dda"},"Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d":{"additionalProperties":{},"default":{},"description":"\nAdds custom JSON metadata to each emitted file without changing its contents. Nested objects and arrays are supported.\n\nInheritance depends on the Robot. Values merge with existing `user_meta` on the output file; the current Step replaces matching top-level keys. Assign required keys explicitly when a Robot creates fresh outputs.\n\nIn processing Steps, `${file.*}` refers to the first input and `${result.*}` to the emitted file. Values are evaluated per output after the Robot runs, before subsequent metadata extraction and temporary storage. On `:original`, values are evaluated per upload before metadata extraction.\n\nDownstream Steps read `${file.user_meta.key}`. See [Custom metadata](https://transloadit.com/docs/topics/assembly-variables/#user-meta) for a complete example and inheritance rules.\n","type":"object","x-transloadit-schema-id":"sha256:070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"},"Schema_07e3c7f49387418d6c2cde66ece62087468146d49408a766b5866535f24bcbf1":{"description":"Base64-encoded ThumbHash retained with this stored image version, when available. Protect this image data with the same access controls as the original.","pattern":"^(?:[A-Za-z0-9+/]{4}){1,15}(?:[A-Za-z0-9+/]{4}|[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)$","type":"string","x-transloadit-description-id":"assemblyStatusFileThumbhash","x-transloadit-schema-id":"sha256:07e3c7f49387418d6c2cde66ece62087468146d49408a766b5866535f24bcbf1"},"Schema_0862c00c4e0751b789b855a35c3ce6c8bf90839f7e0e0cfd9bd5654e297de97b":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"items":{"additionalProperties":true,"properties":{"boundingPolygon":{"items":{"additionalProperties":true,"properties":{"x":{"type":"number"},"y":{"type":"number"}},"required":["x","y"],"type":"object"},"type":"array"},"text":{"type":"string"}},"required":["boundingPolygon","text"],"type":"object"},"type":"array"}],"x-transloadit-schema-id":"sha256:0862c00c4e0751b789b855a35c3ce6c8bf90839f7e0e0cfd9bd5654e297de97b"},"Schema_0a6cca1167ec53cf32aad9895761a59074b1e55553d5736c48cfea8d85a21f60":{"additionalProperties":false,"properties":{"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for a Storage metadata request.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"type":"object","x-transloadit-description-id":"damReadAuth"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"},"version_id":{"description":"Optional retained version of the selected asset. Omit for the current version. A missing or deleted version returns an error and never falls back to current bytes.","pattern":"^[A-Za-z0-9_-]{21}[AQgw]$","type":"string","x-transloadit-description-id":"storedAssetGetVersionId"}},"type":"object","x-transloadit-schema-id":"sha256:0a6cca1167ec53cf32aad9895761a59074b1e55553d5736c48cfea8d85a21f60"},"Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a":{"allOf":[{"$ref":"#/components/schemas/Schema_cb07bdaec8a57b18babcb0842531069c047ea76747de30cb3433ec3ab53763cb"}],"x-transloadit-schema-id":"sha256:0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"},"Schema_0b7b04f621f8efa57648a0e30bbaa6a7b8282ff61dbd25868fe21cadd873ba02":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nPlease create your associated <dfn>Template Credentials</dfn> in your Transloadit account and use the name of your <dfn>Template Credentials</dfn> as this parameter's value. They will contain the values for your S3 `bucket`, `key`, `secret` and `bucket_region`.\n\nWhile we recommend to use <dfn>Template Credentials</dfn> at all times, some use cases demand dynamic credentials for which using <dfn>Template Credentials</dfn> is too unwieldy because of their static nature. If you have this requirement, feel free to use the following parameters instead: `\"bucket\"`, `\"bucket_region\"` (for example: `\"us-east-1\"` or `\"eu-west-2\"`), `\"key\"`, `\"secret\"`.\n","x-transloadit-schema-id":"sha256:0b7b04f621f8efa57648a0e30bbaa6a7b8282ff61dbd25868fe21cadd873ba02"},"Schema_0d5e623ef607f7e5a5d864341fe8b479821f0bbb4438d97a29e9da5ff1902f4e":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nSetting this to `true` will enable importing files from subdirectories and sub-subdirectories (etc.) of the given path.\n\nPlease use the pagination parameters `start_file_name` and `files_per_page` wisely here.\n","x-transloadit-schema-id":"sha256:0d5e623ef607f7e5a5d864341fe8b479821f0bbb4438d97a29e9da5ff1902f4e"},"Schema_0da0c6cf83511319a2e357bd80e4040b47a1af8ded95b26c2ab7775d8bed90a8":{"anyOf":[{"additionalProperties":true,"description":"Bad parameters.","properties":{"error":{"const":"TEMPLATE_LIST_ERROR","type":"string"},"http_code":{"const":400,"type":"number"},"message":{"description":"Human-readable explanation of the error. Its wording can vary; use the `error` code when handling a specific failure.","type":"string","x-transloadit-description-id":"api2ErrorMessage"}},"required":["error"],"type":"object","x-transloadit-description-id":"api2ErrorTemplateListError"},{"allOf":[{"$ref":"#/components/schemas/Schema_cb07bdaec8a57b18babcb0842531069c047ea76747de30cb3433ec3ab53763cb"}]}],"x-transloadit-schema-id":"sha256:0da0c6cf83511319a2e357bd80e4040b47a1af8ded95b26c2ab7775d8bed90a8"},"Schema_0e29a201ae789e2bba4c4fa44bb1e8f7b7e882c7ee813dbbda87d9a784f07105":{"additionalProperties":false,"properties":{"asset":{"additionalProperties":true,"properties":{"asset_id":{"description":"Stable asset ID. It survives native moves and renames; use it without a version to select the current bytes.","pattern":"^[A-Za-z0-9_-]{21}[AQgw]$","type":"string","x-transloadit-description-id":"storedAssetAssetId"},"has_alpha":{"description":"Whether the image has an alpha channel, even if all its pixels are opaque. Present when ThumbHash extraction succeeds; absence means unknown.","type":"boolean","x-transloadit-description-id":"storedAssetHasAlpha"},"height":{"description":"Display height in pixels, after applying EXIF orientation, when known.","exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer","x-transloadit-description-id":"storedAssetHeight"},"md5hash":{"description":"Lowercase MD5 checksum of the stored bytes, when available.","pattern":"^[a-f0-9]{32}$","type":"string","x-transloadit-description-id":"storedAssetMd5Hash"},"mime":{"description":"MIME type of the stored bytes, or null when unknown.","type":["null","string"],"x-transloadit-description-id":"storedAssetMime"},"path":{"description":"Current mutable location relative to the Workspace. A rename makes the previous path stale; overwriting can change the bytes at this path.","minLength":1,"type":"string","x-transloadit-description-id":"storedAssetPath"},"sha256":{"description":"Lowercase SHA-256 checksum of the stored bytes, when available.","pattern":"^[a-f0-9]{64}$","type":"string","x-transloadit-description-id":"storedAssetSha256"},"size":{"description":"Size of the stored file in bytes.","maximum":9007199254740991,"minimum":0,"type":"integer","x-transloadit-description-id":"storedAssetSize"},"thumbhash":{"description":"Base64-encoded ThumbHash of this version’s displayed pixels, when requested with output_meta.thumbhash on its producing Step. This is image data: apply the same access controls as the original.","pattern":"^(?:[A-Za-z0-9+/]{4}){1,15}(?:[A-Za-z0-9+/]{4}|[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)$","type":"string","x-transloadit-description-id":"storedAssetThumbhash"},"version_id":{"description":"Exact immutable version of this asset. Pair with asset_id to select retained bytes; a missing version never falls back to the current version.","pattern":"^[A-Za-z0-9_-]{21}[AQgw]$","type":"string","x-transloadit-description-id":"storedAssetVersionId"},"width":{"description":"Display width in pixels, after applying EXIF orientation, when known.","exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer","x-transloadit-description-id":"storedAssetWidth"},"workspace":{"description":"Workspace slug that owns this asset. Authenticate for the same Workspace when reading or managing it.","minLength":1,"type":"string","x-transloadit-description-id":"storedAssetWorkspace"}},"required":["asset_id","mime","path","size","version_id","workspace"],"type":"object"},"asset_id":{"description":"Case-sensitive, canonical 22-character Base64URL DAM identifier.","pattern":"^[A-Za-z0-9_-]{21}[AQgw]$","type":"string","x-transloadit-description-id":"damId"},"deleted_at":{"anyOf":[{"$ref":"#/components/schemas/Schema_4e26553b40ceb7f4fccba1cb4f658b1497c18e9b47d825e006083381740d4576"},{"type":"null"}]},"filename":{"minLength":1,"type":"string"},"folder_id":{"anyOf":[{"description":"Case-sensitive, canonical 22-character Base64URL DAM identifier.","pattern":"^[A-Za-z0-9_-]{21}[AQgw]$","type":"string","x-transloadit-description-id":"damId"},{"type":"null"}],"description":"Case-sensitive, canonical 22-character Base64URL DAM identifier.","x-transloadit-description-id":"damId"},"message":{"minLength":1,"type":"string"},"ok":{"const":"DAM_ASSET_MOVED","type":"string"},"path":{"minLength":1,"type":"string"},"updated_at":{"$ref":"#/components/schemas/Schema_4e26553b40ceb7f4fccba1cb4f658b1497c18e9b47d825e006083381740d4576"}},"required":["asset","asset_id","deleted_at","filename","folder_id","message","ok","path","updated_at"],"type":"object","x-transloadit-schema-id":"sha256:0e29a201ae789e2bba4c4fa44bb1e8f7b7e882c7ee813dbbda87d9a784f07105"},"Schema_0ea4eb8d6377702d52ca8099d657558fcd9648b5abd6568717b4d994ba4a6fca":{"description":"Base64-encoded ThumbHash of the EXIF-oriented image. Request output_meta.thumbhash on the producing Step. Omitted when not requested, unsupported, over 40 megapixels, or extraction fails. Treat the hash as private image data when the original is private.","pattern":"^(?:[A-Za-z0-9+/]{4}){1,15}(?:[A-Za-z0-9+/]{4}|[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)$","type":"string","x-transloadit-description-id":"assemblyStatusMetaThumbhash","x-transloadit-schema-id":"sha256:0ea4eb8d6377702d52ca8099d657558fcd9648b5abd6568717b4d994ba4a6fca"},"Schema_0fc8e431f685c4ad9c8c57805059dc903176efb1f46c34985fbc737fec1d63af":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nPlease create your associated <dfn>Template Credentials</dfn> in your Transloadit account and use the name of your <dfn>Template Credentials</dfn> as this parameter's value. They will contain the values for your MinIO bucket, Key, Secret and Bucket region.\n\nWhile we recommend to use <dfn>Template Credentials</dfn> at all times, some use cases demand dynamic credentials for which using <dfn>Template Credentials</dfn> is too unwieldy because of their static nature. If you have this requirement, feel free to use the following parameters instead: `\"bucket\"`, `\"host\"`, `\"key\"`, `\"secret\"`.\n","x-transloadit-schema-id":"sha256:0fc8e431f685c4ad9c8c57805059dc903176efb1f46c34985fbc737fec1d63af"},"Schema_12977f712386d47ebcfb772a35ba961d9d05729d01c4639ea75b7afa3eb82847":{"anyOf":[{"additionalProperties":true,"properties":{"data":{"anyOf":[{"$ref":"#/components/schemas/Schema_7cc8d8f776c1f7ce03f3b4dbd8d1e954038f256031ef8a62d19bbdac449d509e"},{"type":"string"},{"additionalProperties":{"type":"string"},"type":"object"}]},"experimental_providerMetadata":{},"filename":{"type":"string"},"mediaType":{"type":"string"},"providerOptions":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"type":{"const":"file","type":"string"}},"required":["data","mediaType","providerOptions","type"],"type":"object"},{"additionalProperties":true,"properties":{"data":{"anyOf":[{"$ref":"#/components/schemas/Schema_7cc8d8f776c1f7ce03f3b4dbd8d1e954038f256031ef8a62d19bbdac449d509e"},{"type":"string"},{"additionalProperties":{"type":"string"},"type":"object"}]},"experimental_providerMetadata":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"filename":{"type":"string"},"mediaType":{"type":"string"},"providerOptions":{"not":{}},"type":{"const":"file","type":"string"}},"required":["data","mediaType","type"],"type":"object"},{"additionalProperties":true,"properties":{"data":{"anyOf":[{"$ref":"#/components/schemas/Schema_7cc8d8f776c1f7ce03f3b4dbd8d1e954038f256031ef8a62d19bbdac449d509e"},{"type":"string"},{"additionalProperties":{"type":"string"},"type":"object"}]},"experimental_providerMetadata":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"filename":{"type":"string"},"mediaType":{"type":"string"},"providerOptions":{"type":"null"},"type":{"const":"file","type":"string"}},"required":["data","mediaType","providerOptions","type"],"type":"object"}],"x-transloadit-schema-id":"sha256:12977f712386d47ebcfb772a35ba961d9d05729d01c4639ea75b7afa3eb82847"},"Schema_12a062eedcf9f188786a68eccbbe800b338c95e63a1596e5de35cbf14e12dde4":{"anyOf":[{"additionalProperties":true,"description":"Your Auth Key could not be deleted.","properties":{"error":{"const":"AUTH_KEY_NOT_DELETED","type":"string"},"http_code":{"const":400,"type":"number"},"message":{"description":"Human-readable explanation of the error. Its wording can vary; use the `error` code when handling a specific failure.","type":"string","x-transloadit-description-id":"api2ErrorMessage"}},"required":["error"],"type":"object","x-transloadit-description-id":"api2ErrorAuthKeyNotDeleted"},{"allOf":[{"$ref":"#/components/schemas/Schema_cb07bdaec8a57b18babcb0842531069c047ea76747de30cb3433ec3ab53763cb"}]}],"x-transloadit-schema-id":"sha256:12a062eedcf9f188786a68eccbbe800b338c95e63a1596e5de35cbf14e12dde4"},"Schema_12ebcd671256f01c78c2d44d3f886f8e31c2c321e4963a533c8f13e8fde79a2c":{"anyOf":[{"anyOf":[{"additionalProperties":true,"description":"`since` time is missing or incorrect.","properties":{"error":{"const":"ASSEMBLY_STATS_INVALID_TIME","type":"string"},"http_code":{"const":400,"type":"number"},"message":{"description":"Human-readable explanation of the error. Its wording can vary; use the `error` code when handling a specific failure.","type":"string","x-transloadit-description-id":"api2ErrorMessage"}},"required":["error"],"type":"object","x-transloadit-description-id":"api2ErrorAssemblyStatsInvalidTime"},{"additionalProperties":true,"description":"Must provide a specific `region`, or \"all\".","properties":{"error":{"const":"ASSEMBLY_STATS_MISSING_REGION","type":"string"},"http_code":{"const":400,"type":"number"},"message":{"description":"Human-readable explanation of the error. Its wording can vary; use the `error` code when handling a specific failure.","type":"string","x-transloadit-description-id":"api2ErrorMessage"}},"required":["error"],"type":"object","x-transloadit-description-id":"api2ErrorAssemblyStatsMissingRegion"}]},{"allOf":[{"$ref":"#/components/schemas/Schema_cb07bdaec8a57b18babcb0842531069c047ea76747de30cb3433ec3ab53763cb"}]}],"x-transloadit-schema-id":"sha256:12ebcd671256f01c78c2d44d3f886f8e31c2c321e4963a533c8f13e8fde79a2c"},"Schema_146734fd4a4c0227ab54a103609c97015ab510a50c0ec4eb47ec5b9d0f69f9cc":{"additionalProperties":false,"properties":{"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for an Auth Keys request.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"type":"object","x-transloadit-description-id":"authKeysAuth"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"}},"type":"object","x-transloadit-schema-id":"sha256:146734fd4a4c0227ab54a103609c97015ab510a50c0ec4eb47ec5b9d0f69f9cc"},"Schema_15464c9d28640e7bf8903ba6d26df07ca6adbb8f0503e291180fa8a4647ec8e5":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"additionalProperties":true,"properties":{"ac":{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},"af":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"an":{"$ref":"#/components/schemas/Schema_a8213ce4c995e2d44b094b3ea909eddf983764d183e2903635e64aa32732520a"},"ar":{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},"async":{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},"b":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"additionalProperties":false,"properties":{"a":{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},"v":{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"}},"type":"object"}]},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]}]},"b:a":{"$ref":"#/components/schemas/Schema_9512d12bb73438b337e679242bd743ae4b5856d07e71ede1ace50fad9b0b14a6"},"b:v":{"$ref":"#/components/schemas/Schema_9512d12bb73438b337e679242bd743ae4b5856d07e71ede1ace50fad9b0b14a6"},"bits_per_mb":{"$ref":"#/components/schemas/Schema_9512d12bb73438b337e679242bd743ae4b5856d07e71ede1ace50fad9b0b14a6"},"bt":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]}]},"bufsize":{"$ref":"#/components/schemas/Schema_9512d12bb73438b337e679242bd743ae4b5856d07e71ede1ace50fad9b0b14a6"},"c":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"c:a":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"c:v":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"codec":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"additionalProperties":false,"properties":{"a":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"v":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]}},"type":"object"}]},"codec:a":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"codec:v":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"coder":{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},"cpu-used":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"crf":{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},"deadline":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"f":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"filter:a":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"filter:v":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"filter_complex":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},{"additionalProperties":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"type":"object"}]},"flags":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"g":{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},"i_qfactor":{"$ref":"#/components/schemas/Schema_9512d12bb73438b337e679242bd743ae4b5856d07e71ede1ace50fad9b0b14a6"},"keyint_min":{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},"level":{"$ref":"#/components/schemas/Schema_9512d12bb73438b337e679242bd743ae4b5856d07e71ede1ace50fad9b0b14a6"},"level:v":{"$ref":"#/components/schemas/Schema_9512d12bb73438b337e679242bd743ae4b5856d07e71ede1ace50fad9b0b14a6"},"map":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},{"$ref":"#/components/schemas/Schema_bc9fbfc32e2939087e1b877c2b51ce63f08c8cdfdcf7adca01505a0498ab5691"}]},"maxrate":{"$ref":"#/components/schemas/Schema_9512d12bb73438b337e679242bd743ae4b5856d07e71ede1ace50fad9b0b14a6"},"me_range":{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},"movflags":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"overshoot-pct":{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},"partitions":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"pix_fmt":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"preset":{"$ref":"#/components/schemas/Schema_9512d12bb73438b337e679242bd743ae4b5856d07e71ede1ace50fad9b0b14a6"},"profile":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"profile:v":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["baseline","high","main","main10"],"type":"string"}]}]},"q:a":{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},"qcomp":{"$ref":"#/components/schemas/Schema_9512d12bb73438b337e679242bd743ae4b5856d07e71ede1ace50fad9b0b14a6"},"qdiff":{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},"qmax":{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},"qmin":{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},"qscale:a":{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},"qscale:v":{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},"r":{"anyOf":[{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]}]},{"type":"null"}]},"rc_eq":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"refs":{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},"row-mt":{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},"s":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"sc_threshold":{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},"shortest":{"anyOf":[{"$ref":"#/components/schemas/Schema_a8213ce4c995e2d44b094b3ea909eddf983764d183e2903635e64aa32732520a"},{"type":"null"}]},"ss":{"$ref":"#/components/schemas/Schema_9512d12bb73438b337e679242bd743ae4b5856d07e71ede1ace50fad9b0b14a6"},"svtav1-params":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"additionalProperties":false,"properties":{"enable-qm":{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},"fast-decode":{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},"film-grain-denoise":{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},"tune":{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"}},"type":"object"}]},"sws_flags":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"t":{"$ref":"#/components/schemas/Schema_9512d12bb73438b337e679242bd743ae4b5856d07e71ede1ace50fad9b0b14a6"},"threads":{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},"to":{"$ref":"#/components/schemas/Schema_9512d12bb73438b337e679242bd743ae4b5856d07e71ede1ace50fad9b0b14a6"},"transloaditffpreset":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":"empty","type":"string"}]},"trellis":{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},"undershoot-pct":{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},"vbr":{"$ref":"#/components/schemas/Schema_9512d12bb73438b337e679242bd743ae4b5856d07e71ede1ace50fad9b0b14a6"},"vendor":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"vf":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"vn":{"$ref":"#/components/schemas/Schema_a8213ce4c995e2d44b094b3ea909eddf983764d183e2903635e64aa32732520a"},"x264-params":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"x264opts":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"x265-params":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"additionalProperties":false,"properties":{"b-adapt":{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},"rc-lookahead":{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},"vbv-bufsize":{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},"vbv-maxrate":{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"}},"type":"object"}]}},"type":"object"}],"description":"\nA parameter object to be passed to FFmpeg. If a preset is used, the options specified are merged on top of the ones from the preset. For available options, see the [FFmpeg documentation](https://ffmpeg.org/ffmpeg-doc.html). Options specified here take precedence over the preset options.\n","x-transloadit-schema-id":"sha256:15464c9d28640e7bf8903ba6d26df07ca6adbb8f0503e291180fa8a4647ec8e5"},"Schema_1866cd4f41bfae6407385f271b41fb4a50547222f99d79fbc854e92054beaff1":{"description":"Workspace slug that owns this stored result. Authenticate for this Workspace when importing or managing it.","minLength":1,"type":"string","x-transloadit-description-id":"assemblyStatusFileWorkspace","x-transloadit-schema-id":"sha256:1866cd4f41bfae6407385f271b41fb4a50547222f99d79fbc854e92054beaff1"},"Schema_19320f624651bd3d89969ac7dee179d65c506ec5417870772e7486f7753c1d74":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"$ref":"#/components/schemas/Schema_ac7d8464107dcaba338b4b8bdc2db3b974790cf626fa64c3e036a3c7fd9cab49"}],"x-transloadit-schema-id":"sha256:19320f624651bd3d89969ac7dee179d65c506ec5417870772e7486f7753c1d74"},"Schema_195d641292f62478b58c9929515ea3e42f50eac7164939ca37c10d89f501dbbb":{"additionalProperties":false,"properties":{"count":{"minimum":0,"type":"integer"},"items":{"items":{"additionalProperties":false,"properties":{"account_id":{"type":["null","string"]},"assembly_status_expiry":{"type":["null","string"]},"builtin_version":{"type":"string"},"content":{"anyOf":[{"additionalProperties":{},"type":"object"},{"items":{},"type":"array"},{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"}]},"created":{"$ref":"#/components/schemas/Schema_4fb18cd0e41d8e4db90e4e8fa29e9666244b58c14a528d3182cb726ec6bfb68f"},"deleted":{"type":"null"},"description":{"type":"string"},"encryption_version":{"anyOf":[{"type":"integer"},{"type":"null"}]},"id":{"anyOf":[{"maxLength":32,"pattern":"^[\\x00-\\x7F]*$","type":"string"},{"maxLength":32,"pattern":"^builtin\\/[a-z0-9-]+(?:@[0-9a-z.-]+)?$","type":"string"}]},"json":{"type":"null"},"last_used":{"$ref":"#/components/schemas/Schema_4fb18cd0e41d8e4db90e4e8fa29e9666244b58c14a528d3182cb726ec6bfb68f"},"modified":{"$ref":"#/components/schemas/Schema_4fb18cd0e41d8e4db90e4e8fa29e9666244b58c14a528d3182cb726ec6bfb68f"},"name":{"maxLength":255,"minLength":1,"type":"string"},"require_signature_auth":{"enum":[0,1],"type":"number"},"transcoding_result_expiry":{"type":["null","string"]}},"required":["content"],"type":"object"},"type":"array"}},"required":["count","items"],"type":"object","x-transloadit-schema-id":"sha256:195d641292f62478b58c9929515ea3e42f50eac7164939ca37c10d89f501dbbb"},"Schema_19e55e422287120ed717d615250db33b653e07cd6844ece913cfef3503377cc2":{"description":"An array of files uploaded for this Assembly. For more information, see the [metadata\ndocs](/docs/api/metadata/).","items":{"anyOf":[{"additionalProperties":true,"properties":{"as":{"anyOf":[{"anyOf":[{"type":"string"},{"items":{"type":"string"},"type":"array"}]},{"type":"null"}]},"asset_id":{"$ref":"#/components/schemas/Schema_ea4fbaa6b619d555b449bce20f35f0d31fdbffec9451bb442e1f8fafe5d53aa4"},"asset_version":{"description":"Numeric revision of the stored asset. Use `version_id`, not this number, to select exact retained bytes.","type":"number","x-transloadit-description-id":"assemblyStatusFileAssetVersion"},"basename":{"description":"The name of the file without the extension.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusFileBasename"},"cost":{"anyOf":[{"type":"number"},{"type":"null"}]},"exec_time":{"type":"number"},"ext":{"$ref":"#/components/schemas/Schema_20714a1e88ff0ab94e9cc51f51d49cf13c83b2aff23f6f8cf7cb83bbee003d89"},"field":{"description":"The name of the form field used to submit this file.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusFileField"},"from_batch_import":{"type":"boolean"},"has_alpha":{"description":"Whether this stored image version has an alpha channel, when known.","type":"boolean","x-transloadit-description-id":"assemblyStatusFileHasAlpha"},"id":{"description":"A random and unique ID used internally by Transloadit to track the file.","type":"string","x-transloadit-description-id":"assemblyStatusFileId"},"import_url":{"type":"string"},"is_temp_url":{"type":"boolean"},"is_tus_file":{"type":"boolean"},"md5hash":{"type":["null","string"]},"meta":{"$ref":"#/components/schemas/Schema_2a0dea4e10f4e4eb697e105cc7f050126a0470319c94d96096994d2ee31b6d71"},"mime":{"description":"The determined MIME type for this file.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusFileMime"},"name":{"$ref":"#/components/schemas/Schema_cf34f340bc7bf6960489f12206fdbc8accd247b62ebb50a691e7366d14e1641a"},"original_basename":{"type":["null","string"]},"original_id":{"$ref":"#/components/schemas/Schema_82b82f844a9d0f4274a6d334e8aba4f914533926796eb96a51dcba18915e4a8e"},"original_md5hash":{"type":["null","string"]},"original_name":{"type":["null","string"]},"original_path":{"type":"string"},"queue":{"type":["null","string"]},"queue_time":{"type":"number"},"sha256":{"description":"Lowercase SHA-256 checksum of the stored bytes, when available.","pattern":"^[a-f0-9]{64}$","type":"string","x-transloadit-description-id":"assemblyStatusFileSha256"},"size":{"description":"The size of the file, in bytes.","type":"number","x-transloadit-description-id":"assemblyStatusFileSize"},"ssl_url":{"type":["null","string"]},"thumbhash":{"$ref":"#/components/schemas/Schema_07e3c7f49387418d6c2cde66ece62087468146d49408a766b5866535f24bcbf1"},"tus_upload_url":{"type":["null","string"]},"type":{"$ref":"#/components/schemas/Schema_eba2b8ae2c68e14f5f8503411ddbf6762207bcdf4d42d8ea33764d7202e26386"},"url":{"$ref":"#/components/schemas/Schema_ef0161cd21eec2fe3d980b6a024a464fd5ba8da86e5eaf9f91bbc29f68545e3f"},"user_meta":{"additionalProperties":{},"type":"object"},"version_id":{"$ref":"#/components/schemas/Schema_76209e57578923a608782b4d21f58198393f30d2e11f67fd09fc8f84977ed260"},"workspace":{"$ref":"#/components/schemas/Schema_1866cd4f41bfae6407385f271b41fb4a50547222f99d79fbc854e92054beaff1"}},"required":["basename","ext","field","id","mime","name","original_id","size","type","url"],"type":"object"},{"additionalProperties":true,"properties":{"as":{"anyOf":[{"anyOf":[{"type":"string"},{"items":{"type":"string"},"type":"array"}]},{"type":"null"}]},"asset_id":{"$ref":"#/components/schemas/Schema_ea4fbaa6b619d555b449bce20f35f0d31fdbffec9451bb442e1f8fafe5d53aa4"},"asset_version":{"description":"Numeric revision of the stored asset. Use `version_id`, not this number, to select exact retained bytes.","type":"number","x-transloadit-description-id":"assemblyStatusFileAssetVersion"},"basename":{"description":"The name of the file without the extension.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusFileBasename"},"cost":{"anyOf":[{"type":"number"},{"type":"null"}]},"exec_time":{"type":"number"},"ext":{"$ref":"#/components/schemas/Schema_20714a1e88ff0ab94e9cc51f51d49cf13c83b2aff23f6f8cf7cb83bbee003d89"},"field":{"description":"The name of the form field used to submit this file.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusFileField"},"from_batch_import":{"type":"boolean"},"has_alpha":{"description":"Whether this stored image version has an alpha channel, when known.","type":"boolean","x-transloadit-description-id":"assemblyStatusFileHasAlpha"},"id":{"not":{}},"import_url":{"type":"string"},"is_temp_url":{"type":"boolean"},"is_tus_file":{"type":"boolean"},"md5hash":{"type":["null","string"]},"meta":{"$ref":"#/components/schemas/Schema_2a0dea4e10f4e4eb697e105cc7f050126a0470319c94d96096994d2ee31b6d71"},"mime":{"description":"The determined MIME type for this file.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusFileMime"},"name":{"$ref":"#/components/schemas/Schema_cf34f340bc7bf6960489f12206fdbc8accd247b62ebb50a691e7366d14e1641a"},"original_basename":{"type":["null","string"]},"original_id":{"$ref":"#/components/schemas/Schema_82b82f844a9d0f4274a6d334e8aba4f914533926796eb96a51dcba18915e4a8e"},"original_md5hash":{"type":["null","string"]},"original_name":{"type":["null","string"]},"original_path":{"type":"string"},"queue":{"type":["null","string"]},"queue_time":{"type":"number"},"sha256":{"description":"Lowercase SHA-256 checksum of the stored bytes, when available.","pattern":"^[a-f0-9]{64}$","type":"string","x-transloadit-description-id":"assemblyStatusFileSha256"},"size":{"description":"The size of the file, in bytes.","type":"number","x-transloadit-description-id":"assemblyStatusFileSize"},"ssl_url":{"type":["null","string"]},"thumbhash":{"$ref":"#/components/schemas/Schema_07e3c7f49387418d6c2cde66ece62087468146d49408a766b5866535f24bcbf1"},"tus_upload_url":{"type":["null","string"]},"type":{"$ref":"#/components/schemas/Schema_eba2b8ae2c68e14f5f8503411ddbf6762207bcdf4d42d8ea33764d7202e26386"},"url":{"$ref":"#/components/schemas/Schema_ef0161cd21eec2fe3d980b6a024a464fd5ba8da86e5eaf9f91bbc29f68545e3f"},"user_meta":{"additionalProperties":{},"type":"object"},"version_id":{"$ref":"#/components/schemas/Schema_76209e57578923a608782b4d21f58198393f30d2e11f67fd09fc8f84977ed260"},"workspace":{"$ref":"#/components/schemas/Schema_1866cd4f41bfae6407385f271b41fb4a50547222f99d79fbc854e92054beaff1"}},"required":["original_id"],"type":"object"}]},"type":"array","x-transloadit-description-id":"assemblyStatusResponseUploads","x-transloadit-schema-id":"sha256:19e55e422287120ed717d615250db33b653e07cd6844ece913cfef3503377cc2"},"Schema_1adc8fb22e78059aab386774d662e8df48ee3b04618a700b5c57c977233c2da2":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":0,"type":"number"}]},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":90,"type":"number"}]},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":180,"type":"number"}]},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":270,"type":"number"}]},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":360,"type":"number"}]},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":false,"type":"boolean"}]}],"description":"\nForces the video to be rotated by the specified degree integer. Currently, only multiples of `90` are supported. We automatically correct the orientation of many videos when the orientation is provided by the camera. This option is only useful for videos requiring rotation because it was not detected by the camera. If you set `rotate` to `false` no rotation is performed, even if the metadata contains such instructions.\n","x-transloadit-schema-id":"sha256:1adc8fb22e78059aab386774d662e8df48ee3b04618a700b5c57c977233c2da2"},"Schema_1e0026a0e9b6cc84fd08e232a36b1ed9c086865a5b9b809d8253d69b6edd78a9":{"description":"Indicates an [error](/docs/api/response-codes/#error-codes) status. This key is only present if\nthe Assembly failed. New error codes may be added. Handle unrecognized codes as failures and preserve their values for programmatic inspection.","not":{},"x-transloadit-description-id":"assemblyStatusResponseError","x-transloadit-schema-id":"sha256:1e0026a0e9b6cc84fd08e232a36b1ed9c086865a5b9b809d8253d69b6edd78a9"},"Schema_1e8b1786bbc51354e572d21412b76290b2a7beedbdf23cad24b20c05b60fffc6":{"additionalProperties":false,"properties":{"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for an Auth Keys request.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"required":["expires","key"],"type":"object","x-transloadit-description-id":"authKeysAuth"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"}},"required":["auth"],"type":"object","x-transloadit-schema-id":"sha256:1e8b1786bbc51354e572d21412b76290b2a7beedbdf23cad24b20c05b60fffc6"},"Schema_1edc8e081cc6cbe0dbb12b6a2cdd89633f84d90d3db25afbcc459d44163462cb":{"additionalProperties":true,"description":"Normalized lowercase headers for a canonical tus HEAD request.","properties":{"tus-resumable":{"const":"1.0.0","description":"The negotiated tus version.","type":"string","x-transloadit-description-id":"tusVersion"}},"required":["tus-resumable"],"type":"object","x-transloadit-description-id":"tusHeadRequestHeaders","x-transloadit-schema-id":"sha256:1edc8e081cc6cbe0dbb12b6a2cdd89633f84d90d3db25afbcc459d44163462cb"},"Schema_1f5747f817d177d1a6318f567b28020a1c25097714b44829504283838cf33b39":{"anyOf":[{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":1,"type":"integer"}]},{"type":"null"}],"description":"\nHeight of the new video, in pixels.\n\nIf the value is not specified and the `preset` parameter is available, the `preset`'s [supplied height](/docs/presets/video/) will be implemented.\n","x-transloadit-schema-id":"sha256:1f5747f817d177d1a6318f567b28020a1c25097714b44829504283838cf33b39"},"Schema_20714a1e88ff0ab94e9cc51f51d49cf13c83b2aff23f6f8cf7cb83bbee003d89":{"description":"The extension of the file. May be `null` when an extension has not been determined, or an empty string for a name without an extension.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusFileExt","x-transloadit-schema-id":"sha256:20714a1e88ff0ab94e9cc51f51d49cf13c83b2aff23f6f8cf7cb83bbee003d89"},"Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4":{"anyOf":[{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]},{"additionalProperties":{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]},"type":"object"}],"description":"\nControls whether Assembly Variables are interpolated for individual instruction fields.\n\nBy default, most Robot instruction fields interpolate Assembly Variables. Set this to `false` to treat every instruction field as literal text, or set an individual field path to `false` to treat only that field as literal text. For Robot-specific fields that are literal by default, set this to `true` or set that field path to `true` to opt back into interpolation.\n\nUse field names such as `path`, or dotted paths such as `ffmpeg.vf` for nested objects.\n","x-transloadit-schema-id":"sha256:210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"Schema_221f591ba5aa2bd8b2234b296a6f47ecfadad32831f932564981de37ddbb8d64":{"anyOf":[{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"items":{"anyOf":[{"type":"string"},{"type":"number"}]},"type":"array"}]},{"type":"null"}],"description":"The date and time at which the media was recorded. A single valid string timestamp is normalized to `YYYY/MM/DD HH:MM:SS`. When a time zone is present, it is converted to UTC/GMT and ends in `GMT`. Unparseable string timestamps become `null`. Numeric timestamps and repeated date-tag lists keep their original values.","x-transloadit-description-id":"assemblyStatusMetaDateRecorded","x-transloadit-schema-id":"sha256:221f591ba5aa2bd8b2234b296a6f47ecfadad32831f932564981de37ddbb8d64"},"Schema_25031df86c9f90b79f3e4586592aeb1b10f4a964e4f7dc08ed88b5241225eb69":{"additionalProperties":true,"properties":{"auth_key":{"additionalProperties":false,"properties":{"auth_key":{"anyOf":[{"maxLength":64,"pattern":"^[\u0000-퟿-￿]*$","type":"string"},{"type":"null"}]},"can_show_auth_secret":{"type":"boolean"},"created":{"anyOf":[{"$ref":"#/components/schemas/Schema_4e26553b40ceb7f4fccba1cb4f658b1497c18e9b47d825e006083381740d4576"},{"type":"null"}],"description":"Time the Auth Key was created, as an ISO 8601 timestamp, or null when no creation timestamp is recorded.","x-transloadit-description-id":"authKeyCreated"},"description":{"maxLength":255,"pattern":"^[\u0000-퟿-￿]*$","type":"string"},"id":{"type":"string"},"is_active":{"type":"boolean"},"is_allowed_for_smartcdn":{"type":"boolean"},"last_used":{"anyOf":[{"$ref":"#/components/schemas/Schema_4e26553b40ceb7f4fccba1cb4f658b1497c18e9b47d825e006083381740d4576"},{"type":"null"}],"description":"Approximate last-use time as an ISO 8601 timestamp, or null when no timestamp has been recorded. Usage is tracked asynchronously and persisted in batches, so this value may lag behind requests. It is not an exact audit timestamp, and null does not prove the key has never been used.","x-transloadit-description-id":"authKeyLastUsed"},"modified":{"anyOf":[{"$ref":"#/components/schemas/Schema_4e26553b40ceb7f4fccba1cb4f658b1497c18e9b47d825e006083381740d4576"},{"type":"null"}],"description":"Time the Auth Key settings were last updated, as an ISO 8601 timestamp, or null when no modification timestamp is recorded. Usage tracking is reported separately in `last_used`.","x-transloadit-description-id":"authKeyModified"},"scope":{"anyOf":[{"maxLength":512,"pattern":"^[\u0000-퟿-￿]*$","type":"string"},{"type":"null"}]},"signature_algo":{"type":["null","string"]}},"required":["auth_key","can_show_auth_secret","created","description","id","is_active","is_allowed_for_smartcdn","last_used","modified","scope","signature_algo"],"type":"object"},"message":{"minLength":1,"type":"string"},"ok":{"const":"AUTH_KEY_UPDATED","type":"string"}},"required":["auth_key","message","ok"],"type":"object","x-transloadit-schema-id":"sha256:25031df86c9f90b79f3e4586592aeb1b10f4a964e4f7dc08ed88b5241225eb69"},"Schema_25236cdbef40391d3c1398240835c11c3a6eb2794a27384c226f4c36b04fe3ac":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"default":"","description":"\nThe prefix used for the naming. For example, a prefix of `\"segment_\"` would produce files named `\"segment_0.ts\"`, `\"segment_1.ts\"` and so on. This is optional, and defaults to the base name of the input file. Also see the related `segment_name` parameter.\n","x-transloadit-schema-id":"sha256:25236cdbef40391d3c1398240835c11c3a6eb2794a27384c226f4c36b04fe3ac"},"Schema_271f26d115904a7d08f7ffbe09699208ce0db6b05b8f50edcadeca580d188099":{"additionalProperties":true,"description":"OAuth 2.0 token request form for the client-credentials, authorization-code and refresh-token grants.","properties":{"aud":{"description":"Optional audience value for `client_credentials`. If omitted, the deployment’s configured default is used (`api2` unless overridden). The other grants derive the audience from `resource`.","type":"string","x-transloadit-description-id":"bearerTokenAudience"},"client_assertion":{"description":"A JWT signed with one of the client’s published keys (RFC 7523), from clients whose metadata allows `private_key_jwt`. Once a grant’s token request carried one, every later request for that grant must too. Its `iss` and `sub` are the client ID, its `aud` this token endpoint, and it expires within five minutes; each `jti` is accepted once.","type":"string","x-transloadit-description-id":"bearerTokenClientAssertion"},"client_assertion_type":{"description":"Always `urn:ietf:params:oauth:client-assertion-type:jwt-bearer` when `client_assertion` is sent.","type":"string","x-transloadit-description-id":"bearerTokenClientAssertionType"},"client_id":{"description":"The client identifier from dynamic registration or the HTTPS URL of the client’s metadata document. Required for `authorization_code` and `refresh_token`, unless a `client_assertion` names the client.","type":"string","x-transloadit-description-id":"bearerTokenClientId"},"code":{"description":"The one-time authorization code delivered to the client’s redirect URI after consent. Required for `authorization_code`.","type":"string","x-transloadit-description-id":"bearerTokenAuthorizationCode"},"code_verifier":{"description":"The PKCE code verifier whose SHA-256 digest was sent as `code_challenge` when authorization started. Required for `authorization_code`.","type":"string","x-transloadit-description-id":"bearerTokenCodeVerifier"},"grant_type":{"description":"Which OAuth 2.0 grant to run. `client_credentials` exchanges the Auth Key credentials supplied through HTTP Basic authentication, `authorization_code` redeems a code issued after consent in the Console together with its PKCE verifier, and `refresh_token` rotates a refresh token. The two public-client grants send no HTTP Basic credentials.","enum":["authorization_code","client_credentials","refresh_token"],"type":"string","x-transloadit-description-id":"bearerTokenGrantType"},"redirect_uri":{"description":"The redirect URI used in the authorization request. Required for `authorization_code`.","type":"string","x-transloadit-description-id":"bearerTokenRedirectUri"},"refresh_token":{"description":"The refresh token to rotate. Required for `refresh_token`; the presented token stops working once a new pair is issued.","type":"string","x-transloadit-description-id":"bearerTokenRefreshToken"},"resource":{"description":"The protected resource the token is for: the hosted MCP endpoint (`aud=mcp`) or the API origin itself (`aud=api2`). When omitted, the resource the authorization code or refresh token was issued for is used; it must match otherwise.","type":"string","x-transloadit-description-id":"bearerTokenResource"},"scope":{"description":"Optional, space- or comma-separated list of scopes for `client_credentials`. If omitted, the token inherits all scopes granted to your Auth Key. The other grants keep the scopes granted at consent.","type":"string","x-transloadit-description-id":"bearerTokenScopes"}},"required":["grant_type"],"type":"object","x-transloadit-description-id":"bearerTokenRequest","x-transloadit-schema-id":"sha256:271f26d115904a7d08f7ffbe09699208ce0db6b05b8f50edcadeca580d188099"},"Schema_283526d231caa2a4d3f9adb8c45165a6860fca14025781fc0453f5ee4ef15f06":{"additionalProperties":true,"description":"Normalized lowercase tus OPTIONS response headers.","properties":{"tus-extension":{"const":"creation,creation-with-upload,termination,concatenation,creation-defer-length","type":"string"},"tus-max-size":{"description":"A canonical unsigned base-10 byte count in the signed 64-bit range, without zero padding or a plus sign.","pattern":"^(?:0|[1-9][0-9]{0,17}|[1-8][0-9]{18}|9[0-1][0-9]{17}|92[0-1][0-9]{16}|922[0-2][0-9]{15}|9223[0-2][0-9]{14}|92233[0-6][0-9]{13}|922337[0-1][0-9]{12}|92233720[0-2][0-9]{10}|922337203[0-5][0-9]{9}|9223372036[0-7][0-9]{8}|92233720368[0-4][0-9]{7}|922337203685[0-3][0-9]{6}|9223372036854[0-6][0-9]{5}|92233720368547[0-6][0-9]{4}|922337203685477[0-4][0-9]{3}|9223372036854775[0-7][0-9]{2}|922337203685477580[0-6]|9223372036854775807)$","type":"string","x-transloadit-description-id":"tusCanonicalByteCount"},"tus-resumable":{"const":"1.0.0","type":"string"},"tus-version":{"const":"1.0.0","type":"string"},"x-content-type-options":{"const":"nosniff","type":"string"}},"required":["tus-extension","tus-max-size","tus-resumable","tus-version","x-content-type-options"],"type":"object","x-transloadit-description-id":"tusOptionsResponseHeaders","x-transloadit-schema-id":"sha256:283526d231caa2a4d3f9adb8c45165a6860fca14025781fc0453f5ee4ef15f06"},"Schema_28e9d3e97c829700b536a22ac3e94af53ba589a7f0483ae66053586b445e3e67":{"anyOf":[{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"items":{"anyOf":[{"type":"string"},{"type":"number"}]},"type":"array"}]},{"type":"null"}],"description":"The creation timestamp reported by the media metadata, when available.","x-transloadit-description-id":"assemblyStatusMetaDateFileCreated","x-transloadit-schema-id":"sha256:28e9d3e97c829700b536a22ac3e94af53ba589a7f0483ae66053586b445e3e67"},"Schema_2971a82759cfb5a2f1a06240f9c836a156489d7a9f2db4cb0adef641c51a002a":{"anyOf":[{"additionalProperties":true,"properties":{"experimental_content":{},"experimental_providerMetadata":{},"isError":{},"output":{"$ref":"#/components/schemas/Schema_c28fb7053c3b31723186cb9819a9a6b1b8dbe6af79adcbcb50267bfc1acd0e10"},"providerOptions":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"result":{},"toolCallId":{"type":"string"},"toolName":{"type":"string"},"type":{"const":"tool-result","type":"string"}},"required":["providerOptions","toolCallId","toolName","type"],"type":"object"},{"additionalProperties":true,"properties":{"experimental_content":{},"experimental_providerMetadata":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"isError":{},"output":{"$ref":"#/components/schemas/Schema_c28fb7053c3b31723186cb9819a9a6b1b8dbe6af79adcbcb50267bfc1acd0e10"},"providerOptions":{"not":{}},"result":{},"toolCallId":{"type":"string"},"toolName":{"type":"string"},"type":{"const":"tool-result","type":"string"}},"required":["toolCallId","toolName","type"],"type":"object"},{"additionalProperties":true,"properties":{"experimental_content":{},"experimental_providerMetadata":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"isError":{},"output":{"$ref":"#/components/schemas/Schema_c28fb7053c3b31723186cb9819a9a6b1b8dbe6af79adcbcb50267bfc1acd0e10"},"providerOptions":{"type":"null"},"result":{},"toolCallId":{"type":"string"},"toolName":{"type":"string"},"type":{"const":"tool-result","type":"string"}},"required":["providerOptions","toolCallId","toolName","type"],"type":"object"}],"x-transloadit-schema-id":"sha256:2971a82759cfb5a2f1a06240f9c836a156489d7a9f2db4cb0adef641c51a002a"},"Schema_29b03e33e094714044bf936cf358f56ce8a49e8051c5e450b83befe9961c4ace":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},{"$ref":"#/components/schemas/Schema_bc9fbfc32e2939087e1b877c2b51ce63f08c8cdfdcf7adca01505a0498ab5691"}],"description":"\nThe path in your bucket to the specific file or directory. If the path points to a file, only this file will be imported. For example: `images/avatar.jpg`.\n\nIf it points to a directory, indicated by a trailing slash (`/`), then all files that are direct descendants of this directory will be imported. For example: `images/`.\n\nDirectories are **not** imported recursively. If you want to import files from subdirectories and sub-subdirectories, enable the `recursive` parameter.\n\nIf you want to import all files from the root directory, please use `/` as the value here. In this case, make sure all your objects belong to a path. If you have objects in the root of your bucket that aren't prefixed with `/`, you'll receive an error: `A client error (NoSuchKey) occurred when calling the GetObject operation: The specified key does not exist.`\n\nYou can also use an array of path strings here to import multiple paths in the same <dfn>Robot</dfn>'s <dfn>Step</dfn>.\n","x-transloadit-schema-id":"sha256:29b03e33e094714044bf936cf358f56ce8a49e8051c5e450b83befe9961c4ace"},"Schema_29f7c9a77315ab00512f8f2e19c7860c092ec6442ad4516ee9035d111f1a3f48":{"additionalProperties":false,"properties":{"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for a Billing request.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"type":"object","x-transloadit-description-id":"billingAuth"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"}},"type":"object","x-transloadit-schema-id":"sha256:29f7c9a77315ab00512f8f2e19c7860c092ec6442ad4516ee9035d111f1a3f48"},"Schema_2a04346246228d68b23baff4fd26615a3dabf4b0b635cea5e60d9c76cd4a0543":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nSetting this to `true` will enable importing files from subdirectories and sub-subdirectories (etc.) of the given path.\n\nPlease use the pagination parameters `page_number` and `files_per_page` wisely here.\n","x-transloadit-schema-id":"sha256:2a04346246228d68b23baff4fd26615a3dabf4b0b635cea5e60d9c76cd4a0543"},"Schema_2a0dea4e10f4e4eb697e105cc7f050126a0470319c94d96096994d2ee31b6d71":{"additionalProperties":true,"description":"An object containing additional metadata extracted from the file, as shown below. Repeated date tags can be returned as lists of their original values. Check the value’s type before using it as a single timestamp.","properties":{"album":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"type":"null"}]},"aperture":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The aperture setting for this image, such as `5.7`.","x-transloadit-description-id":"assemblyStatusMetaAperture"},"archive_directory":{"type":["null","string"]},"artist":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"type":"null"}],"description":"Many applications that produce audio write additional information into the audio file such as\n`artist`, `year`, `album`, `genre`.","x-transloadit-description-id":"assemblyStatusMetaArtist"},"aspect_ratio":{"anyOf":[{"type":"number"},{"type":"string"},{"type":"null"}],"description":"The aspect ratio of the image, which is its width divided by its height. Will be 0 if for some\nreason the image height is 0.","x-transloadit-description-id":"assemblyStatusMetaAspectRatio"},"audio_bitrate":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The audio bit rate in bits per second across all channels, such as `128000`.","x-transloadit-description-id":"assemblyStatusMetaAudioBitrate"},"audio_channel_layout":{"type":["null","string"]},"audio_channels":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The number of audio channels, typically `2` for stereo.","x-transloadit-description-id":"assemblyStatusMetaAudioChannels"},"audio_codec":{"description":"The audio codec, such as `\"faad\"`. See the [supported audio codecs](/docs/supported-formats/).","type":["null","string"],"x-transloadit-description-id":"assemblyStatusMetaAudioCodec"},"audio_profile":{"type":["null","string"]},"audio_sample_format":{"type":["null","string"]},"audio_samplerate":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The audio sample rate in hertz, such as `44100`.","x-transloadit-description-id":"assemblyStatusMetaAudioSamplerate"},"author":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"type":"null"}],"description":"The author that took the image. Some cameras populate this field as opposed to `creator`.","x-transloadit-description-id":"assemblyStatusMetaAuthor"},"average_color":{"$ref":"#/components/schemas/Schema_999c9f288a40aadd242801a55205a4b03aee8015882cc2ddfb32f6c82d917cb9"},"band":{"type":["null","string"]},"bandwidth":{"anyOf":[{"type":"number"},{"type":"null"}]},"beats_per_minute":{"anyOf":[{"type":"number"},{"type":"null"}]},"bit_depth":{"anyOf":[{"type":"number"},{"type":"null"}]},"character_count":{"anyOf":[{"type":"number"},{"type":"null"}]},"character_count_with_spaces":{"anyOf":[{"type":"number"},{"type":"null"}]},"city":{"description":"The city in which this image was taken, such as `\"Berlin\"`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusMetaCity"},"closed_captions":{"type":["boolean","null"]},"cmd":{"anyOf":[{"type":"string"},{"items":{"anyOf":[{"type":"string"},{"type":"number"}]},"type":"array"}]},"codecs":{"type":["null","string"]},"colorprimaries":{"type":["null","string"]},"colorspace":{"$ref":"#/components/schemas/Schema_59548aeadc018a947ea5f8baf2a1739106845dba53418f042e990d0da44a8dfc"},"colortransfer":{"type":["null","string"]},"comment":{"type":["null","string"]},"copyright":{"$ref":"#/components/schemas/Schema_9c58bf823764e09502b1738a56fe64b3da52850f52ccd3f76e632a0f835ad405"},"copyright_notice":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"type":"null"}],"description":"The copyright notice metadata field.","x-transloadit-description-id":"assemblyStatusMetaCopyrightNotice"},"country":{"description":"The country in which this image was taken, such as `\"Germany\"`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusMetaCountry"},"country_code":{"description":"The country code of the country in which this image was taken, such as `\"de\"`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusMetaCountryCode"},"create_date":{"anyOf":[{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"items":{"anyOf":[{"type":"string"},{"type":"number"}]},"type":"array"}]},{"type":"null"}]},"creator":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"},{"items":{"type":"string"},"type":"array"}]},{"type":"null"}],"description":"The creator that took the image.","x-transloadit-description-id":"assemblyStatusMetaCreator"},"date_file_created":{"$ref":"#/components/schemas/Schema_28e9d3e97c829700b536a22ac3e94af53ba589a7f0483ae66053586b445e3e67"},"date_file_modified":{"$ref":"#/components/schemas/Schema_e84930fb947da4a6250522f526ec7fb3a9f2af15d6f5e9387deb1ef4464760c5"},"date_recorded":{"$ref":"#/components/schemas/Schema_221f591ba5aa2bd8b2234b296a6f47ecfadad32831f932564981de37ddbb8d64"},"description":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"type":"null"}],"description":"A description of this image, such as `\"This tree is very old.\"`.","x-transloadit-description-id":"assemblyStatusMetaDescription"},"descriptions":{"items":{"anyOf":[{"type":"string"},{"additionalProperties":true,"properties":{"confidence":{"type":"number"},"name":{"type":"string"}},"required":["confidence","name"],"type":"object"}]},"type":"array"},"device_name":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"type":"null"}],"description":"The name of the device that recorded the media, such as `\"iPhone 3GS\"`.","x-transloadit-description-id":"assemblyStatusMetaDeviceName"},"device_software":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"type":"null"}],"description":"The software version of the device that recorded the media, such as `\"3.1.2\"`.","x-transloadit-description-id":"assemblyStatusMetaDeviceSoftware"},"device_vendor":{"description":"The manufacturer of the device that recorded the media, such as `\"Apple\"`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusMetaDeviceVendor"},"disc":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"type":"null"}]},"dominant_colors":{"$ref":"#/components/schemas/Schema_72ccb0a44b1e565ea5e2fe4c78d74b1ff0ed2e77b02c8ea011f4822b52e7bd1c"},"duration":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The length of the audio file in seconds.","x-transloadit-description-id":"assemblyStatusMetaDuration"},"encoder":{"type":["null","string"]},"encoding_level":{"type":["null","string"]},"encoding_profile":{"type":["null","string"]},"ends_at":{"type":["null","string"]},"exitCode":{"anyOf":[{"type":"number"},{"type":"null"}]},"exitSignal":{"type":["null","string"]},"exposure_compensation":{"anyOf":[{"anyOf":[{"type":"number"},{"type":"string"}]},{"type":"null"}],"description":"The exposure compensation for this image, such as `\"+4/3\"`.","x-transloadit-description-id":"assemblyStatusMetaExposureCompensation"},"exposure_mode":{"description":"The exposure mode for this image, such as `\"Auto\"`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusMetaExposureMode"},"exposure_time":{"anyOf":[{"anyOf":[{"type":"number"},{"type":"string"}]},{"type":"null"}],"description":"The exposure time for this image, such as `\"1/30\"`.","x-transloadit-description-id":"assemblyStatusMetaExposureTime"},"f_number":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The f-number for this image, such as `5.6`.","x-transloadit-description-id":"assemblyStatusMetaFNumber"},"faces":{"$ref":"#/components/schemas/Schema_8487d0e12453112ed39e75778476ded0f3ed8d298232989948a2717cd876b510"},"field_order":{"$ref":"#/components/schemas/Schema_c70424852e520d7cdce5aae55902166f4b14ea27ea9c9ba9a5386e9fa82cc1d6"},"flash":{"description":"The flash settings for this image, such as `\"Off, Did not fire\"`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusMetaFlash"},"focal_length":{"description":"The focal length for this image, such as `\"55.0 mm\"`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusMetaFocalLength"},"frame_count":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The number of frames in an animated GIF file. This is `1` by default for all other image types.","x-transloadit-description-id":"assemblyStatusMetaFrameCount"},"framerate":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The frame rate of the video, such as `29.5`.","x-transloadit-description-id":"assemblyStatusMetaFramerate"},"genre":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"type":"null"}]},"has_alpha":{"description":"Whether the original image has an alpha channel, including fully opaque alpha-channel images. Returned together with thumbhash; absence means unknown.","type":"boolean","x-transloadit-description-id":"assemblyStatusMetaHasAlpha"},"has_alpha_channel":{"type":["boolean","null"]},"has_artwork":{"type":["boolean","null"]},"has_clipping_path":{"description":"Is `true` if the image contains a clipping path, `false` otherwise.","type":"boolean","x-transloadit-description-id":"assemblyStatusMetaHasClippingPath"},"has_transparency":{"$ref":"#/components/schemas/Schema_4fdf6ef1979b9cbe0906cc3ce47c7ed08a7edfc1a03e0d8fed2e57d8649ddaf1"},"height":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The height of the media in pixels.","x-transloadit-description-id":"assemblyStatusMetaHeight"},"interlace_detection":{"$ref":"#/components/schemas/Schema_49686d9490285d08562b73ccfe3d4dee8a00389586ed4b6122c24a4111c6c22d"},"interlaced":{"$ref":"#/components/schemas/Schema_fbf959fa885d3246a26d6969bd942cd608e858932256050cf4e1efb4ba5763ce"},"iso":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The ISO value for this image, such as `800`.","x-transloadit-description-id":"assemblyStatusMetaIso"},"keywords":{"$ref":"#/components/schemas/Schema_39173f453da53f30ce065784b2c78eb4a8ab20ab6257e736f3309b038272507f"},"latitude":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The latitude at which the media was recorded, such as `52.5374`.","x-transloadit-description-id":"assemblyStatusMetaLatitude"},"light_value":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The light value for this image, such as `6.9`.","x-transloadit-description-id":"assemblyStatusMetaLightValue"},"line_count":{"anyOf":[{"type":"number"},{"type":"null"}]},"location":{"description":"The location at which this image was taken, which is usually the street, such as `\"Zingster Str.\n32\"`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusMetaLocation"},"longitude":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The longitude at which the media was recorded, such as `13.4034`.","x-transloadit-description-id":"assemblyStatusMetaLongitude"},"lyrics":{"type":["null","string"]},"mean_volume":{"$ref":"#/components/schemas/Schema_2bddcc7bb0567b6ae92d65cc2888d8c51615a44366a5d51022f8dabcbc7130e8"},"metering_mode":{"description":"The metering mode for this image, such as `\"Multi-segment\"`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusMetaMeteringMode"},"modify_date":{"anyOf":[{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"items":{"anyOf":[{"type":"string"},{"type":"number"}]},"type":"array"}]},{"type":"null"}]},"num_audio_streams":{"anyOf":[{"type":"number"},{"type":"null"}]},"num_subtitles":{"anyOf":[{"type":"number"},{"type":"null"}]},"num_video_streams":{"anyOf":[{"type":"number"},{"type":"null"}]},"orientation":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"type":"null"}]},"overall_bitrate":{"anyOf":[{"type":"number"},{"type":"null"}]},"page_count":{"anyOf":[{"type":"number"},{"type":"null"}]},"page_size":{"type":["null","string"]},"paragraph_count":{"anyOf":[{"type":"number"},{"type":"null"}]},"performer":{"type":["null","string"]},"pixel_format":{"type":["null","string"]},"previousStep":{"type":"string"},"producer":{"type":["null","string"]},"reason":{"type":"string"},"recognized_text":{"$ref":"#/components/schemas/Schema_0862c00c4e0751b789b855a35c3ce6c8bf90839f7e0e0cfd9bd5654e297de97b"},"reference_count":{"anyOf":[{"type":"number"},{"type":"null"}]},"relative_path":{"type":["null","string"]},"resolution":{"type":["null","string"]},"rights":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"type":"null"}]},"rotation":{"anyOf":[{"type":"number"},{"type":"null"}]},"seekable":{"description":"Whether the format of the video supports seeking, such as `true`.","type":["boolean","null"],"x-transloadit-description-id":"assemblyStatusMetaSeekable"},"segment_index":{"anyOf":[{"type":"number"},{"type":"null"}]},"shutter_speed":{"anyOf":[{"anyOf":[{"type":"number"},{"type":"string"}]},{"type":"null"}],"description":"The shutter speed for this image, such as `\"1/32\"`.","x-transloadit-description-id":"assemblyStatusMetaShutterSpeed"},"starts_at":{"type":["null","string"]},"state":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"type":"null"}],"description":"The state in which this image was taken, such as `\"Berlin\"`.","x-transloadit-description-id":"assemblyStatusMetaState"},"stderr":{"type":"string"},"stdout":{"type":"string"},"step":{"type":"string"},"storage_url":{"type":"string"},"streams":{"anyOf":[{"additionalProperties":true,"properties":{"audio":{"items":{},"type":"array"},"subtitle":{"items":{},"type":"array"},"video":{"items":{},"type":"array"}},"type":"object"},{"type":"null"}]},"svgViewBoxHeight":{"anyOf":[{"type":"number"},{"type":"null"}]},"svgViewBoxWidth":{"anyOf":[{"type":"number"},{"type":"null"}]},"thumb_index":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The index of the current thumbnail starting at 0. This key is only present for results of\n[🤖/video/thumbs](/docs/robots/video-thumbs/).","x-transloadit-description-id":"assemblyStatusMetaThumbIndex"},"thumb_offset":{"$ref":"#/components/schemas/Schema_bc749a53a25fc1063924427ed7f3e031f7f91a7427f838180b47c745582d0e83"},"thumbhash":{"$ref":"#/components/schemas/Schema_0ea4eb8d6377702d52ca8099d657558fcd9648b5abd6568717b4d994ba4a6fca"},"time_base":{"type":["null","string"]},"title":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"type":"null"}],"description":"The title of this image, such as `\"Tree\"`.","x-transloadit-description-id":"assemblyStatusMetaTitle"},"track":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"type":"null"}]},"turbo":{"type":["boolean","null"]},"version_id":{"type":"string"},"video_bitrate":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The video bit rate of the video, such as `500000`.","x-transloadit-description-id":"assemblyStatusMetaVideoBitrate"},"video_codec":{"description":"The video codec of the video, such as `\"ffh264\"`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusMetaVideoCodec"},"white_balance":{"description":"The white balance setting for this image, such as `\"Manual\"`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusMetaWhiteBalance"},"width":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The width of the media in pixels. For video whose display ratio differs from its pixel ratio, this is the intended display width.","x-transloadit-description-id":"assemblyStatusMetaWidth"},"word_count":{"anyOf":[{"type":"number"},{"type":"null"}]},"xp_comment":{"type":["null","string"]},"xp_keywords":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"type":"null"}]},"xp_subject":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"type":"null"}]},"xp_title":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"type":"null"}]},"year":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"type":"null"}]}},"type":"object","x-transloadit-description-id":"assemblyStatusFileMeta","x-transloadit-schema-id":"sha256:2a0dea4e10f4e4eb697e105cc7f050126a0470319c94d96096994d2ee31b6d71"},"Schema_2aaf249ed4fed809982b89e0ca25f4dd95ec6582007e71d01e6dd3d4d0a85d65":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nPlease create your associated <dfn>Template Credentials</dfn> in your Transloadit account and use the name of your <dfn>Template Credentials</dfn> as this parameter's value. They will contain the values for your Backblaze Bucket Name, App Key ID, and App Key.\n\nTo create your credential information, head over to Backblaze, sign in to your account, and select \"Create a Bucket\". Save the name of your bucket, and click on the \"App Keys\" tab, scroll to the bottom of the page then select “Add a New Application Key”. Allow access to your recently created bucket, select  “Read and Write” as your type of access, and tick the “Allow List All Bucket Names” option.\n\nNow that everything is in place, create your key, and take note of the information you are given so you can input the information into your <dfn>Template Credentials</dfn>.\n\n⚠️ Your App Key will only be viewable once, so make sure you note this down.\n\nWhile we recommend to use <dfn>Template Credentials</dfn> at all times, some use cases demand dynamic credentials for which using <dfn>Template Credentials</dfn> is too unwieldy because of their static nature. If you have this requirement, feel free to use the following parameters instead: `\"bucket\"`, `\"app_key_id\"`, `\"app_key\"`.\n","x-transloadit-schema-id":"sha256:2aaf249ed4fed809982b89e0ca25f4dd95ec6582007e71d01e6dd3d4d0a85d65"},"Schema_2af3b38087bd992e9cae66535831de488ac05a86fd19619f5cfd998074675a28":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["v6","v7","v8"],"type":"string"}]},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^v?[5-8](\\.[0-9]+)?(\\.[0-9]+)?$","type":"string"}]}],"default":"v6.0.0","description":"\nSelects the FFmpeg stack version to use for encoding. We currently recommend using \"v7\". The exact versions \"v6.0.0\", \"v7.0.0\", and \"v8.0.0\" are legacy values that remain accepted for backward compatibility. Deprecated \"v5.x\" values are also accepted.\n","x-transloadit-schema-id":"sha256:2af3b38087bd992e9cae66535831de488ac05a86fd19619f5cfd998074675a28"},"Schema_2baf3c46554957a1961ce19c9163bb8f1be3ca9407cc9841b12bb1b0492bb047":{"additionalProperties":true,"properties":{"credential":{"additionalProperties":false,"properties":{"account_id":{"type":"string"},"content":{"anyOf":[{"additionalProperties":{},"type":"object"},{"items":{},"type":"array"},{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"}]},"created":{"anyOf":[{"anyOf":[{"type":"number"},{"type":"string"}]},{"type":"null"}]},"deleted":{"anyOf":[{"anyOf":[{"type":"number"},{"type":"string"}]},{"type":"null"}]},"id":{"type":"string"},"modified":{"anyOf":[{"anyOf":[{"type":"number"},{"type":"string"}]},{"type":"null"}]},"name":{"type":"string"},"stringified":{"type":"string"},"type":{"type":"string"}},"required":["account_id","content","created","deleted","id","modified","name","stringified","type"],"type":"object"},"message":{"minLength":1,"type":"string"},"ok":{"const":"TEMPLATE_CREDENTIALS_CREATED","type":"string"}},"required":["credential","message","ok"],"type":"object","x-transloadit-schema-id":"sha256:2baf3c46554957a1961ce19c9163bb8f1be3ca9407cc9841b12bb1b0492bb047"},"Schema_2bddcc7bb0567b6ae92d65cc2888d8c51615a44366a5d51022f8dabcbc7130e8":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The mean volume of the audio file. Set `output_meta.mean_volume` to `true` to request\nmeasurement. This key may be present as `null` when measurement was not requested or the\nvalue was unavailable. Field presence alone does not show that measurement ran.","x-transloadit-description-id":"assemblyStatusMetaMeanVolume","x-transloadit-schema-id":"sha256:2bddcc7bb0567b6ae92d65cc2888d8c51615a44366a5d51022f8dabcbc7130e8"},"Schema_2c423647ef0f2f61cdae1199299b13ea0acb807f56b659e985b9270d3b8e2131":{"additionalProperties":true,"properties":{"auth_key":{"anyOf":[{"maxLength":64,"pattern":"^[\u0000-퟿-￿]*$","type":"string"},{"type":"null"}]},"auth_secret":{"type":"string"},"message":{"minLength":1,"type":"string"},"ok":{"const":"AUTH_SECRET_RETRIEVED","type":"string"}},"required":["auth_key","auth_secret","message","ok"],"type":"object","x-transloadit-schema-id":"sha256:2c423647ef0f2f61cdae1199299b13ea0acb807f56b659e985b9270d3b8e2131"},"Schema_2d2318eaa4936120548ada88d4daa508dc9a9f16d1a5a9d1fc676de095a6eeb0":{"additionalProperties":false,"properties":{"assembly_status_expiry":{"type":["null","string"]},"content":{"anyOf":[{"additionalProperties":{},"type":"object"},{"items":{},"type":"array"},{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"}]},"id":{"anyOf":[{"maxLength":32,"pattern":"^[\\x00-\\x7F]*$","type":"string"},{"maxLength":32,"pattern":"^builtin\\/[a-z0-9-]+(?:@[0-9a-z.-]+)?$","type":"string"}]},"message":{"minLength":1,"type":"string"},"name":{"maxLength":255,"minLength":1,"type":"string"},"ok":{"const":"TEMPLATE_FOUND","type":"string"},"require_signature_auth":{"enum":[0,1],"type":"number"},"transcoding_result_expiry":{"type":["null","string"]}},"required":["assembly_status_expiry","content","id","message","name","ok","require_signature_auth","transcoding_result_expiry"],"type":"object","x-transloadit-schema-id":"sha256:2d2318eaa4936120548ada88d4daa508dc9a9f16d1a5a9d1fc676de095a6eeb0"},"Schema_2e0216fc013b9ddd584a8964b204b07d49397aa09b301bd88ae070dd53aaf242":{"additionalProperties":false,"properties":{"errorStats":{"items":{"additionalProperties":false,"properties":{"data_from_ts":{"minimum":0,"type":"integer"},"error":{"minLength":1,"type":"string"},"num_erroneous_assemblies":{"minimum":0,"type":"integer"}},"required":["data_from_ts","error","num_erroneous_assemblies"],"type":"object"},"type":"array"},"errorStatsGranularity":{"exclusiveMinimum":0,"type":"integer"},"errorStatsTotals":{"items":{"additionalProperties":false,"properties":{"error":{"minLength":1,"type":"string"},"num_erroneous_assemblies":{"minimum":0,"type":"integer"}},"required":["error","num_erroneous_assemblies"],"type":"object"},"type":"array"},"granularity":{"description":"Duration of each statistics bucket in seconds.","exclusiveMinimum":0,"type":"integer","x-transloadit-description-id":"statsBucketDuration"},"ok":{"const":"ASSEMBLY_STATS_FOUND","type":"string"},"stats":{"items":{"additionalProperties":false,"properties":{"avg_execution_duration":{"description":"Average execution duration in seconds.","minimum":0,"type":"number","x-transloadit-description-id":"statsAverageExecutionDuration"},"avg_input_file_sizes":{"description":"Average total input bytes per Assembly.","minimum":0,"type":"integer","x-transloadit-description-id":"statsAverageInputFileSize"},"avg_live_queue_duration":{"description":"Average live queue duration in seconds.","minimum":0,"type":"number","x-transloadit-description-id":"statsAverageLiveQueueDuration"},"avg_output_file_sizes":{"description":"Average total output bytes per Assembly.","minimum":0,"type":"integer","x-transloadit-description-id":"statsAverageOutputFileSize"},"avg_processing_speed":{"description":"Average processing speed in megabits per second.","minimum":0,"type":"number","x-transloadit-description-id":"statsAverageProcessingSpeed"},"avg_upload_duration":{"description":"Average upload duration in seconds.","minimum":0,"type":"number","x-transloadit-description-id":"statsAverageUploadDuration"},"avg_upload_speed":{"description":"Average upload speed in megabits per second.","minimum":0,"type":"number","x-transloadit-description-id":"statsAverageUploadSpeed"},"data_from_ts":{"description":"Start of the statistics bucket as a Unix timestamp in seconds.","minimum":0,"type":"integer","x-transloadit-description-id":"statsBucketStart"},"num_assemblies":{"minimum":0,"type":"integer"},"num_bytes":{"minimum":0,"type":"integer"},"num_cancelled_assemblies":{"minimum":0,"type":"integer"},"num_erroneous_assemblies":{"minimum":0,"type":"integer"},"num_files":{"minimum":0,"type":"integer"},"num_request_aborted_assemblies":{"minimum":0,"type":"integer"},"num_successful_assemblies":{"minimum":0,"type":"integer"},"total_bytes_usage":{"minimum":0,"type":"integer"},"total_execution_duration":{"minimum":0,"type":"number"},"total_live_queue_duration":{"minimum":0,"type":"number"},"total_num_output_files":{"minimum":0,"type":"integer"},"total_num_uploaded_bytes":{"minimum":0,"type":"integer"},"total_output_file_sizes":{"minimum":0,"type":"integer"},"total_upload_duration":{"minimum":0,"type":"number"}},"required":["avg_execution_duration","avg_input_file_sizes","avg_live_queue_duration","avg_output_file_sizes","avg_processing_speed","avg_upload_duration","avg_upload_speed","data_from_ts","num_assemblies","num_bytes","num_cancelled_assemblies","num_erroneous_assemblies","num_files","num_request_aborted_assemblies","num_successful_assemblies","total_bytes_usage","total_execution_duration","total_live_queue_duration","total_num_output_files","total_num_uploaded_bytes","total_output_file_sizes","total_upload_duration"],"type":"object"},"type":"array"},"totalAssemblies":{"minimum":0,"type":"integer"},"totalBytesProcessed":{"minimum":0,"type":"integer"},"totalBytesUploaded":{"minimum":0,"type":"integer"},"totalExecutionDuration":{"minimum":0,"type":"number"},"totalFilesProcessed":{"minimum":0,"type":"integer"},"totalLiveQueueDuration":{"minimum":0,"type":"number"},"totalOutputBytesProcessed":{"minimum":0,"type":"integer"},"totalOutputFilesProcessed":{"minimum":0,"type":"integer"},"totalUploadDuration":{"minimum":0,"type":"number"},"totalUsage":{"minimum":0,"type":"integer"}},"required":["errorStats","errorStatsGranularity","errorStatsTotals","granularity","ok","stats","totalAssemblies","totalBytesProcessed","totalBytesUploaded","totalExecutionDuration","totalFilesProcessed","totalLiveQueueDuration","totalOutputBytesProcessed","totalOutputFilesProcessed","totalUploadDuration","totalUsage"],"type":"object","x-transloadit-schema-id":"sha256:2e0216fc013b9ddd584a8964b204b07d49397aa09b301bd88ae070dd53aaf242"},"Schema_2e92fa302416aa8e9248c786e77c870e4a6a4be6e499e30785e6e8ea12e8e5f1":{"anyOf":[{"anyOf":[{"additionalProperties":true,"description":"`aggregation` must be either \"avg\" or \"max\".","properties":{"error":{"const":"PRIORITY_JOB_SLOT_STATS_INVALID_AGGREGATION","type":"string"},"http_code":{"const":400,"type":"number"},"message":{"description":"Human-readable explanation of the error. Its wording can vary; use the `error` code when handling a specific failure.","type":"string","x-transloadit-description-id":"api2ErrorMessage"}},"required":["error"],"type":"object","x-transloadit-description-id":"api2ErrorPriorityJobSlotStatsInvalidAggregation"},{"additionalProperties":true,"description":"`since` time is missing or incorrect.","properties":{"error":{"const":"PRIORITY_JOB_SLOT_STATS_INVALID_TIME","type":"string"},"http_code":{"const":400,"type":"number"},"message":{"description":"Human-readable explanation of the error. Its wording can vary; use the `error` code when handling a specific failure.","type":"string","x-transloadit-description-id":"api2ErrorMessage"}},"required":["error"],"type":"object","x-transloadit-description-id":"api2ErrorPriorityJobSlotStatsInvalidTime"},{"additionalProperties":true,"description":"Must provide a specific `region`, or \"all\".","properties":{"error":{"const":"PRIORITY_JOB_SLOT_STATS_MISSING_REGION","type":"string"},"http_code":{"const":400,"type":"number"},"message":{"description":"Human-readable explanation of the error. Its wording can vary; use the `error` code when handling a specific failure.","type":"string","x-transloadit-description-id":"api2ErrorMessage"}},"required":["error"],"type":"object","x-transloadit-description-id":"api2ErrorPriorityJobSlotStatsMissingRegion"}]},{"allOf":[{"$ref":"#/components/schemas/Schema_cb07bdaec8a57b18babcb0842531069c047ea76747de30cb3433ec3ab53763cb"}]}],"x-transloadit-schema-id":"sha256:2e92fa302416aa8e9248c786e77c870e4a6a4be6e499e30785e6e8ea12e8e5f1"},"Schema_2ef8a6ef0566a139b8bf3bc13f536067802a8067f5e00428aa0b8d66372e2b61":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nPlease create your associated <dfn>Template Credentials</dfn> in your Transloadit account and use the name of your <dfn>Template Credentials</dfn> as this parameter's value. They will contain the values for your FTP host, user and password.\n\nWhile we recommend to use <dfn>Template Credentials</dfn> at all times, some use cases demand dynamic credentials for which using <dfn>Template Credentials</dfn> with their static nature is too unwieldy. If you have this requirement, feel free to use the following parameters instead: `\"host\"`, `\"user\"`, `\"password\"`.\n","x-transloadit-schema-id":"sha256:2ef8a6ef0566a139b8bf3bc13f536067802a8067f5e00428aa0b8d66372e2b61"},"Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"type":"number"}],"x-transloadit-schema-id":"sha256:30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},"Schema_31383ce8a17e7fd91b6ce6f73c717c5f1cc2566572a021956e9d19d8adcce115":{"anyOf":[{"type":"string"},{"items":{"anyOf":[{"$ref":"#/components/schemas/Schema_ff79c8f71a3217a1b38b7ba2ab1c6ac0c0d575c77c52a209daddad9ee51151af"},{"anyOf":[{"anyOf":[{"additionalProperties":true,"properties":{"experimental_providerMetadata":{},"image":{"anyOf":[{"type":"string"},{"additionalProperties":{"type":"string"},"type":"object"}]},"mediaType":{"type":"string"},"mimeType":{},"providerOptions":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"type":{"const":"image","type":"string"}},"required":["image","mediaType","providerOptions","type"],"type":"object"},{"additionalProperties":true,"properties":{"experimental_providerMetadata":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"image":{"anyOf":[{"type":"string"},{"additionalProperties":{"type":"string"},"type":"object"}]},"mediaType":{"type":"string"},"mimeType":{},"providerOptions":{"not":{}},"type":{"const":"image","type":"string"}},"required":["image","mediaType","type"],"type":"object"},{"additionalProperties":true,"properties":{"experimental_providerMetadata":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"image":{"anyOf":[{"type":"string"},{"additionalProperties":{"type":"string"},"type":"object"}]},"mediaType":{"type":"string"},"mimeType":{},"providerOptions":{"type":"null"},"type":{"const":"image","type":"string"}},"required":["image","mediaType","providerOptions","type"],"type":"object"}]},{"anyOf":[{"additionalProperties":true,"properties":{"experimental_providerMetadata":{},"image":{"anyOf":[{"type":"string"},{"additionalProperties":{"type":"string"},"type":"object"}]},"mediaType":{"not":{}},"mimeType":{"type":"string"},"providerOptions":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"type":{"const":"image","type":"string"}},"required":["image","providerOptions","type"],"type":"object"},{"additionalProperties":true,"properties":{"experimental_providerMetadata":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"image":{"anyOf":[{"type":"string"},{"additionalProperties":{"type":"string"},"type":"object"}]},"mediaType":{"not":{}},"mimeType":{"type":"string"},"providerOptions":{"not":{}},"type":{"const":"image","type":"string"}},"required":["image","type"],"type":"object"},{"additionalProperties":true,"properties":{"experimental_providerMetadata":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"image":{"anyOf":[{"type":"string"},{"additionalProperties":{"type":"string"},"type":"object"}]},"mediaType":{"not":{}},"mimeType":{"type":"string"},"providerOptions":{"type":"null"},"type":{"const":"image","type":"string"}},"required":["image","providerOptions","type"],"type":"object"}]}]},{"$ref":"#/components/schemas/Schema_12977f712386d47ebcfb772a35ba961d9d05729d01c4639ea75b7afa3eb82847"},{"$ref":"#/components/schemas/Schema_4bb77959dc1d70764b807255722366607c52c3e348068bea0f0c747c1dd9afe7"}]},"type":"array"}],"x-transloadit-schema-id":"sha256:31383ce8a17e7fd91b6ce6f73c717c5f1cc2566572a021956e9d19d8adcce115"},"Schema_31ed678904691333add35107cedec66bbd07701bd8ffd4b105219921bf61418c":{"additionalProperties":false,"properties":{"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for a Template request.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"type":"object","x-transloadit-description-id":"templateAuth"},"fromdate":{"description":"Specifies the minimum UTC creation date/time for Workspace Templates. Only Workspace Templates created at or after this time are returned; Builtin Templates are not filtered by creation date. Use a UTC timestamp such as `2026-08-01 00:00:00` (`YYYY-MM-DD HH:mm:ss`).","type":"string","x-transloadit-description-id":"templatesFromDate"},"include_builtin":{"default":"none","description":"Controls whether Builtin Templates are included. Use `latest` (recommended) or `all`; prefix either with `exclusively-` to return only Builtin Templates. Builtin Templates appear before Workspace Templates in catalog order and share the requested pagination. The sort, order, fromdate and todate parameters apply only to Workspace Templates.","enum":["all","exclusively-all","exclusively-latest","latest","none"],"type":"string","x-transloadit-description-id":"includeBuiltinTemplates"},"keywords":{"anyOf":[{"type":"string"},{"items":{"type":"string"},"type":"array"}],"default":"","description":"Filters Workspace Template names using a SQL LIKE pattern surrounded by `%`. Within your value, `%` matches any sequence of characters and `_` matches one character. Prefer a single string. String arrays remain accepted for released clients and are joined with commas into one pattern, not separate search terms. Builtin Template slugs use a case-insensitive literal substring search instead; `%` and `_` are not wildcards for Builtin Templates.","x-transloadit-description-id":"templatesKeywords"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"},"order":{"default":"desc","description":"Specifies the sort direction for Workspace Templates. Does not change Builtin Template ordering. Defaults to `desc`.","enum":["asc","desc"],"type":"string","x-transloadit-description-id":"templatesOrder"},"page":{"default":1,"description":"Specifies the current page within the current pagination. Defaults to `1`.","maximum":9007199254740991,"minimum":1,"type":"integer","x-transloadit-description-id":"page"},"pagesize":{"default":850,"description":"Specifies how many Templates to return per API request. Defaults to `850`.","maximum":850,"minimum":1,"type":"integer","x-transloadit-description-id":"templatesPageSize"},"sort":{"default":"created","description":"Specifies the field used to sort Workspace Templates. Does not change Builtin Template ordering. Defaults to `created`.","enum":["created","id","last_used","modified","name"],"type":"string","x-transloadit-description-id":"templatesSort"},"todate":{"description":"Specifies the maximum UTC creation date/time for Workspace Templates. Only Workspace Templates created at or before this time are returned; Builtin Templates are not filtered by creation date. Use a UTC timestamp such as `2026-08-01 00:00:00` (`YYYY-MM-DD HH:mm:ss`).","type":"string","x-transloadit-description-id":"templatesToDate"}},"type":"object","x-transloadit-schema-id":"sha256:31ed678904691333add35107cedec66bbd07701bd8ffd4b105219921bf61418c"},"Schema_32f18cfb12051bed3614149f34e9d4e1035266d19b2ef39b57e08adddb9ddfec":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"items":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"items":[{"$ref":"#/components/schemas/Schema_68e219fb9097b30eea45aea265e442f6d42fe7df6655e877ff03b9b0b0a6caf2"},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":"=","description":"Equals without type check","type":"string"}],"description":"Equals without type check"},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":"==","description":"Equals without type check","type":"string"}],"description":"Equals without type check"},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":"===","description":"Strict equals with type check","type":"string"}],"description":"Strict equals with type check"},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":"<","description":"Less than","type":"string"}],"description":"Less than"},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":">","description":"Greater than","type":"string"}],"description":"Greater than"},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":"<=","description":"Less or equal","type":"string"}],"description":"Less or equal"},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":">=","description":"Greater or equal","type":"string"}],"description":"Greater or equal"},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":"!=","description":"Simple inequality check without type check","type":"string"}],"description":"Simple inequality check without type check"},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":"!==","description":"Strict inequality check with type check","type":"string"}],"description":"Strict inequality check with type check"},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":"regex","description":"Case-insensitive regular expression based on [RE2](https://github.com/google/re2) `.match()`","type":"string"}],"description":"Case-insensitive regular expression based on [RE2](https://github.com/google/re2) `.match()`"},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":"!regex","description":"Case-insensitive regular expression based on [RE2](https://github.com/google/re2) `!.match()`","type":"string"}],"description":"Case-insensitive regular expression based on [RE2](https://github.com/google/re2) `!.match()`"},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":"includes","description":"Check if the right element is included in the array, which is represented by the left element","type":"string"}],"description":"Check if the right element is included in the array, which is represented by the left element"},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":"!includes","description":"Check if the right element is not included in the array, which is represented by the left element","type":"string"}],"description":"Check if the right element is not included in the array, which is represented by the left element"},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":"empty","description":"Check if the left element is an empty array, an object without properties, an empty string, the number zero or the boolean false. Leave the third element of the array to be an empty string. It won’t be evaluated.","type":"string"}],"description":"Check if the left element is an empty array, an object without properties, an empty string, the number zero or the boolean false. Leave the third element of the array to be an empty string. It won’t be evaluated."},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":"!empty","description":"Check if the left element is an array with members, an object with at least one property, a non-empty string, a number that does not equal zero or the boolean true. Leave the third element of the array to be an empty string. It won’t be evaluated.","type":"string"}],"description":"Check if the left element is an array with members, an object with at least one property, a non-empty string, a number that does not equal zero or the boolean true. Leave the third element of the array to be an empty string. It won’t be evaluated."}]},{"$ref":"#/components/schemas/Schema_68e219fb9097b30eea45aea265e442f6d42fe7df6655e877ff03b9b0b0a6caf2"}],"maxItems":3,"minItems":3,"type":"array"}]},"type":"array"}],"x-transloadit-schema-id":"sha256:32f18cfb12051bed3614149f34e9d4e1035266d19b2ef39b57e08adddb9ddfec"},"Schema_33e05c219c5be36f5a4bbab5ae6d939b282e30c60d4b7be0ff52e0d01a50bdc4":{"additionalProperties":false,"properties":{"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for an Auth Keys request.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"type":"object","x-transloadit-description-id":"authKeysAuth"},"description":{"description":"Human-readable Auth Key description. Characters outside Unicode’s Basic Multilingual Plane, including most emoji, are not supported.","maxLength":255,"pattern":"^[\u0000-퟿-￿]*$","type":"string","x-transloadit-description-id":"authKeyDescription"},"is_active":{"anyOf":[{"type":"boolean"},{"const":0,"type":"number"},{"const":1,"type":"number"}],"description":"Whether this Auth Key is active.","x-transloadit-description-id":"authKeyActive"},"is_allowed_for_smartcdn":{"anyOf":[{"type":"boolean"},{"const":0,"type":"number"},{"const":1,"type":"number"}],"description":"Whether this Auth Key can authenticate Smart CDN URLs in addition to ordinary API requests and bearer-token issuance. Each operation still requires its own scope. On creation, omission defaults to false. On update, omission keeps the current value; send false explicitly to disable Smart CDN use.","x-transloadit-description-id":"authKeySmartCdnAllowed"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"},"scope":{"description":"Comma-separated Auth Key scopes. Duplicate scopes are normalized by API2.","pattern":"^(?:[\\x09-\\x0D\\x20\\xA0                　﻿]*,)*[\\x09-\\x0D\\x20\\xA0                　﻿]*(?:read|write|auth_keys:write|auth_keys:read|assemblies:write|assemblies:read|assembly_notifications:write|dam:read|dam:write|template_credentials:read|template_credentials:write|billing:read|queues:read|smart_cdn:sign|templates:read|templates:write|storage_grants:write)[\\x09-\\x0D\\x20\\xA0                　﻿]*(?:,[\\x09-\\x0D\\x20\\xA0                　﻿]*(?:(?:read|write|auth_keys:write|auth_keys:read|assemblies:write|assemblies:read|assembly_notifications:write|dam:read|dam:write|template_credentials:read|template_credentials:write|billing:read|queues:read|smart_cdn:sign|templates:read|templates:write|storage_grants:write)[\\x09-\\x0D\\x20\\xA0                　﻿]*)?)*$","type":"string","x-transloadit-description-id":"authKeyScopes"},"signature_algo":{"anyOf":[{"description":"HMAC algorithm used to sign requests with this Auth Key. On creation, ordinary API keys default to `sha384`. Smart CDN keys accept only `sha256` or `null` and default to `null`. On update, omission keeps the current value, except that enabling Smart CDN resets an incompatible algorithm to `null`.","enum":["sha1","sha256","sha384"],"type":"string","x-transloadit-description-id":"authKeySignatureAlgorithm"},{"type":"null"}],"description":"HMAC algorithm used to sign requests with this Auth Key. On creation, ordinary API keys default to `sha384`. Smart CDN keys accept only `sha256` or `null` and default to `null`. On update, omission keeps the current value, except that enabling Smart CDN resets an incompatible algorithm to `null`.","x-transloadit-description-id":"authKeySignatureAlgorithm"}},"type":"object","x-transloadit-schema-id":"sha256:33e05c219c5be36f5a4bbab5ae6d939b282e30c60d4b7be0ff52e0d01a50bdc4"},"Schema_34ab76fcc1ec17539195370cb94ae9fe84d15fba2331d1df3c2f596e86c2809c":{"additionalProperties":false,"properties":{"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for a Template request.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"required":["expires","key"],"type":"object","x-transloadit-description-id":"templateAuth"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"}},"required":["auth"],"type":"object","x-transloadit-schema-id":"sha256:34ab76fcc1ec17539195370cb94ae9fe84d15fba2331d1df3c2f596e86c2809c"},"Schema_34ea758dabb194a79bded7219bcc96870a03f1cc1f15c677263bc8b9fe6e21bc":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"$ref":"#/components/schemas/Schema_91ebf076951a09d46d134e429dae1060e4764ff23a9611174fcaac45893a5f52"},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"items":{"$ref":"#/components/schemas/Schema_91ebf076951a09d46d134e429dae1060e4764ff23a9611174fcaac45893a5f52"},"type":"array"}]}],"default":"center","description":"\nThe position at which the watermark is placed.\n\nAn array of possible values can also be specified, in which case one value will be selected at random, such as `[ \"center\", \"left\", \"bottom-left\", \"bottom-right\" ]`.\n\nThis setting puts the watermark in the specified corner. To use a specific pixel offset for the watermark, you will need to add the padding to the image itself.\n","x-transloadit-schema-id":"sha256:34ea758dabb194a79bded7219bcc96870a03f1cc1f15c677263bc8b9fe6e21bc"},"Schema_35cf890db619e90c290459ad1bb9111a20064bbab0881cc1ebedd82c75b6e871":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"default":"${unique_prefix}/${file.url_name}","description":"\nThe path at which the file is to be stored. This may include any available [Assembly variables](/docs/topics/assembly-instructions/#assembly-variables).\n","x-transloadit-schema-id":"sha256:35cf890db619e90c290459ad1bb9111a20064bbab0881cc1ebedd82c75b6e871"},"Schema_360cb9b22505669e09179309638d53b007d6067cb34ce87083ee7c6478b2ea94":{"description":"The URL to a Websocket (uses Socket.IO) server from which you can get realtime status updates of\nthis Assembly.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusResponseWebsocketUrl","x-transloadit-schema-id":"sha256:360cb9b22505669e09179309638d53b007d6067cb34ce87083ee7c6478b2ea94"},"Schema_374a04102d318032e8f38cde1211d3593166608d83a09abc89c3c862a78f8a34":{"additionalProperties":false,"properties":{"asset_ids":{"items":{"description":"Case-sensitive, canonical 22-character Base64URL DAM identifier.","pattern":"^[A-Za-z0-9_-]{21}[AQgw]$","type":"string","x-transloadit-description-id":"damId"},"maxItems":100,"minItems":1,"type":"array","uniqueItems":true},"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for a DAM mutation.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"type":"object","x-transloadit-description-id":"damMutationAuth"},"destination_folder_id":{"anyOf":[{"description":"Case-sensitive, canonical 22-character Base64URL DAM identifier.","pattern":"^[A-Za-z0-9_-]{21}[AQgw]$","type":"string","x-transloadit-description-id":"damId"},{"type":"null"}],"description":"Destination folder ID for all selected assets. Set to `null` to move them to the root. This field is required.","x-transloadit-description-id":"damAssetsBulkMoveDestination"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"}},"required":["asset_ids","destination_folder_id"],"type":"object","x-transloadit-schema-id":"sha256:374a04102d318032e8f38cde1211d3593166608d83a09abc89c3c862a78f8a34"},"Schema_37a8dffd7b93124ac2ecb3a08c8bece4cc46105992936d6381be8bcd037d8052":{"additionalProperties":true,"properties":{"credential":{"additionalProperties":false,"properties":{"account_id":{"type":"string"},"content":{"anyOf":[{"additionalProperties":{},"type":"object"},{"items":{},"type":"array"},{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"}]},"created":{"anyOf":[{"anyOf":[{"type":"number"},{"type":"string"}]},{"type":"null"}]},"deleted":{"anyOf":[{"anyOf":[{"type":"number"},{"type":"string"}]},{"type":"null"}]},"id":{"type":"string"},"modified":{"anyOf":[{"anyOf":[{"type":"number"},{"type":"string"}]},{"type":"null"}]},"name":{"type":"string"},"stringified":{"type":"string"},"type":{"type":"string"}},"required":["account_id","content","created","deleted","id","modified","name","stringified","type"],"type":"object"},"message":{"minLength":1,"type":"string"},"ok":{"const":"TEMPLATE_CREDENTIALS_UPDATED","type":"string"}},"required":["credential","message","ok"],"type":"object","x-transloadit-schema-id":"sha256:37a8dffd7b93124ac2ecb3a08c8bece4cc46105992936d6381be8bcd037d8052"},"Schema_37ea2a1c3f0c82352d27fd067bde8757f1ec9a2be88635c84872ddbb0fbb4cba":{"anyOf":[{"additionalProperties":true,"description":"The Storage request parameters are invalid.","properties":{"error":{"const":"DAM_INVALID_REQUEST","type":"string"},"http_code":{"const":400,"type":"number"},"message":{"description":"Human-readable explanation of the error. Its wording can vary; use the `error` code when handling a specific failure.","type":"string","x-transloadit-description-id":"api2ErrorMessage"}},"required":["error"],"type":"object","x-transloadit-description-id":"api2ErrorDamInvalidRequest"},{"allOf":[{"$ref":"#/components/schemas/Schema_cb07bdaec8a57b18babcb0842531069c047ea76747de30cb3433ec3ab53763cb"}]}],"x-transloadit-schema-id":"sha256:37ea2a1c3f0c82352d27fd067bde8757f1ec9a2be88635c84872ddbb0fbb4cba"},"Schema_3910b4b9bac8e1c19c75b8903ee27a48315d2e7d0756b8626743751b84843b34":{"anyOf":[{"additionalProperties":true,"description":"Your Template Credentials could not be found.","properties":{"error":{"const":"TEMPLATE_CREDENTIALS_NOT_FOUND","type":"string"},"http_code":{"const":400,"type":"number"},"message":{"description":"Human-readable explanation of the error. Its wording can vary; use the `error` code when handling a specific failure.","type":"string","x-transloadit-description-id":"api2ErrorMessage"}},"required":["error"],"type":"object","x-transloadit-description-id":"api2ErrorTemplateCredentialsNotFound"},{"allOf":[{"$ref":"#/components/schemas/Schema_cb07bdaec8a57b18babcb0842531069c047ea76747de30cb3433ec3ab53763cb"}]},{"additionalProperties":true,"description":"The request was denied for security reasons. If you think this is in error, please get in touch with support.","properties":{"error":{"const":"SIGNATURE_REUSE_DETECTED","type":"string"},"http_code":{"const":400,"type":"number"},"message":{"description":"Human-readable explanation of the error. Its wording can vary; use the `error` code when handling a specific failure.","type":"string","x-transloadit-description-id":"api2ErrorMessage"}},"required":["error"],"type":"object","x-transloadit-description-id":"api2ErrorSignatureReuseDetected"}],"x-transloadit-schema-id":"sha256:3910b4b9bac8e1c19c75b8903ee27a48315d2e7d0756b8626743751b84843b34"},"Schema_39173f453da53f30ce065784b2c78eb4a8ab20ab6257e736f3309b038272507f":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"},{"items":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"}]},"type":"array"}]},{"type":"null"}],"description":"Keywords extracted from the file’s metadata: a string, a finite number, or an array whose entries can be strings, finite numbers, or booleans. For example, `[\"tree\", \"nature\"]`. The field may be absent or `null`. Check its type before iterating; array entries are not necessarily strings.","x-transloadit-description-id":"assemblyStatusMetaKeywords","x-transloadit-schema-id":"sha256:39173f453da53f30ce065784b2c78eb4a8ab20ab6257e736f3309b038272507f"},"Schema_39339c540a27c4098b3e0f484700df44755ed6ba3680bbebbbcd88d327596220":{"additionalProperties":false,"properties":{"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for a Priority Job Slots request.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"required":["expires","key"],"type":"object","x-transloadit-description-id":"priorityJobSlotsAuth"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"}},"required":["auth"],"type":"object","x-transloadit-schema-id":"sha256:39339c540a27c4098b3e0f484700df44755ed6ba3680bbebbbcd88d327596220"},"Schema_39863e43d23dd5d5fa6c9be76beb2a39c53510e09f788f84b3d41fb558406cae":{"additionalProperties":false,"properties":{"message":{"minLength":1,"type":"string"},"ok":{"const":"PRIORITY_JOB_SLOTS_FOUND","type":"string"},"priority_job_slots":{"additionalProperties":false,"properties":{"count":{"minimum":0,"type":"integer"},"slots":{"additionalProperties":{"additionalProperties":{"additionalProperties":{"minimum":0,"type":"integer"},"type":"object"},"type":"object"},"type":"object"}},"required":["count","slots"],"type":"object"}},"required":["message","ok","priority_job_slots"],"type":"object","x-transloadit-schema-id":"sha256:39863e43d23dd5d5fa6c9be76beb2a39c53510e09f788f84b3d41fb558406cae"},"Schema_39ecfe30b7e7a6d240546aa94aca97ffa888ca37d561abb870b0b6ecd718b535":{"anyOf":[{"additionalProperties":true,"description":"The request was denied for security reasons. If you think this is in error, please get in touch with support.","properties":{"error":{"const":"SIGNATURE_REUSE_DETECTED","type":"string"},"http_code":{"const":400,"type":"number"},"message":{"description":"Human-readable explanation of the error. Its wording can vary; use the `error` code when handling a specific failure.","type":"string","x-transloadit-description-id":"api2ErrorMessage"}},"required":["error"],"type":"object","x-transloadit-description-id":"api2ErrorSignatureReuseDetected"},{"allOf":[{"$ref":"#/components/schemas/Schema_cb07bdaec8a57b18babcb0842531069c047ea76747de30cb3433ec3ab53763cb"}]}],"x-transloadit-schema-id":"sha256:39ecfe30b7e7a6d240546aa94aca97ffa888ca37d561abb870b0b6ecd718b535"},"Schema_3d1cd815592582c496b313ba416ab0870a5b847fedc48c1e411c39a5ef1d45f4":{"anyOf":[{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":1,"type":"integer"}]},{"type":"null"}],"description":"\nWidth of the new video, in pixels.\n\nIf the value is not specified and the `preset` parameter is available, the `preset`'s [supplied width](/docs/presets/video/) will be implemented.\n","x-transloadit-schema-id":"sha256:3d1cd815592582c496b313ba416ab0870a5b847fedc48c1e411c39a5ef1d45f4"},"Schema_3d273dce7ec364dfcf8d49b59ffe8e8cae867238aa0463659924eb58e13317f1":{"additionalProperties":false,"properties":{"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for a DAM mutation.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"required":["expires","key"],"type":"object","x-transloadit-description-id":"damMutationAuth"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"}},"required":["auth"],"type":"object","x-transloadit-schema-id":"sha256:3d273dce7ec364dfcf8d49b59ffe8e8cae867238aa0463659924eb58e13317f1"},"Schema_3d3645811c041c41c65f471a7527e619bdc6a1b5a0f31ce631fcff3645053b21":{"additionalProperties":false,"properties":{"assembly_status_expiry":{"description":"Controls how long the Assembly Status is retained for Assemblies created from this Template.","enum":["1day","30days","7days","90days","NoSave"],"type":"string","x-transloadit-description-id":"templateAssemblyStatusExpiry"},"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for a Template request.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"type":"object","x-transloadit-description-id":"templateAuth"},"name":{"description":"Name of this Template. Use 3–200 lowercase Latin letters, numbers, or dashes. The name `tmp` and service-reserved names are unavailable.","maxLength":200,"minLength":3,"pattern":"^(?:[a-su-z0-9-][a-z0-9-]{2,199}|t[a-ln-z0-9-][a-z0-9-]{1,198}|tm[a-oq-z0-9-][a-z0-9-]{0,197}|tmp[a-z0-9-]{1,197})$","type":"string","x-transloadit-description-id":"templateName"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"},"require_signature_auth":{"default":0,"description":"Use `1` to require a valid signature when creating Assemblies from this Template with an Auth Key. Valid bearer tokens bypass this signature requirement; their scopes and audience still apply. This setting does not add authentication to Assembly status, cancellation or upload capability URLs. See [Signature Authentication](/docs/api/authentication/).","enum":[0,1],"type":"number","x-transloadit-description-id":"requireSignatureAuth"},"template":{"anyOf":[{"additionalProperties":false,"description":"Structured Assembly Instructions stored in this Template.","properties":{"allow_steps_override":{"description":"Set this to false in a stored Template to disallow overriding its Steps at runtime. The Template may then be used with `template_id`, or direct `steps` may be supplied without it, but not both. A value supplied only while creating an Assembly does not control this policy.","type":"boolean","x-transloadit-description-id":"allowStepsOverride"},"auth":{"additionalProperties":false,"description":"Optional authentication and upload constraints for an Assembly. The API key may be omitted for bearer-authenticated requests or when only upload constraints are stored in a Template.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"},"max_number_of_files":{"description":"Maximum number of input files allowed per Assembly. If the number of uploaded or imported files exceeds this limit, the Assembly will be stopped with an error. This is useful for preventing abuse when Signature Authentication credentials are exposed.","minimum":1,"type":"integer","x-transloadit-description-id":"signatureAuthMaxNumberOfFiles"},"max_size":{"description":"Maximum total expected upload size in bytes for the Assembly, including request-body overhead. This is not a per-file limit and does not guarantee rejection before a resumable transfer starts.","type":"number","x-transloadit-description-id":"signatureAuthMaxSize"},"referer":{"description":"Regular expression matched against a supplied HTTP Referer. Invalid expressions and expressions that exceed the evaluation time limit are rejected. Missing Referer headers pass this check; use Signature Authentication to authenticate requests.","type":"string","x-transloadit-description-id":"signatureAuthReferer"}},"type":"object","x-transloadit-description-id":"assemblyOptionalAuth"},"emit_execution_progress":{"description":"Set to true to publish real-time Assembly execution-progress events. This is ignored for URL Transform Assemblies.","type":"boolean","x-transloadit-description-id":"assemblyEmitExecutionProgress"},"exiftool_stack":{"description":"Ignored when stored in a Template. To select the ExifTool stack for metadata extraction, set `exiftool_stack` in the top-level Assembly request params instead.","type":"string","x-transloadit-description-id":"storedTemplateExifToolStack"},"ffmpeg_stack":{"description":"Ignored when stored in a Template. To select the FFmpeg stack for metadata extraction, set `ffmpeg_stack` in the top-level Assembly request params instead.","type":"string","x-transloadit-description-id":"storedTemplateFfmpegStack"},"fields":{"additionalProperties":{},"description":"An object of string keyed values (name -> value) that can be used as Assembly Variables, just like additional form fields can. You can use anything that is JSON stringifyable as a value","type":"object","x-transloadit-description-id":"fields"},"imagemagick_stack":{"description":"Ignored when stored in a Template. To select the ImageMagick stack for metadata extraction, set `imagemagick_stack` in the top-level Assembly request params instead.","type":"string","x-transloadit-description-id":"storedTemplateImageMagickStack"},"mediainfo_stack":{"description":"Ignored when stored in a Template. To select the MediaInfo stack for metadata extraction, set `mediainfo_stack` in the top-level Assembly request params instead.","type":"string","x-transloadit-description-id":"storedTemplateMediaInfoStack"},"mplayer_stack":{"description":"Ignored when stored in a Template. To select the MPlayer stack for metadata extraction, set `mplayer_stack` in the top-level Assembly request params instead.","type":"string","x-transloadit-description-id":"storedTemplateMplayerStack"},"notification_payload":{"description":"Controls the size of the payload sent in Assembly notifications. Notification replays reuse filters supplied in the original Assembly request; filters defined only in a Template are not preserved on replay. An empty array (default) sends the complete Assembly Status. Add `\"without_params\"` so the top-level raw Assembly instruction fields `params`, `template`, and `merged_params` are omitted. Add `\"without_result_meta_data\"` so `meta` is omitted from each file in `results`. Add `\"without_results\"` so the top-level `results` object is omitted. Add `\"without_upload_meta_data\"` so `meta` is omitted from each file in `uploads`. Add `\"without_uploads\"` so the top-level `uploads` array is omitted. Filtering is applied before serialization, so using these options reduces memory use and helps avoid oversized-payload or OOM failures on large Assemblies.","items":{"enum":["without_params","without_result_meta_data","without_results","without_upload_meta_data","without_uploads"],"type":"string"},"type":"array","x-transloadit-description-id":"notificationPayload"},"notify_url":{"description":"Transloadit can send a Pingback to your server when the Assembly is completed. We’ll send the Assembly Status as a JSON string in the `transloadit` field of an `application/x-www-form-urlencoded` POST request to the URL supplied here. Use `notification_payload` to reduce the payload size (e.g. `without_uploads`, `without_results`, `without_params`). Notification replays reuse only filters supplied in the original Assembly request, not filters defined only in a Template.","type":["null","string"],"x-transloadit-description-id":"notifyUrl"},"quiet":{"description":"Set this to true to minimize the initial Assembly-creation response. A successful response includes only ok and assembly_id; an error response retains error, http_code, message, reason and assembly_id when available. This is response minimization, not access control: anyone with the returned Assembly ID can still retrieve the full Assembly Status, including fields and results, without additional authentication. Treat Assembly IDs and status URLs as secret capabilities. The full Assembly Status is still sent to notify_url when configured.","type":"boolean","x-transloadit-description-id":"quiet"},"redirect_url":{"description":"URL to redirect a browser upload to after the upload completes. The Assembly ID and status URL are appended as query parameters while preserving any existing query parameters and fragment.","type":"string","x-transloadit-description-id":"assemblyRedirectUrl"},"response_headers":{"additionalProperties":true,"description":"Custom response headers emitted by an Assembly. CORS overrides belong in `cors`; other top-level keys are emitted as custom headers.","properties":{"cors":{"additionalProperties":true,"properties":{"Access-Control-Allow-Credentials":{"type":"boolean"},"Access-Control-Allow-Headers":{"type":"string"},"Access-Control-Allow-Methods":{"type":"string"},"Access-Control-Allow-Origin":{"type":"string"},"Access-Control-Allow-Private-Network":{"type":"boolean"},"Access-Control-Allow-Public-Network":{"type":"boolean"},"Access-Control-Expose-Headers":{"type":"string"},"Access-Control-Max-Age":{"type":"number"}},"type":"object"}},"type":"object","x-transloadit-description-id":"assemblyResponseHeaders"},"steps":{"allOf":[{"$ref":"#/components/schemas/Schema_97aad3d37f5046edcb335db4458316ce19e3edbaf9c9f74754f078aae9e99450"}],"description":"Contains Assembly Instructions.","x-transloadit-description-id":"assemblyInstructions"},"template_id":{"description":"Ignored when stored in a Template. Templates do not inherit Instructions from another Template. Put the Steps directly in this Template and select it using `template_id` in the top-level Assembly request params.","type":"string","x-transloadit-description-id":"storedTemplateId"},"usage_tags":{"description":"Usage tags recorded on an Assembly.","type":"string","x-transloadit-description-id":"assemblyUsageTags"}},"type":"object","x-transloadit-description-id":"templateContentObject"},{"description":"JSON-encoded Assembly Instructions retained for client compatibility.","pattern":"^[\\x09-\\x0D\\x20\\xA0                　﻿]*\\{(?:[^\\x00]|\\x00)*\\}[\\x09-\\x0D\\x20\\xA0                　﻿]*$","type":"string","x-transloadit-description-id":"templateContentJson","x-transloadit-input-fidelity":"conservative"}],"description":"Assembly Instructions stored in this Template. Prefer the structured JSON object; a JSON-encoded string remains accepted for compatibility.","x-transloadit-description-id":"template"},"transcoding_result_expiry":{"description":"Controls how long transcoding results are retained for Assemblies created from this Template.","enum":["1day","NoSave"],"type":"string","x-transloadit-description-id":"templateTranscodingResultExpiry"}},"required":["name","template"],"type":"object","x-transloadit-schema-id":"sha256:3d3645811c041c41c65f471a7527e619bdc6a1b5a0f31ce631fcff3645053b21"},"Schema_3e33221f16421f1f4228978b5b8853262dc916128e27203154e6d3a1169096b5":{"additionalProperties":false,"properties":{"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for an Assembly Notification replay.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"type":"object","x-transloadit-description-id":"notificationReplayAuth"},"fields":{"additionalProperties":{},"description":"Values available to placeholders in the notification URL used for this replay. Original Assembly field values are not inherited. Resupply any fields needed by the URL template; missing placeholders are replaced with empty strings.","type":"object","x-transloadit-description-id":"notificationReplayFields"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"},"notify_url":{"description":"Overrides the original Assembly notification URL for this replay. Omission, null, or an empty string reuses the original URL template, not its previously resolved URL. Field placeholders are evaluated again using only replay-supplied fields. Resupply any required fields or pass the desired resolved URL.","type":["null","string"],"x-transloadit-description-id":"notificationReplayNotifyUrl"},"wait":{"description":"Waits for replay execution to finish. Omission defaults to true; false returns immediately after starting it. A successful replay API response does not confirm Webhook delivery, even when true. Check the recorded delivery status and response_code in the Assembly Notification listing.","type":"boolean","x-transloadit-description-id":"notificationWait"}},"type":"object","x-transloadit-schema-id":"sha256:3e33221f16421f1f4228978b5b8853262dc916128e27203154e6d3a1169096b5"},"Schema_3f211b7388d433ec23d436cf6a312e34c5d264de2102f047aca416cdd143cc09":{"additionalProperties":false,"properties":{"asset_ids":{"items":{"description":"Case-sensitive, canonical 22-character Base64URL DAM identifier.","pattern":"^[A-Za-z0-9_-]{21}[AQgw]$","type":"string","x-transloadit-description-id":"damId"},"maxItems":100,"minItems":1,"type":"array","uniqueItems":true},"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for a DAM mutation.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"required":["expires","key"],"type":"object","x-transloadit-description-id":"damMutationAuth"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"}},"required":["asset_ids","auth"],"type":"object","x-transloadit-schema-id":"sha256:3f211b7388d433ec23d436cf6a312e34c5d264de2102f047aca416cdd143cc09"},"Schema_3fa9307b01fcd52445e335843753d5341a12394171a9c5430ecaef4662224f7f":{"additionalProperties":false,"properties":{"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for a DAM mutation.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"required":["expires","key"],"type":"object","x-transloadit-description-id":"damMutationAuth"},"destination_folder_id":{"anyOf":[{"description":"Case-sensitive, canonical 22-character Base64URL DAM identifier.","pattern":"^[A-Za-z0-9_-]{21}[AQgw]$","type":"string","x-transloadit-description-id":"damId"},{"type":"null"}],"description":"Destination folder ID. Set to `null` to move the asset to the root. Omit to keep its current folder, for example when only renaming it with `filename`.","x-transloadit-description-id":"damAssetMoveDestination"},"filename":{"description":"New filename without a folder path. Names are normalized to Unicode NFC and remain case-sensitive. Whitespace-only names, `.` or `..`, slashes, backslashes, control characters, and invalid Unicode are rejected. Other leading or trailing spaces are preserved. The combined destination folder and filename must also fit the [asset path limits](/docs/api/dam-assets-asset-id-patch/#asset-path-limits).","maxLength":255,"minLength":1,"type":"string","x-transloadit-description-id":"damAssetMoveFilename"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"}},"required":["auth"],"type":"object","x-transloadit-schema-id":"sha256:3fa9307b01fcd52445e335843753d5341a12394171a9c5430ecaef4662224f7f"},"Schema_41f6da0544dc3df7613439ed2ec7eb539b34ef6992e411749dd9672b2899f525":{"additionalProperties":true,"properties":{"gb_included":{"anyOf":[{"type":"number"},{"pattern":"^-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?$","type":"string"}]},"gb_limit":{"anyOf":[{"anyOf":[{"type":"number"},{"pattern":"^-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?$","type":"string"}]},{"type":"null"}]},"has_lifetime_limit":{"anyOf":[{"anyOf":[{"type":"boolean"},{"const":0,"type":"number"},{"const":1,"type":"number"},{"const":"0","type":"string"},{"const":"1","type":"string"}]},{"type":"null"}]},"id":{"type":["null","string"]},"price_per_gb":{"anyOf":[{"type":"number"},{"pattern":"^-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?$","type":"string"}]},"price_per_month":{"anyOf":[{"type":"number"},{"pattern":"^-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?$","type":"string"}]}},"required":["gb_included","gb_limit","has_lifetime_limit","id","price_per_gb","price_per_month"],"type":"object","x-transloadit-schema-id":"sha256:41f6da0544dc3df7613439ed2ec7eb539b34ef6992e411749dd9672b2899f525"},"Schema_425e1baf23d4ea0f0f5526bf481a5c52ee080b5d83194124c3c4e9ee161c22a9":{"additionalProperties":false,"properties":{"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for a Template Credentials request.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"type":"object","x-transloadit-description-id":"templateCredentialsAuth"},"content":{"anyOf":[{"anyOf":[{"additionalProperties":{},"type":"object"},{"type":"string"}]},{"type":"null"}],"description":"Omit this field or send `null` to retain all existing content. Key and value pairs for this credential type. Pass a JSON object or a JSON-encoded string that decodes to an object. See [supported credential types](/docs/api/template-credentials-types-get/) for their fields and [updating credentials](/docs/api/template-credentials-credentials-id-put/) for preservation and secret-rotation behavior.","x-transloadit-description-id":"templateCredentialsUpdateContent"},"name":{"description":"Name of the Template Credentials. Must be between 3 and 255 characters and contain only letters, digits, dashes, underscores, and dots.","pattern":"^[A-Za-zK0-9._-]{3,255}$","type":"string","x-transloadit-description-id":"templateCredentialsName"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"},"type":{"description":"The service these credentials belong to. On update, resend the existing type unchanged. To use a different service, create another Template Credential.","enum":["ai","azure","backblaze","box","cloudflare","companion","digitalocean","dropbox","ftp","google","http","mega","minio","rackspace","s3","sftp","supabase","swift","tigris","vimeo","wasabi","youtube"],"type":"string","x-transloadit-description-id":"templateCredentialsType"}},"required":["name","type"],"type":"object","x-transloadit-schema-id":"sha256:425e1baf23d4ea0f0f5526bf481a5c52ee080b5d83194124c3c4e9ee161c22a9"},"Schema_446b14af1ebe5ec174a22cdaf673cc8a9d274ffbf3ec624c203ffd7addeaa9ea":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["json","meta","text"],"type":"string"}],"default":"json","description":"\nIn what format to return the extracted text.\n- `\"json\"` returns a JSON file.\n- `\"meta\"` does not return a file, but stores the data inside Transloadit's file object (under `${file.meta.recognized_text}`, which is an array of strings) that's passed around between encoding <dfn>Steps</dfn>, so that you can use the values to burn the data into videos, filter on them, etc.\n- `\"text\"` returns the recognized text as a plain UTF-8 encoded text file.\n","x-transloadit-schema-id":"sha256:446b14af1ebe5ec174a22cdaf673cc8a9d274ffbf3ec624c203ffd7addeaa9ea"},"Schema_4530547e51cb1582b0e51815bba399955e6ca9806c68cbf1742c071a16ff0d9e":{"anyOf":[{"additionalProperties":true,"description":"Your Auth Key could not be updated.","properties":{"error":{"const":"AUTH_KEY_NOT_UPDATED","type":"string"},"http_code":{"const":400,"type":"number"},"message":{"description":"Human-readable explanation of the error. Its wording can vary; use the `error` code when handling a specific failure.","type":"string","x-transloadit-description-id":"api2ErrorMessage"}},"required":["error"],"type":"object","x-transloadit-description-id":"api2ErrorAuthKeyNotUpdated"},{"allOf":[{"$ref":"#/components/schemas/Schema_cb07bdaec8a57b18babcb0842531069c047ea76747de30cb3433ec3ab53763cb"}]}],"x-transloadit-schema-id":"sha256:4530547e51cb1582b0e51815bba399955e6ca9806c68cbf1742c071a16ff0d9e"},"Schema_45c14a42dace2876551f3bdac7234ce437dfaf923d33738883e23ebe63580202":{"additionalProperties":false,"properties":{"notification_id":{"minLength":1,"type":"string"},"ok":{"enum":["ASSEMBLY_NOTIFICATION_REPLAYED","ASSEMBLY_NOTIFICATION_REPLAYING"],"type":"string"},"success":{"const":true,"type":"boolean"}},"required":["notification_id","ok","success"],"type":"object","x-transloadit-schema-id":"sha256:45c14a42dace2876551f3bdac7234ce437dfaf923d33738883e23ebe63580202"},"Schema_4628123852e2795740f3b1ddb1d557911a010ad427c6a85c4bb8b54491692385":{"description":"Comma-separated ASCII metadata keys with optional standard Base64 values. Successful Transloadit uploads include filename and fieldname; authentication metadata is composed by the transport.","pattern":"^[\\x21-\\x2b\\x2d-\\x7e]+(?: (?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?)?(?:,[\\x21-\\x2b\\x2d-\\x7e]+(?: (?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?)?)*$","type":"string","x-transloadit-description-id":"tusCanonicalUploadMetadata","x-transloadit-schema-id":"sha256:4628123852e2795740f3b1ddb1d557911a010ad427c6a85c4bb8b54491692385"},"Schema_46291c8d1c92a74d382a7a6aed3de4d36d66c5dc3b0dee3c9d022c98afdd2dca":{"description":"The URL to a server-sent events stream from which you can get realtime status updates of\nthis Assembly.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusResponseUpdateStreamUrl","x-transloadit-schema-id":"sha256:46291c8d1c92a74d382a7a6aed3de4d36d66c5dc3b0dee3c9d022c98afdd2dca"},"Schema_47769952929597405852490ac5292d00bd64967542e39c913eb26a7457785dbc":{"additionalProperties":false,"properties":{"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for a Template request.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"type":"object","x-transloadit-description-id":"templateAuth"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"}},"type":"object","x-transloadit-schema-id":"sha256:47769952929597405852490ac5292d00bd64967542e39c913eb26a7457785dbc"},"Schema_479ba1b1c1b9832d49a7c2bed1726873de44fbe0e6095d87466df559303afcf5":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\n  Please create your associated <dfn>Template Credentials</dfn> in your Transloadit account and use the name of your <dfn>Template Credentials</dfn> as this parameter's value. They will contain the values for your OpenStack Swift container (provided through the `\"bucket\"` parameter), host, Key and Secret.\n\n  While we recommend to use <dfn>Template Credentials</dfn> at all times, some use cases demand dynamic credentials for which using <dfn>Template Credentials</dfn> is too unwieldy because of their static nature. If you have this requirement, feel free to use the following parameters instead: `\"bucket\"`, `\"host\"`, `\"key\"`, `\"secret\"`.\n  ","x-transloadit-schema-id":"sha256:479ba1b1c1b9832d49a7c2bed1726873de44fbe0e6095d87466df559303afcf5"},"Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa":{"anyOf":[{"$ref":"#/components/schemas/Schema_dce1096fff6767b5f477f31f13c4e33289b9e9f3a0fd3df2000b731877c8d4bb"},{"$ref":"#/components/schemas/Schema_93f6798a65ce5f82f9f24e57970692d0637744d29ed7af56ed96d02c14a59f79"}],"description":"\nSpecifies which Step(s) to use as input.\n\n- You can pick any names for Steps except `\":original\"` (reserved for user uploads handled by Transloadit)\n- You can provide several Steps as input with arrays:\n  ```json\n  {\n    \"use\": [\n      \":original\",\n      \"encoded\",\n      \"resized\"\n    ]\n  }\n  ```\n- You can also tag input Steps with `as` to pass semantic intent to robots:\n  ```json\n  {\n    \"use\": [\n      {\n        \"name\": \":original\",\n        \"as\": \"image\"\n      },\n      {\n        \"name\": \":original\",\n        \"as\": \"mask\"\n      }\n    ]\n  }\n  ```\n\n> [!Tip]\n> That's likely all you need to know about `use`, but you can view [Advanced use cases](/docs/topics/use-parameter/).\n","x-transloadit-schema-id":"sha256:47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"Schema_486cc443f063bae96742c4a1a0d3c186dbbde61087f657f5caf78ad6fb4d80ed":{"additionalProperties":false,"properties":{"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for a DAM mutation.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"type":"object","x-transloadit-description-id":"damMutationAuth"},"destination":{"description":"New Workspace-relative path of the same kind as source. End folder paths with a slash. An occupied destination is refused rather than overwritten or merged.","maxLength":513,"minLength":1,"type":"string","x-transloadit-description-id":"damEntryMoveDestination"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"},"source":{"description":"Existing Workspace-relative file or folder path. End folder paths with a slash. The native move preserves asset and version IDs.","maxLength":513,"minLength":1,"type":"string","x-transloadit-description-id":"damEntryMoveSource"}},"required":["destination","source"],"type":"object","x-transloadit-schema-id":"sha256:486cc443f063bae96742c4a1a0d3c186dbbde61087f657f5caf78ad6fb4d80ed"},"Schema_48846cc3bf660fc66a1844289636009a40a68d2eae08d688bd0eaf2c75be7433":{"enum":["af","am","ar","az","be","bg","bn","bs","ca","ceb","co","cs","cy","da","de","el","en","en-US","eo","es","es-MX","et","eu","fa","fa-AF","fi","fr","fr-CA","fy","ga","gd","gl","gu","ha","haw","he","hi","hmn","hr","ht","hu","hy","id","ig","is","it","iw","ja","jv","ka","kk","km","kn","ko","ku","ky","la","lb","lo","lt","lv","mg","mi","mk","ml","mn","mr","ms","mt","my","ne","nl","no","ny","or","pa","pl","ps","pt","ro","ru","rw","sd","si","sk","sl","sm","sn","so","sq","sr","st","su","sv","sw","ta","te","tg","th","tk","tl","tr","tt","ug","uk","ur","uz","vi","xh","yi","yo","zh","zh-CN","zh-TW","zu"],"type":"string","x-transloadit-schema-id":"sha256:48846cc3bf660fc66a1844289636009a40a68d2eae08d688bd0eaf2c75be7433"},"Schema_48b9e2855d4585557d32d100b33f2f085af0d442b1f9e3328bb7ca98aad1a9e8":{"additionalProperties":false,"properties":{"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for an Assembly Stats request.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"type":"object","x-transloadit-description-id":"assemblyStatsAuth"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"},"region":{"description":"Region to include, or `all` for every region.","minLength":1,"type":"string","x-transloadit-description-id":"statsRegion"},"since":{"description":"Date and time at which the statistics window begins, at most 91 days ago. ISO 8601 is recommended; API2 also preserves date strings accepted by its existing parser. A longer lookback is rejected with the endpoint’s invalid-time error.","minLength":1,"type":"string","x-transloadit-description-id":"statsSince"},"template_id":{"description":"Template ID to include, or `all` for pre-aggregated totals across Templates. Omission, null, an empty string, or `no_template` includes Assemblies created without a Template.","type":["null","string"],"x-transloadit-description-id":"assemblyStatsTemplateId"}},"required":["region","since"],"type":"object","x-transloadit-schema-id":"sha256:48b9e2855d4585557d32d100b33f2f085af0d442b1f9e3328bb7ca98aad1a9e8"},"Schema_4903f86e11ac255c4db0545de4124e4c3092c8a124f00d2fef6bca66bf2f638f":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":1,"type":"integer"}],"description":"\nBit rate of the resulting audio file, in bits per second. If not specified will default to the bit rate of the input audio file.\n","x-transloadit-schema-id":"sha256:4903f86e11ac255c4db0545de4124e4c3092c8a124f00d2fef6bca66bf2f638f"},"Schema_491a627f0e857de61ccd9cab2f9cf97d04cdf7396b11748e89d3bd956ddf5af4":{"additionalProperties":false,"properties":{"aggregation":{"anyOf":[{"enum":["avg","max"],"type":"string"},{"type":"null"}],"description":"Selects average or maximum slot usage. Omission or null defaults to average usage.","x-transloadit-description-id":"priorityJobSlotsAggregation"},"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for a Priority Job Slots request.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"type":"object","x-transloadit-description-id":"priorityJobSlotsAuth"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"},"region":{"description":"Region to include, or `all` for every region.","minLength":1,"type":"string","x-transloadit-description-id":"statsRegion"},"since":{"description":"Date and time at which the statistics window begins, at most 91 days ago. ISO 8601 is recommended; API2 also preserves date strings accepted by its existing parser. A longer lookback is rejected with the endpoint’s invalid-time error.","minLength":1,"type":"string","x-transloadit-description-id":"statsSince"}},"required":["region","since"],"type":"object","x-transloadit-schema-id":"sha256:491a627f0e857de61ccd9cab2f9cf97d04cdf7396b11748e89d3bd956ddf5af4"},"Schema_49686d9490285d08562b73ccfe3d4dee8a00389586ed4b6122c24a4111c6c22d":{"anyOf":[{"additionalProperties":true,"properties":{"bff":{"type":"number"},"confidence":{"type":"number"},"ffprobe_field_order":{"type":["null","string"]},"method":{"type":"string"},"progressive":{"type":"number"},"sampled_frames":{"type":"number"},"tff":{"type":"number"},"undetermined":{"type":"number"}},"type":"object"},{"type":"null"}],"description":"Diagnostic details from Transloadit’s interlace detector. This object can include\n`sampled_frames`, `tff`, `bff`, `progressive`, `undetermined`, `confidence`, `method`, and\n`ffprobe_field_order`. Set `output_meta.interlaced` to `true` to request detection. This key\nmay be present as `null` when detection was not requested; check for a non-null object before\nreading its properties.","x-transloadit-description-id":"assemblyStatusMetaInterlaceDetection","x-transloadit-schema-id":"sha256:49686d9490285d08562b73ccfe3d4dee8a00389586ed4b6122c24a4111c6c22d"},"Schema_4b27e8e5c04053c4d2292db8063a7f4a9d05de6216158fd80fa50e693bd5f42e":{"additionalProperties":true,"properties":{"assembly_id":{"type":"string"},"assembly_ssl_url":{"type":"string"},"assembly_url":{"type":"string"},"message":{"type":"string"},"notify_url":{"type":["null","string"]},"ok":{"const":"ASSEMBLY_REPLAYING","type":"string"},"success":{"const":true,"type":"boolean"}},"required":["assembly_id","assembly_ssl_url","assembly_url","message","notify_url","ok","success"],"type":"object","x-transloadit-schema-id":"sha256:4b27e8e5c04053c4d2292db8063a7f4a9d05de6216158fd80fa50e693bd5f42e"},"Schema_4bb77959dc1d70764b807255722366607c52c3e348068bea0f0c747c1dd9afe7":{"anyOf":[{"additionalProperties":true,"properties":{"data":{"type":"string"},"experimental_providerMetadata":{},"filename":{"type":"string"},"mediaType":{"type":"string"},"providerOptions":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"type":{"const":"media","type":"string"}},"required":["data","mediaType","providerOptions","type"],"type":"object"},{"additionalProperties":true,"properties":{"data":{"type":"string"},"experimental_providerMetadata":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"filename":{"type":"string"},"mediaType":{"type":"string"},"providerOptions":{"not":{}},"type":{"const":"media","type":"string"}},"required":["data","mediaType","type"],"type":"object"},{"additionalProperties":true,"properties":{"data":{"type":"string"},"experimental_providerMetadata":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"filename":{"type":"string"},"mediaType":{"type":"string"},"providerOptions":{"type":"null"},"type":{"const":"media","type":"string"}},"required":["data","mediaType","providerOptions","type"],"type":"object"}],"x-transloadit-schema-id":"sha256:4bb77959dc1d70764b807255722366607c52c3e348068bea0f0c747c1dd9afe7"},"Schema_4cf32fac596c7c30ed22baa75d22beefa4ca3014f90c8c6798b68b186be3fd43":{"anyOf":[{"additionalProperties":true,"description":"Your Auth Key could not be created.","properties":{"error":{"const":"AUTH_KEY_NOT_CREATED","type":"string"},"http_code":{"const":400,"type":"number"},"message":{"description":"Human-readable explanation of the error. Its wording can vary; use the `error` code when handling a specific failure.","type":"string","x-transloadit-description-id":"api2ErrorMessage"}},"required":["error"],"type":"object","x-transloadit-description-id":"api2ErrorAuthKeyNotCreated"},{"allOf":[{"$ref":"#/components/schemas/Schema_cb07bdaec8a57b18babcb0842531069c047ea76747de30cb3433ec3ab53763cb"}]}],"x-transloadit-schema-id":"sha256:4cf32fac596c7c30ed22baa75d22beefa4ca3014f90c8c6798b68b186be3fd43"},"Schema_4d7b727780bbd440ac6badfb50448cd58150f2f5d15740a9a4bef70fb652dcb4":{"additionalProperties":false,"properties":{"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for an Assembly replay.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"type":"object","x-transloadit-description-id":"assemblyReplayAuth"},"fields":{"additionalProperties":{},"description":"Values merged on top of the original Assembly fields and made available as Assembly Variables in the replay.","type":"object","x-transloadit-description-id":"assemblyReplayFields"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"},"notify_url":{"description":"Overrides the notification URL for the replayed Assembly. An omitted, null, or empty value does not override the inherited URL. By default, or when the original Assembly has no Template, the URL from the original merged Assembly Instructions is reevaluated using the replay’s fields and Assembly Variables. With `reparse_template: 1` and an original Template, the URL comes from the original Assembly Status instead of the Template’s current `notify_url`. Supply an explicit URL to choose the destination.","type":["null","string"],"x-transloadit-description-id":"assemblyReplayNotifyUrl"},"reparse_template":{"description":"Specify `1` to fetch and reparse the Template used by the original Assembly, which is useful if the Template changed in the meantime. Specify `0`, or omit this property, to reuse the original merged Assembly Instructions.","enum":[0,1],"type":"number","x-transloadit-description-id":"reparseTemplate"},"steps":{"anyOf":[{"additionalProperties":{"$ref":"#/components/schemas/Schema_e9cd789e59923ef8186b2a620d3348a856461f1009b5cd69551d1a25f47eb029"},"type":"object"},{"items":{"$ref":"#/components/schemas/Schema_e9cd789e59923ef8186b2a620d3348a856461f1009b5cd69551d1a25f47eb029"},"type":"array"}],"description":"Replay step overrides. Object-form steps are the normal Assembly shape; array-form steps are accepted for legacy replay compatibility and normalized before execution.","x-transloadit-description-id":"replaySteps"}},"type":"object","x-transloadit-schema-id":"sha256:4d7b727780bbd440ac6badfb50448cd58150f2f5d15740a9a4bef70fb652dcb4"},"Schema_4e26553b40ceb7f4fccba1cb4f658b1497c18e9b47d825e006083381740d4576":{"allOf":[{"pattern":"^(([0-9][0-9][2468][048]|[0-9][0-9][13579][26]|[0-9][0-9]0[48]|[02468][048]00|[13579][26]00)-02-29|[0-9]{4}-((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01])|(0[469]|11)-(0[1-9]|[12][0-9]|30)|(02)-(0[1-9]|1[0-9]|2[0-8])))T([01][0-9]|2[0-3]):[0-5][0-9](:[0-5][0-9](\\.[0-9]+)?)?(Z)$"}],"type":"string","x-transloadit-schema-id":"sha256:4e26553b40ceb7f4fccba1cb4f658b1497c18e9b47d825e006083381740d4576"},"Schema_4e62d6446b6f1588fecf8b9d2712fda800d91985ada2c079608909f01bf82f74":{"anyOf":[{"additionalProperties":false,"description":"Parameters used to create an Assembly from direct Steps or a Template.","properties":{"auth":{"$ref":"#/components/schemas/Schema_60a515d1466d284f324d77d1768a853952ed999d25a4dc4cb093854ed9ec4944"},"emit_execution_progress":{"description":"Set to true to publish real-time Assembly execution-progress events. This is ignored for URL Transform Assemblies.","type":"boolean","x-transloadit-description-id":"assemblyEmitExecutionProgress"},"exiftool_stack":{"description":"Selects the ExifTool stack for metadata extraction in this Assembly. This does not select the processing stack for Robot Steps.","type":"string","x-transloadit-description-id":"assemblyExifToolStack"},"ffmpeg_stack":{"description":"Selects the FFmpeg stack for metadata extraction in this Assembly. This does not select the processing stack for Robot Steps. Set `ffmpeg_stack` on the relevant Robot Step to select its processing stack.","type":"string","x-transloadit-description-id":"assemblyFfmpegStack"},"fields":{"additionalProperties":{},"description":"An object of string keyed values (name -> value) that can be used as Assembly Variables, just like additional form fields can. You can use anything that is JSON stringifyable as a value","type":"object","x-transloadit-description-id":"fields"},"imagemagick_stack":{"$ref":"#/components/schemas/Schema_b2e283538c4e607989f814842d7e5731dbf4015ee0b6ce2127466b40abe570a5"},"mediainfo_stack":{"description":"Selects the MediaInfo stack for metadata extraction in this Assembly. This does not select the processing stack for Robot Steps.","type":"string","x-transloadit-description-id":"assemblyMediaInfoStack"},"mplayer_stack":{"description":"Selects the MPlayer stack for metadata extraction in this Assembly. This does not select the processing stack for Robot Steps.","type":"string","x-transloadit-description-id":"assemblyMplayerStack"},"nonce":{"anyOf":[{"type":"string"},{"type":"number"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"},"notification_payload":{"$ref":"#/components/schemas/Schema_efbf8447b0e33ce6d1e83a4e99e9aa42b3e5c98f04cf9ac3ed20945d2f5f1418"},"notify_url":{"$ref":"#/components/schemas/Schema_8656748a7135431e1adb16edf042a7f48c05f2aebc63ce14a909b328c4237055"},"quiet":{"$ref":"#/components/schemas/Schema_640852d600ac7ff0ae7ff853698d478d89ad236b8f0715aa2b5f8845b59d295c"},"redirect_url":{"description":"URL to redirect a browser upload to after the upload completes. The Assembly ID and status URL are appended as query parameters while preserving any existing query parameters and fragment.","type":"string","x-transloadit-description-id":"assemblyRedirectUrl"},"response_headers":{"$ref":"#/components/schemas/Schema_52cdb9ef2a9764ffd8c83d0803e381ee4dbb6d05afe69cf68844ae7ebacc9821"},"steps":{"additionalProperties":{"additionalProperties":true,"properties":{"robot":{"enum":["/ai/chat","/audio/artwork","/audio/concat","/audio/encode","/audio/loop","/audio/merge","/audio/split","/audio/waveform","/azure/import","/azure/store","/backblaze/import","/backblaze/store","/box/import","/box/store","/cloudfiles/import","/cloudfiles/store","/cloudflare/import","/cloudflare/store","/digitalocean/import","/digitalocean/store","/document/autorotate","/document/convert","/document/extract","/document/merge","/document/ocr","/document/optimize","/document/split","/document/thumbs","/dropbox/import","/dropbox/store","/edgly/deliver","/file/compress","/file/decompress","/file/filter","/file/hash","/file/preview","/file/read","/file/serve","/file/verify","/file/virusscan","/ftp/import","/ftp/store","/google/import","/google/store","/html/convert","/http/import","/http/request","/image/bgremove","/image/copyrightdetect","/image/describe","/image/enhance","/image/facedetect","/image/generate","/image/merge","/image/ocr","/image/optimize","/image/resize","/image/upscale","/mega/import","/mega/store","/meta/write","/minio/import","/minio/store","/s3/import","/s3/store","/script/run","/sftp/import","/sftp/store","/speech/transcribe","/supabase/import","/supabase/store","/swift/import","/swift/store","/text/speak","/text/translate","/tigris/import","/tigris/store","/tlcdn/deliver","/transloadit/import","/transloadit/store","/tus/store","/upload/handle","/video/adaptive","/video/artwork","/video/concat","/video/encode","/video/generate","/video/merge","/video/ondemand","/video/split","/video/subtitle","/video/thumbs","/vimeo/import","/vimeo/store","/wasabi/import","/wasabi/store","/youtube/store"],"type":"string"}},"type":"object"},"description":"Partial Step values merged into the named Steps of the stored Template. Their complete Robot-specific shape is validated after the Template is loaded.","type":"object","x-transloadit-description-id":"assemblyStepOverrides"},"template_id":{"description":"The ID of the Template that contains your Assembly Instructions. If you set `allow_steps_override` to `false` in your Template, then `steps` and `template_id` will be mutually exclusive: you may supply only one of these parameters.","minLength":1,"type":"string","x-transloadit-description-id":"templateId"},"usage_tags":{"description":"Usage tags recorded on an Assembly.","type":"string","x-transloadit-description-id":"assemblyUsageTags"}},"required":["auth","steps","template_id"],"type":"object","x-transloadit-description-id":"assemblyCreateParams"},{"additionalProperties":false,"description":"Parameters used to create an Assembly from direct Steps or a Template.","properties":{"auth":{"$ref":"#/components/schemas/Schema_60a515d1466d284f324d77d1768a853952ed999d25a4dc4cb093854ed9ec4944"},"emit_execution_progress":{"description":"Set to true to publish real-time Assembly execution-progress events. This is ignored for URL Transform Assemblies.","type":"boolean","x-transloadit-description-id":"assemblyEmitExecutionProgress"},"exiftool_stack":{"description":"Selects the ExifTool stack for metadata extraction in this Assembly. This does not select the processing stack for Robot Steps.","type":"string","x-transloadit-description-id":"assemblyExifToolStack"},"ffmpeg_stack":{"description":"Selects the FFmpeg stack for metadata extraction in this Assembly. This does not select the processing stack for Robot Steps. Set `ffmpeg_stack` on the relevant Robot Step to select its processing stack.","type":"string","x-transloadit-description-id":"assemblyFfmpegStack"},"fields":{"additionalProperties":{},"description":"An object of string keyed values (name -> value) that can be used as Assembly Variables, just like additional form fields can. You can use anything that is JSON stringifyable as a value","type":"object","x-transloadit-description-id":"fields"},"imagemagick_stack":{"$ref":"#/components/schemas/Schema_b2e283538c4e607989f814842d7e5731dbf4015ee0b6ce2127466b40abe570a5"},"mediainfo_stack":{"description":"Selects the MediaInfo stack for metadata extraction in this Assembly. This does not select the processing stack for Robot Steps.","type":"string","x-transloadit-description-id":"assemblyMediaInfoStack"},"mplayer_stack":{"description":"Selects the MPlayer stack for metadata extraction in this Assembly. This does not select the processing stack for Robot Steps.","type":"string","x-transloadit-description-id":"assemblyMplayerStack"},"nonce":{"anyOf":[{"type":"string"},{"type":"number"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"},"notification_payload":{"$ref":"#/components/schemas/Schema_efbf8447b0e33ce6d1e83a4e99e9aa42b3e5c98f04cf9ac3ed20945d2f5f1418"},"notify_url":{"$ref":"#/components/schemas/Schema_8656748a7135431e1adb16edf042a7f48c05f2aebc63ce14a909b328c4237055"},"quiet":{"$ref":"#/components/schemas/Schema_640852d600ac7ff0ae7ff853698d478d89ad236b8f0715aa2b5f8845b59d295c"},"redirect_url":{"description":"URL to redirect a browser upload to after the upload completes. The Assembly ID and status URL are appended as query parameters while preserving any existing query parameters and fragment.","type":"string","x-transloadit-description-id":"assemblyRedirectUrl"},"response_headers":{"$ref":"#/components/schemas/Schema_52cdb9ef2a9764ffd8c83d0803e381ee4dbb6d05afe69cf68844ae7ebacc9821"},"steps":{"allOf":[{"$ref":"#/components/schemas/Schema_97aad3d37f5046edcb335db4458316ce19e3edbaf9c9f74754f078aae9e99450"}],"description":"Contains Assembly Instructions.","x-transloadit-description-id":"assemblyInstructions"},"template_id":{"description":"The ID of the Template that contains your Assembly Instructions. If you set `allow_steps_override` to `false` in your Template, then `steps` and `template_id` will be mutually exclusive: you may supply only one of these parameters.","type":"string","x-transloadit-description-id":"templateId"},"usage_tags":{"description":"Usage tags recorded on an Assembly.","type":"string","x-transloadit-description-id":"assemblyUsageTags"}},"required":["auth"],"type":"object","x-transloadit-description-id":"assemblyCreateParams"}],"description":"Signed parameters used to create an Assembly from direct Steps or a Template.","x-transloadit-description-id":"signedAssemblyCreateParams","x-transloadit-schema-id":"sha256:4e62d6446b6f1588fecf8b9d2712fda800d91985ada2c079608909f01bf82f74"},"Schema_4f394a53613aec509099e13fb8b3936a55c804f705a83948f03818a3f17c379e":{"additionalProperties":false,"properties":{"asset_id":{"description":"Case-sensitive, canonical 22-character Base64URL DAM identifier.","pattern":"^[A-Za-z0-9_-]{21}[AQgw]$","type":"string","x-transloadit-description-id":"damId"},"deleted_at":{"allOf":[{"pattern":"^(([0-9][0-9][2468][048]|[0-9][0-9][13579][26]|[0-9][0-9]0[48]|[02468][048]00|[13579][26]00)-02-29|[0-9]{4}-((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01])|(0[469]|11)-(0[1-9]|[12][0-9]|30)|(02)-(0[1-9]|1[0-9]|2[0-8])))T([01][0-9]|2[0-3]):[0-5][0-9](:[0-5][0-9](\\.[0-9]+)?)?(Z)$"}],"type":"string"},"message":{"minLength":1,"type":"string"},"ok":{"const":"DAM_ASSET_DELETED","type":"string"}},"required":["asset_id","deleted_at","message","ok"],"type":"object","x-transloadit-schema-id":"sha256:4f394a53613aec509099e13fb8b3936a55c804f705a83948f03818a3f17c379e"},"Schema_4f5da1519725aabe0787c2784a2d9cc0510dbbfb66f5d569071a349ac67a2c6c":{"anyOf":[{"additionalProperties":true,"description":"Your Template Credentials could not be updated.","properties":{"error":{"const":"TEMPLATE_CREDENTIALS_NOT_UPDATED","type":"string"},"http_code":{"const":400,"type":"number"},"message":{"description":"Human-readable explanation of the error. Its wording can vary; use the `error` code when handling a specific failure.","type":"string","x-transloadit-description-id":"api2ErrorMessage"}},"required":["error"],"type":"object","x-transloadit-description-id":"api2ErrorTemplateCredentialsNotUpdated"},{"allOf":[{"$ref":"#/components/schemas/Schema_cb07bdaec8a57b18babcb0842531069c047ea76747de30cb3433ec3ab53763cb"}]}],"x-transloadit-schema-id":"sha256:4f5da1519725aabe0787c2784a2d9cc0510dbbfb66f5d569071a349ac67a2c6c"},"Schema_4fb18cd0e41d8e4db90e4e8fa29e9666244b58c14a528d3182cb726ec6bfb68f":{"anyOf":[{"allOf":[{"pattern":"^(([0-9][0-9][2468][048]|[0-9][0-9][13579][26]|[0-9][0-9]0[48]|[02468][048]00|[13579][26]00)-02-29|[0-9]{4}-((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01])|(0[469]|11)-(0[1-9]|[12][0-9]|30)|(02)-(0[1-9]|1[0-9]|2[0-8])))T([01][0-9]|2[0-3]):[0-5][0-9](:[0-5][0-9](\\.[0-9]+)?)?(Z)$"}],"type":"string"},{"type":"null"}],"x-transloadit-schema-id":"sha256:4fb18cd0e41d8e4db90e4e8fa29e9666244b58c14a528d3182cb726ec6bfb68f"},"Schema_4fdf6ef1979b9cbe0906cc3ce47c7ed08a7edfc1a03e0d8fed2e57d8649ddaf1":{"description":"Whether the image has transparent areas. Set `output_meta.has_transparency` to `true` to request transparency inspection. Known-false values, such as `false` for JPEG images, can be returned even when this option is omitted or `false`. Setting `output_meta` itself to `false` skips additional metadata extraction; basic file type and size checks can still run.","type":["boolean","null"],"x-transloadit-description-id":"assemblyStatusMetaHasTransparency","x-transloadit-schema-id":"sha256:4fdf6ef1979b9cbe0906cc3ce47c7ed08a7edfc1a03e0d8fed2e57d8649ddaf1"},"Schema_5052eed04caf4a479c4755d89f58bf14b6f653aba94524691a6e08a0d151721e":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nPlease create your associated <dfn>Template Credentials</dfn> in your Transloadit account and use the name of your [Template Credentials](/c/template-credentials/) as this parameter's value. They will contain the values for your Cloud Files Container, User, Key, Account type and Data center.\n\nWhile we recommend to use <dfn>Template Credentials</dfn> at all times, some use cases demand dynamic credentials for which using <dfn>Template Credentials</dfn> is too unwieldy because of their static nature. If you have this requirement, feel free to use the following parameters instead: `\"account_type\"` (\"us\" or \"uk\"), `\"data_center\"` (\"dfw\" for Dallas or \"ord\" for Chicago for example), `\"user\"`, `\"key\"`, `\"container\"`.\n","x-transloadit-schema-id":"sha256:5052eed04caf4a479c4755d89f58bf14b6f653aba94524691a6e08a0d151721e"},"Schema_51c0c37ad30682e643ed8c42b6549dcdc58c0a40bc20a80edffd90f306774799":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"$ref":"#/components/schemas/Schema_d10c75b8416036a412d719f3270a8e7c55c3e7241fea58efd7ba559263a2a8f6"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]}],"description":"\nSpecify an object containing coordinates for the top left and bottom right corners of the rectangle to be cropped from the original video(s). Values can be integers for absolute pixel values or strings for percentage based values.\n\nFor example:\n\n```json\n{\n  \"x1\": 80,\n  \"y1\": 100,\n  \"x2\": \"60%\",\n  \"y2\": \"80%\"\n}\n```\n\nThis will crop the area from `(80, 100)` to `(600, 800)` from a 1000×1000 pixels video, which is a square whose width is 520px and height is 700px. If `crop` is set, the width and height parameters are ignored, and the `resize_strategy` is set to `crop` automatically.\n\nYou can also use a JSON string of such an object with coordinates in similar fashion:\n\n```json\n\"{\\\"x1\\\": <Integer>, \\\"y1\\\": <Integer>, \\\"x2\\\": <Integer>, \\\"y2\\\": <Integer>}\"\n```\n","x-transloadit-schema-id":"sha256:51c0c37ad30682e643ed8c42b6549dcdc58c0a40bc20a80edffd90f306774799"},"Schema_52cdb9ef2a9764ffd8c83d0803e381ee4dbb6d05afe69cf68844ae7ebacc9821":{"additionalProperties":true,"description":"Custom response headers emitted by an Assembly. CORS overrides belong in `cors`; other top-level keys are emitted as custom headers.","properties":{"cors":{"additionalProperties":true,"properties":{"Access-Control-Allow-Credentials":{"type":"boolean"},"Access-Control-Allow-Headers":{"type":"string"},"Access-Control-Allow-Methods":{"type":"string"},"Access-Control-Allow-Origin":{"type":"string"},"Access-Control-Allow-Private-Network":{"type":"boolean"},"Access-Control-Allow-Public-Network":{"type":"boolean"},"Access-Control-Expose-Headers":{"type":"string"},"Access-Control-Max-Age":{"type":"number"}},"type":"object"}},"type":"object","x-transloadit-description-id":"assemblyResponseHeaders","x-transloadit-schema-id":"sha256:52cdb9ef2a9764ffd8c83d0803e381ee4dbb6d05afe69cf68844ae7ebacc9821"},"Schema_53beca5e62a1eebdfb1a706f8822f907e8b3c0aa0cc032c54f82d2545aae5630":{"additionalProperties":false,"properties":{"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for a Storage metadata request.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"type":"object","x-transloadit-description-id":"damReadAuth"},"cursor":{"description":"Opaque continuation value from next_cursor in the previous response. Keep the same prefix while paging. Omit for the first page.","maxLength":512,"minLength":1,"type":"string","x-transloadit-description-id":"storedAssetsListCursor"},"limit":{"default":100,"description":"Maximum number of assets per page. Defaults to 100 and accepts up to 500; follow next_cursor until null.","maximum":500,"minimum":1,"type":"integer","x-transloadit-description-id":"storedAssetsListLimit"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"},"prefix":{"default":"","description":"Only list current asset paths starting with this case-sensitive prefix. The empty default includes the whole Workspace; include a trailing slash to select a directory boundary.","maxLength":512,"type":"string","x-transloadit-description-id":"storedAssetsListPrefix"}},"type":"object","x-transloadit-schema-id":"sha256:53beca5e62a1eebdfb1a706f8822f907e8b3c0aa0cc032c54f82d2545aae5630"},"Schema_54b7efa14685483f18a4ce6218bf13b9d3acda9c88f6de43b469c7cae2b8ee42":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"maximum":65535,"minimum":1,"type":"integer"}],"default":21,"description":"The port to use for the FTP connection.","x-transloadit-schema-id":"sha256:54b7efa14685483f18a4ce6218bf13b9d3acda9c88f6de43b469c7cae2b8ee42"},"Schema_5676da196f6b41f1c255b8817b30a3d853734c39f57c633f8d302e2f045e4774":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nSplits the video into multiple chunks so that each chunk can be encoded in parallel before all encoded chunks are stitched back together to form the result video. This comes at the expense of extra <dfn>Priority Job Slots</dfn> and may prove to be counter-productive for very small video files.\n","x-transloadit-schema-id":"sha256:5676da196f6b41f1c255b8817b30a3d853734c39f57c633f8d302e2f045e4774"},"Schema_56b30d86ea31500bf844b3c857e7e1087b090f38feb9275f6991048203c04727":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["v3"],"type":"string"}]},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^v?[23](\\.[0-9]+)?(\\.[0-9]+)?$","type":"string"}]}],"default":"v2.0.10","x-transloadit-schema-id":"sha256:56b30d86ea31500bf844b3c857e7e1087b090f38feb9275f6991048203c04727"},"Schema_59548aeadc018a947ea5f8baf2a1739106845dba53418f042e990d0da44a8dfc":{"description":"The detected media colorspace, such as `\"sRGB\"` or `\"Gray\"`. Video colorspace is available when detected while metadata extraction is enabled; it does not require `output_meta.colorspace: true`. Setting `output_meta: false` disables metadata extraction.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusMetaColorspace","x-transloadit-schema-id":"sha256:59548aeadc018a947ea5f8baf2a1739106845dba53418f042e990d0da44a8dfc"},"Schema_595e00b6483c79caf575ce838e4163db37acaa8302be457463b5f82fe3dd607f":{"anyOf":[{"additionalProperties":false,"description":"Parameters used to create an Assembly from direct Steps or a Template.","properties":{"auth":{"$ref":"#/components/schemas/Schema_06fe2325d4d36556a72ff5a83da3dad02e83587ee09a458f85f1d2964ff06dda"},"emit_execution_progress":{"description":"Set to true to publish real-time Assembly execution-progress events. This is ignored for URL Transform Assemblies.","type":"boolean","x-transloadit-description-id":"assemblyEmitExecutionProgress"},"exiftool_stack":{"description":"Selects the ExifTool stack for metadata extraction in this Assembly. This does not select the processing stack for Robot Steps.","type":"string","x-transloadit-description-id":"assemblyExifToolStack"},"ffmpeg_stack":{"description":"Selects the FFmpeg stack for metadata extraction in this Assembly. This does not select the processing stack for Robot Steps. Set `ffmpeg_stack` on the relevant Robot Step to select its processing stack.","type":"string","x-transloadit-description-id":"assemblyFfmpegStack"},"fields":{"additionalProperties":{},"description":"An object of string keyed values (name -> value) that can be used as Assembly Variables, just like additional form fields can. You can use anything that is JSON stringifyable as a value","type":"object","x-transloadit-description-id":"fields"},"imagemagick_stack":{"$ref":"#/components/schemas/Schema_b2e283538c4e607989f814842d7e5731dbf4015ee0b6ce2127466b40abe570a5"},"mediainfo_stack":{"description":"Selects the MediaInfo stack for metadata extraction in this Assembly. This does not select the processing stack for Robot Steps.","type":"string","x-transloadit-description-id":"assemblyMediaInfoStack"},"mplayer_stack":{"description":"Selects the MPlayer stack for metadata extraction in this Assembly. This does not select the processing stack for Robot Steps.","type":"string","x-transloadit-description-id":"assemblyMplayerStack"},"nonce":{"anyOf":[{"type":"string"},{"type":"number"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"},"notification_payload":{"$ref":"#/components/schemas/Schema_efbf8447b0e33ce6d1e83a4e99e9aa42b3e5c98f04cf9ac3ed20945d2f5f1418"},"notify_url":{"$ref":"#/components/schemas/Schema_8656748a7135431e1adb16edf042a7f48c05f2aebc63ce14a909b328c4237055"},"quiet":{"$ref":"#/components/schemas/Schema_640852d600ac7ff0ae7ff853698d478d89ad236b8f0715aa2b5f8845b59d295c"},"redirect_url":{"description":"URL to redirect a browser upload to after the upload completes. The Assembly ID and status URL are appended as query parameters while preserving any existing query parameters and fragment.","type":"string","x-transloadit-description-id":"assemblyRedirectUrl"},"response_headers":{"$ref":"#/components/schemas/Schema_52cdb9ef2a9764ffd8c83d0803e381ee4dbb6d05afe69cf68844ae7ebacc9821"},"steps":{"additionalProperties":{"additionalProperties":true,"properties":{"robot":{"enum":["/ai/chat","/audio/artwork","/audio/concat","/audio/encode","/audio/loop","/audio/merge","/audio/split","/audio/waveform","/azure/import","/azure/store","/backblaze/import","/backblaze/store","/box/import","/box/store","/cloudfiles/import","/cloudfiles/store","/cloudflare/import","/cloudflare/store","/digitalocean/import","/digitalocean/store","/document/autorotate","/document/convert","/document/extract","/document/merge","/document/ocr","/document/optimize","/document/split","/document/thumbs","/dropbox/import","/dropbox/store","/edgly/deliver","/file/compress","/file/decompress","/file/filter","/file/hash","/file/preview","/file/read","/file/serve","/file/verify","/file/virusscan","/ftp/import","/ftp/store","/google/import","/google/store","/html/convert","/http/import","/http/request","/image/bgremove","/image/copyrightdetect","/image/describe","/image/enhance","/image/facedetect","/image/generate","/image/merge","/image/ocr","/image/optimize","/image/resize","/image/upscale","/mega/import","/mega/store","/meta/write","/minio/import","/minio/store","/s3/import","/s3/store","/script/run","/sftp/import","/sftp/store","/speech/transcribe","/supabase/import","/supabase/store","/swift/import","/swift/store","/text/speak","/text/translate","/tigris/import","/tigris/store","/tlcdn/deliver","/transloadit/import","/transloadit/store","/tus/store","/upload/handle","/video/adaptive","/video/artwork","/video/concat","/video/encode","/video/generate","/video/merge","/video/ondemand","/video/split","/video/subtitle","/video/thumbs","/vimeo/import","/vimeo/store","/wasabi/import","/wasabi/store","/youtube/store"],"type":"string"}},"type":"object"},"description":"Partial Step values merged into the named Steps of the stored Template. Their complete Robot-specific shape is validated after the Template is loaded.","type":"object","x-transloadit-description-id":"assemblyStepOverrides"},"template_id":{"description":"The ID of the Template that contains your Assembly Instructions. If you set `allow_steps_override` to `false` in your Template, then `steps` and `template_id` will be mutually exclusive: you may supply only one of these parameters.","minLength":1,"type":"string","x-transloadit-description-id":"templateId"},"usage_tags":{"description":"Usage tags recorded on an Assembly.","type":"string","x-transloadit-description-id":"assemblyUsageTags"}},"required":["steps","template_id"],"type":"object","x-transloadit-description-id":"assemblyCreateParams"},{"additionalProperties":false,"description":"Parameters used to create an Assembly from direct Steps or a Template.","properties":{"auth":{"$ref":"#/components/schemas/Schema_06fe2325d4d36556a72ff5a83da3dad02e83587ee09a458f85f1d2964ff06dda"},"emit_execution_progress":{"description":"Set to true to publish real-time Assembly execution-progress events. This is ignored for URL Transform Assemblies.","type":"boolean","x-transloadit-description-id":"assemblyEmitExecutionProgress"},"exiftool_stack":{"description":"Selects the ExifTool stack for metadata extraction in this Assembly. This does not select the processing stack for Robot Steps.","type":"string","x-transloadit-description-id":"assemblyExifToolStack"},"ffmpeg_stack":{"description":"Selects the FFmpeg stack for metadata extraction in this Assembly. This does not select the processing stack for Robot Steps. Set `ffmpeg_stack` on the relevant Robot Step to select its processing stack.","type":"string","x-transloadit-description-id":"assemblyFfmpegStack"},"fields":{"additionalProperties":{},"description":"An object of string keyed values (name -> value) that can be used as Assembly Variables, just like additional form fields can. You can use anything that is JSON stringifyable as a value","type":"object","x-transloadit-description-id":"fields"},"imagemagick_stack":{"$ref":"#/components/schemas/Schema_b2e283538c4e607989f814842d7e5731dbf4015ee0b6ce2127466b40abe570a5"},"mediainfo_stack":{"description":"Selects the MediaInfo stack for metadata extraction in this Assembly. This does not select the processing stack for Robot Steps.","type":"string","x-transloadit-description-id":"assemblyMediaInfoStack"},"mplayer_stack":{"description":"Selects the MPlayer stack for metadata extraction in this Assembly. This does not select the processing stack for Robot Steps.","type":"string","x-transloadit-description-id":"assemblyMplayerStack"},"nonce":{"anyOf":[{"type":"string"},{"type":"number"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"},"notification_payload":{"$ref":"#/components/schemas/Schema_efbf8447b0e33ce6d1e83a4e99e9aa42b3e5c98f04cf9ac3ed20945d2f5f1418"},"notify_url":{"$ref":"#/components/schemas/Schema_8656748a7135431e1adb16edf042a7f48c05f2aebc63ce14a909b328c4237055"},"quiet":{"$ref":"#/components/schemas/Schema_640852d600ac7ff0ae7ff853698d478d89ad236b8f0715aa2b5f8845b59d295c"},"redirect_url":{"description":"URL to redirect a browser upload to after the upload completes. The Assembly ID and status URL are appended as query parameters while preserving any existing query parameters and fragment.","type":"string","x-transloadit-description-id":"assemblyRedirectUrl"},"response_headers":{"$ref":"#/components/schemas/Schema_52cdb9ef2a9764ffd8c83d0803e381ee4dbb6d05afe69cf68844ae7ebacc9821"},"steps":{"allOf":[{"$ref":"#/components/schemas/Schema_97aad3d37f5046edcb335db4458316ce19e3edbaf9c9f74754f078aae9e99450"}],"description":"Contains Assembly Instructions.","x-transloadit-description-id":"assemblyInstructions"},"template_id":{"description":"The ID of the Template that contains your Assembly Instructions. If you set `allow_steps_override` to `false` in your Template, then `steps` and `template_id` will be mutually exclusive: you may supply only one of these parameters.","type":"string","x-transloadit-description-id":"templateId"},"usage_tags":{"description":"Usage tags recorded on an Assembly.","type":"string","x-transloadit-description-id":"assemblyUsageTags"}},"type":"object","x-transloadit-description-id":"assemblyCreateParams"}],"description":"Parameters used to create an Assembly from direct Steps or a Template.","x-transloadit-description-id":"assemblyCreateParams","x-transloadit-schema-id":"sha256:595e00b6483c79caf575ce838e4163db37acaa8302be457463b5f82fe3dd607f"},"Schema_59c75a0176439578ed0046b2a9926dfb45a391998622d22ef14cad17b954c691":{"additionalProperties":false,"properties":{"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for a Template Credentials request.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"required":["expires","key"],"type":"object","x-transloadit-description-id":"templateCredentialsAuth"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"}},"required":["auth"],"type":"object","x-transloadit-schema-id":"sha256:59c75a0176439578ed0046b2a9926dfb45a391998622d22ef14cad17b954c691"},"Schema_5a5720fce62d62d631fea01984a62a4f36ef024049b713ef7d673713a081b806":{"description":"The unique ID of this Assembly. You can store this in a database when an\nAssembly is created, and use it to match incoming Notifications.","type":"string","x-transloadit-description-id":"assemblyStatusResponseAssemblyId","x-transloadit-schema-id":"sha256:5a5720fce62d62d631fea01984a62a4f36ef024049b713ef7d673713a081b806"},"Schema_5af4bd9e1a35cca220e3cc528858c6dd4ea8f0e153b820e6d47ca9f386ff1007":{"anyOf":[{"additionalProperties":true,"description":"Your Template Credentials could not be deleted.","properties":{"error":{"const":"TEMPLATE_CREDENTIALS_NOT_DELETED","type":"string"},"http_code":{"const":400,"type":"number"},"message":{"description":"Human-readable explanation of the error. Its wording can vary; use the `error` code when handling a specific failure.","type":"string","x-transloadit-description-id":"api2ErrorMessage"}},"required":["error"],"type":"object","x-transloadit-description-id":"api2ErrorTemplateCredentialsNotDeleted"},{"allOf":[{"$ref":"#/components/schemas/Schema_cb07bdaec8a57b18babcb0842531069c047ea76747de30cb3433ec3ab53763cb"}]}],"x-transloadit-schema-id":"sha256:5af4bd9e1a35cca220e3cc528858c6dd4ea8f0e153b820e6d47ca9f386ff1007"},"Schema_5d113597e4390c8a8a103f3a41e796804dca48410d929c8a8bed6822cde5cabc":{"additionalProperties":false,"properties":{"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for an Assembly Notification replay.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"required":["expires","key"],"type":"object","x-transloadit-description-id":"notificationReplayAuth"},"fields":{"additionalProperties":{},"description":"Values available to placeholders in the notification URL used for this replay. Original Assembly field values are not inherited. Resupply any fields needed by the URL template; missing placeholders are replaced with empty strings.","type":"object","x-transloadit-description-id":"notificationReplayFields"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"},"notify_url":{"description":"Overrides the original Assembly notification URL for this replay. Omission, null, or an empty string reuses the original URL template, not its previously resolved URL. Field placeholders are evaluated again using only replay-supplied fields. Resupply any required fields or pass the desired resolved URL.","type":["null","string"],"x-transloadit-description-id":"notificationReplayNotifyUrl"},"wait":{"description":"Waits for replay execution to finish. Omission defaults to true; false returns immediately after starting it. A successful replay API response does not confirm Webhook delivery, even when true. Check the recorded delivery status and response_code in the Assembly Notification listing.","type":"boolean","x-transloadit-description-id":"notificationWait"}},"required":["auth"],"type":"object","x-transloadit-schema-id":"sha256:5d113597e4390c8a8a103f3a41e796804dca48410d929c8a8bed6822cde5cabc"},"Schema_5e2549762be307b1046da493dc434f600e439b3460bb013fab20c2b5e04b953d":{"additionalProperties":false,"properties":{"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for an Auth Keys request.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"required":["expires","key"],"type":"object","x-transloadit-description-id":"authKeysAuth"},"description":{"description":"Human-readable Auth Key description. Characters outside Unicode’s Basic Multilingual Plane, including most emoji, are not supported.","maxLength":255,"pattern":"^[\u0000-퟿-￿]*$","type":"string","x-transloadit-description-id":"authKeyDescription"},"is_active":{"anyOf":[{"type":"boolean"},{"const":0,"type":"number"},{"const":1,"type":"number"}],"description":"Whether this Auth Key is active.","x-transloadit-description-id":"authKeyActive"},"is_allowed_for_smartcdn":{"anyOf":[{"type":"boolean"},{"const":0,"type":"number"},{"const":1,"type":"number"}],"description":"Whether this Auth Key can authenticate Smart CDN URLs in addition to ordinary API requests and bearer-token issuance. Each operation still requires its own scope. On creation, omission defaults to false. On update, omission keeps the current value; send false explicitly to disable Smart CDN use.","x-transloadit-description-id":"authKeySmartCdnAllowed"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"},"scope":{"description":"Comma-separated Auth Key scopes. Duplicate scopes are normalized by API2.","pattern":"^(?:[\\x09-\\x0D\\x20\\xA0                　﻿]*,)*[\\x09-\\x0D\\x20\\xA0                　﻿]*(?:read|write|auth_keys:write|auth_keys:read|assemblies:write|assemblies:read|assembly_notifications:write|dam:read|dam:write|template_credentials:read|template_credentials:write|billing:read|queues:read|smart_cdn:sign|templates:read|templates:write|storage_grants:write)[\\x09-\\x0D\\x20\\xA0                　﻿]*(?:,[\\x09-\\x0D\\x20\\xA0                　﻿]*(?:(?:read|write|auth_keys:write|auth_keys:read|assemblies:write|assemblies:read|assembly_notifications:write|dam:read|dam:write|template_credentials:read|template_credentials:write|billing:read|queues:read|smart_cdn:sign|templates:read|templates:write|storage_grants:write)[\\x09-\\x0D\\x20\\xA0                　﻿]*)?)*$","type":"string","x-transloadit-description-id":"authKeyScopes"},"signature_algo":{"anyOf":[{"description":"HMAC algorithm used to sign requests with this Auth Key. On creation, ordinary API keys default to `sha384`. Smart CDN keys accept only `sha256` or `null` and default to `null`. On update, omission keeps the current value, except that enabling Smart CDN resets an incompatible algorithm to `null`.","enum":["sha1","sha256","sha384"],"type":"string","x-transloadit-description-id":"authKeySignatureAlgorithm"},{"type":"null"}],"description":"HMAC algorithm used to sign requests with this Auth Key. On creation, ordinary API keys default to `sha384`. Smart CDN keys accept only `sha256` or `null` and default to `null`. On update, omission keeps the current value, except that enabling Smart CDN resets an incompatible algorithm to `null`.","x-transloadit-description-id":"authKeySignatureAlgorithm"}},"required":["auth"],"type":"object","x-transloadit-schema-id":"sha256:5e2549762be307b1046da493dc434f600e439b3460bb013fab20c2b5e04b953d"},"Schema_5f01fb4b01d66fe04acae4dc72c06c3e596b90bfdb69032701207eeaf3b20dac":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nSplits the file into multiple parts, to be used for Apple's [HTTP Live Streaming](https://developer.apple.com/resources/http-streaming/).\n","x-transloadit-schema-id":"sha256:5f01fb4b01d66fe04acae4dc72c06c3e596b90bfdb69032701207eeaf3b20dac"},"Schema_5fcc25a95bdd44695843249e31fe50ad080491e44a146346b64463b656defd54":{"additionalProperties":true,"properties":{"message":{"minLength":1,"type":"string"},"ok":{"const":"AUTH_KEY_DELETED","type":"string"}},"required":["message","ok"],"type":"object","x-transloadit-schema-id":"sha256:5fcc25a95bdd44695843249e31fe50ad080491e44a146346b64463b656defd54"},"Schema_60a515d1466d284f324d77d1768a853952ed999d25a4dc4cb093854ed9ec4944":{"additionalProperties":false,"description":"Authentication metadata and upload constraints for a signed Assembly request. The API key is required.\n\nContains at least your Transloadit Auth Key in the `key` property.\n\nIf you enable Signature Authentication, you must also set an expiry date for the request in the expires property:\n\n```jsonc\n{\n  \"key\": \"23c96d084c744219a2ce156772ec3211\",\n  \"expires\": \"YOUR_FUTURE_ISO_8601_TIMESTAMP\"\n}\n```\n\nWe strongly recommend including a randomly generated `params.nonce` value for each request at the top level of `params`. This makes independently generated signatures distinct and avoids accidental signature reuse. A `nonce` does not make retries idempotent: retrying an Assembly-creation request can create another Assembly. Handle retry deduplication in your application when needed. Do not reuse signed `params` across endpoints. Template reads, Auth Key listing, Template Credential listing, and billing reads reject signatures already recorded for a different endpoint or used to create an Assembly, with `SIGNATURE_REUSE_DETECTED`. Generate fresh signed params for each request.\n\n```jsonc\n{\n  \"auth\": {\n    \"key\": \"23c96d084c744219a2ce156772ec3211\",\n    \"expires\": \"YOUR_FUTURE_ISO_8601_TIMESTAMP\"\n  },\n  \"nonce\": \"04ac6cb6-df43-41fb-a7fd-e5dd711a64e1\"\n}\n```\n\nThe `referer` property is a regular expression to match against the HTTP referer of this upload, such as `\"example\\.org\"`. Use it to check supplied Referer values against an expected domain.\n\nUploads without a referer will always pass (as they are turned off for some browsers) making this useful in just a handful of use cases. For details about regular expressions, see [Mozilla's RegExp documentation](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/RegExp).\n\nInvalid regular expressions and expressions that exceed the evaluation time limit are rejected. This check is not a substitute for Signature Authentication: clients can omit or forge the Referer header.\n\nThe `max_size` property limits the Assembly’s total expected upload size in bytes, such as `1048576` (1 MB), rather than each file separately. This includes the multipart request body, or the initial Assembly request bytes plus its resumable uploads. Exceeding the limit stops the entire Assembly with an error, including files that individually fit within the limit.\nDo not rely on this limit to reject every oversized transfer before it starts. For resumable uploads, the declared or received size becomes available through tus updates, and the Assembly checks the limit when a finished upload is processed. A deferred upload’s size is not known at creation, and bytes may already have transferred before the Assembly rejects it.\nIf you want to just ignore the files that exceed a certain size, but process all others, then please use [🤖/file/filter](https://transloadit.com/docs/robots/file-filter/).\n\nThe `max_number_of_files` property can be used to set a maximum number of files that an upload can have, such as `100`. Specify this to prevent users from uploading excessively many files, both via file uploads and via import Robots.\n\nThese properties can be set as part of the Assembly request or as part of the Template.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"},"max_number_of_files":{"description":"Maximum number of input files allowed per Assembly. If the number of uploaded or imported files exceeds this limit, the Assembly will be stopped with an error. This is useful for preventing abuse when Signature Authentication credentials are exposed.","minimum":1,"type":"integer","x-transloadit-description-id":"signatureAuthMaxNumberOfFiles"},"max_size":{"description":"Maximum total expected upload size in bytes for the Assembly, including request-body overhead. This is not a per-file limit and does not guarantee rejection before a resumable transfer starts.","type":"number","x-transloadit-description-id":"signatureAuthMaxSize"},"referer":{"description":"Regular expression matched against a supplied HTTP Referer. Invalid expressions and expressions that exceed the evaluation time limit are rejected. Missing Referer headers pass this check; use Signature Authentication to authenticate requests.","type":"string","x-transloadit-description-id":"signatureAuthReferer"}},"required":["key"],"type":"object","x-transloadit-description-id":"assemblyCreateSignedAuth","x-transloadit-schema-id":"sha256:60a515d1466d284f324d77d1768a853952ed999d25a4dc4cb093854ed9ec4944"},"Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"additionalProperties":{"$ref":"#/components/schemas/Schema_a8213ce4c995e2d44b094b3ea909eddf983764d183e2903635e64aa32732520a"},"type":"object"},{"$ref":"#/components/schemas/Schema_a8213ce4c995e2d44b094b3ea909eddf983764d183e2903635e64aa32732520a"},{"$ref":"#/components/schemas/Schema_bc9fbfc32e2939087e1b877c2b51ce63f08c8cdfdcf7adca01505a0498ab5691"}],"description":"\nAllows you to specify a set of metadata that is more expensive on CPU power to calculate, and thus is disabled by default to keep your Assemblies processing fast.\n\nFor images, you can add `\"has_transparency\": true` in this object to extract if the image contains transparent parts and `\"dominant_colors\": true` to extract an array of hexadecimal color codes from the image.\n\nFor images, you can also add `\"blurhash\": true` to extract a [BlurHash](https://blurha.sh) string — a compact representation of a placeholder for the image, useful for showing a blurred preview while the full image loads.\n\nFor images, `\"thumbhash\": true` instead extracts a base64-encoded [ThumbHash](https://evanw.github.io/thumbhash/) into `meta.thumbhash`, together with `meta.has_alpha` (whether an alpha channel exists, even when fully opaque). It describes EXIF-oriented pixels and uses the first frame of animated images. Extraction is best-effort: images above 40 megapixels, unsupported formats, or a failed/bounded decode produce no placeholder. Successful extraction adds a metadata charge equivalent to 20% of that file's bytes. No ThumbHash surcharge applies when disabled or when no hash is produced.\n\nSet this option on the Step producing the image, such as `/upload/handle` for uploaded originals or `/image/resize` for processed outputs. Setting it only on `/transloadit/store` does not request extraction: storage preserves the producer's metadata. Transloadit Storage persists a generated hash with its immutable version and returns it in stored results and native asset reads. Direct S3 uploads do not generate placeholders. A placeholder contains image information, so protect it with the same access controls as the full image.\n\nFor videos, you can add the `\"colorspace\": true` parameter to extract the colorspace of the output video.\n\nFor videos, you can also add `\"interlaced\": true` to detect whether the video is interlaced. This combines the cheap ffprobe `field_order` flag with a bounded `idet` sampling pass over the first frames of the source, exposing `interlaced`, `field_order`, and a diagnostic `interlace_detection` object under `file.meta`. This is computationally expensive and billed accordingly.\n\nFor audio, you can add `\"mean_volume\": true` to get a single value representing the mean average volume of the audio file.\n\nYou can also set this to `false` to skip metadata extraction and speed up transcoding.\n","x-transloadit-schema-id":"sha256:60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"Schema_6113602e9035ce2ed70abf9c197297cd76cdb648319bbdf9509f7e47bad34bdb":{"additionalProperties":false,"properties":{"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for a DAM mutation.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"type":"object","x-transloadit-description-id":"damMutationAuth"},"destination_folder_id":{"anyOf":[{"description":"Case-sensitive, canonical 22-character Base64URL DAM identifier.","pattern":"^[A-Za-z0-9_-]{21}[AQgw]$","type":"string","x-transloadit-description-id":"damId"},{"type":"null"}],"description":"Destination folder ID. Set to `null` to move the asset to the root. Omit to keep its current folder, for example when only renaming it with `filename`.","x-transloadit-description-id":"damAssetMoveDestination"},"filename":{"description":"New filename without a folder path. Names are normalized to Unicode NFC and remain case-sensitive. Whitespace-only names, `.` or `..`, slashes, backslashes, control characters, and invalid Unicode are rejected. Other leading or trailing spaces are preserved. The combined destination folder and filename must also fit the [asset path limits](/docs/api/dam-assets-asset-id-patch/#asset-path-limits).","maxLength":255,"minLength":1,"type":"string","x-transloadit-description-id":"damAssetMoveFilename"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"}},"type":"object","x-transloadit-schema-id":"sha256:6113602e9035ce2ed70abf9c197297cd76cdb648319bbdf9509f7e47bad34bdb"},"Schema_612e698dda273481ce95cd95dd6b7d141b01f181ceb16bcda793b1c354c67c41":{"additionalProperties":false,"properties":{"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for a Template Credentials request.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"type":"object","x-transloadit-description-id":"templateCredentialsAuth"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"}},"type":"object","x-transloadit-schema-id":"sha256:612e698dda273481ce95cd95dd6b7d141b01f181ceb16bcda793b1c354c67c41"},"Schema_61808f40a326596fd9674ebbd91184b0a2e04f8c67eb49fdf9f9449580271ab8":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"items":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["meta"],"type":"string"}]},"type":"array"}],"default":[],"description":"\nSetting this to `[\"meta\"]` will still import the file on metadata extraction errors. `ignore_errors` is similar, it also ignores the error and makes sure the Robot doesn't stop, but it doesn't import the file.\n","x-transloadit-schema-id":"sha256:61808f40a326596fd9674ebbd91184b0a2e04f8c67eb49fdf9f9449580271ab8"},"Schema_61e4aff610f3824ac8dd05bda1b6369c1adee454f621b634fec0fc92e9d47fca":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":1,"type":"integer"}],"description":"\nAllows you to specify the duration of each chunk when `turbo` is set to `true`. This means you can take advantage of that feature while using fewer <dfn>Priority Job Slots</dfn>. For instance, the longer each chunk is, the fewer <dfn>Encoding Jobs</dfn> will need to be used.\n","x-transloadit-schema-id":"sha256:61e4aff610f3824ac8dd05bda1b6369c1adee454f621b634fec0fc92e9d47fca"},"Schema_640852d600ac7ff0ae7ff853698d478d89ad236b8f0715aa2b5f8845b59d295c":{"description":"Set this to true to minimize the initial Assembly-creation response. A successful response includes only ok and assembly_id; an error response retains error, http_code, message, reason and assembly_id when available. This is response minimization, not access control: anyone with the returned Assembly ID can still retrieve the full Assembly Status, including fields and results, without additional authentication. Treat Assembly IDs and status URLs as secret capabilities. The full Assembly Status is still sent to notify_url when configured.","type":"boolean","x-transloadit-description-id":"quiet","x-transloadit-schema-id":"sha256:640852d600ac7ff0ae7ff853698d478d89ad236b8f0715aa2b5f8845b59d295c"},"Schema_64187d2c5d197bbf686767819d827fe59b36816001ff849e7ed9a50ef83083d4":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"default":"","description":"\nA string token used for pagination. The returned files of one paginated call have the next page token inside of their meta data, which needs to be used for the subsequent paging call.\n","x-transloadit-schema-id":"sha256:64187d2c5d197bbf686767819d827fe59b36816001ff849e7ed9a50ef83083d4"},"Schema_6561742ad8531818ad835d63fdd348612b329189814a3953875b261e98fcb035":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":0,"type":"integer"}],"description":"\nThis parameter provides signed URLs in the result JSON (in the `signed_ssl_url` property). The number that you set this parameter to is the URL expiry time in seconds. If this parameter is not used, no URL signing is done.\n","x-transloadit-schema-id":"sha256:6561742ad8531818ad835d63fdd348612b329189814a3953875b261e98fcb035"},"Schema_65d2319f0e4dd864a88a2861f4117fec3134ec793823ae46f1c2092f90e5e50e":{"additionalProperties":true,"properties":{"content-disposition":{"minLength":1,"type":"string"},"last-modified":{"minLength":1,"type":"string"},"tus-resumable":{"const":"1.0.0","type":"string"},"x-content-type-options":{"const":"nosniff","type":"string"}},"required":["content-disposition","last-modified","tus-resumable","x-content-type-options"],"type":"object","x-transloadit-schema-id":"sha256:65d2319f0e4dd864a88a2861f4117fec3134ec793823ae46f1c2092f90e5e50e"},"Schema_666f02f54d466f201c9f10df8f8aecf760c439dae8ab1c419da2b73ac98ccf02":{"additionalProperties":false,"properties":{"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for a Storage metadata request.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"required":["expires","key"],"type":"object","x-transloadit-description-id":"damReadAuth"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"},"version_id":{"description":"Optional retained version of the selected asset. Omit for the current version. A missing or deleted version returns an error and never falls back to current bytes.","pattern":"^[A-Za-z0-9_-]{21}[AQgw]$","type":"string","x-transloadit-description-id":"storedAssetGetVersionId"}},"required":["auth"],"type":"object","x-transloadit-schema-id":"sha256:666f02f54d466f201c9f10df8f8aecf760c439dae8ab1c419da2b73ac98ccf02"},"Schema_6774bbc3a7fa1b457ac496fe0ef178483df19de3dcd6eddcbb55e86119b5402e":{"anyOf":[{"additionalProperties":true,"description":"Invalid audience.","properties":{"error":{"const":"TOKEN_INVALID_AUDIENCE","type":"string"},"http_code":{"const":403,"type":"number"},"message":{"description":"Human-readable explanation of the error. Its wording can vary; use the `error` code when handling a specific failure.","type":"string","x-transloadit-description-id":"api2ErrorMessage"}},"required":["error"],"type":"object","x-transloadit-description-id":"api2ErrorTokenInvalidAudience"},{"additionalProperties":true,"description":"Invalid or unauthorized scope.","properties":{"error":{"const":"TOKEN_INVALID_SCOPE","type":"string"},"http_code":{"const":403,"type":"number"},"message":{"description":"Human-readable explanation of the error. Its wording can vary; use the `error` code when handling a specific failure.","type":"string","x-transloadit-description-id":"api2ErrorMessage"}},"required":["error"],"type":"object","x-transloadit-description-id":"api2ErrorTokenInvalidScope"}],"x-transloadit-schema-id":"sha256:6774bbc3a7fa1b457ac496fe0ef178483df19de3dcd6eddcbb55e86119b5402e"},"Schema_67e7c93d5767738dbd2a81db5abd268abb0b8cf57ac4413d17abd2af92b33601":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"type":"number"}],"default":-1,"description":"\nThe duration in seconds for the watermark to be shown. Can be used together with `watermark_start_time` to create nice effects. The default value is `-1.0`, which means that the watermark is shown for the entire duration of the video.\n","x-transloadit-schema-id":"sha256:67e7c93d5767738dbd2a81db5abd268abb0b8cf57ac4413d17abd2af92b33601"},"Schema_68e219fb9097b30eea45aea265e442f6d42fe7df6655e877ff03b9b0b0a6caf2":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},{"type":"null"},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"items":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},{"type":"null"}]},"type":"array"}]}],"x-transloadit-schema-id":"sha256:68e219fb9097b30eea45aea265e442f6d42fe7df6655e877ff03b9b0b0a6caf2"},"Schema_6c84276367657f004182c40181e6a75f0bbb8b764190745b1a9d346b766311ee":{"const":"/transloadit/import","description":"\nImports files from your Workspace's Transloadit Storage. Select a mutable location with\n`path`, or a logical asset with `asset_id`. Add `version_id` to pin the exact stored bytes.\nIDs remain subject to Workspace access and version retention.\n\nAssemblies that use `/transloadit/import`, directly or through a Template, require\neither a bearer token or signed `params` with a future `params.auth.expires` timestamp.\nThis applies even when Workspace Signature Authentication is disabled. An Auth Key alone\nis not sufficient; bearer-authenticated requests do not need a separate signature or expiry.\n","type":"string","x-transloadit-schema-id":"sha256:6c84276367657f004182c40181e6a75f0bbb8b764190745b1a9d346b766311ee"},"Schema_6da3fb8f5d27dd56b80ee238180a201d96ab10810c2d1ef105b0e143ae7a4396":{"additionalProperties":true,"properties":{"auth_keys":{"items":{"additionalProperties":false,"properties":{"auth_key":{"anyOf":[{"maxLength":64,"pattern":"^[\u0000-퟿-￿]*$","type":"string"},{"type":"null"}]},"can_show_auth_secret":{"type":"boolean"},"created":{"anyOf":[{"$ref":"#/components/schemas/Schema_4e26553b40ceb7f4fccba1cb4f658b1497c18e9b47d825e006083381740d4576"},{"type":"null"}],"description":"Time the Auth Key was created, as an ISO 8601 timestamp, or null when no creation timestamp is recorded.","x-transloadit-description-id":"authKeyCreated"},"description":{"maxLength":255,"pattern":"^[\u0000-퟿-￿]*$","type":"string"},"id":{"type":"string"},"is_active":{"type":"boolean"},"is_allowed_for_smartcdn":{"type":"boolean"},"last_used":{"anyOf":[{"$ref":"#/components/schemas/Schema_4e26553b40ceb7f4fccba1cb4f658b1497c18e9b47d825e006083381740d4576"},{"type":"null"}],"description":"Approximate last-use time as an ISO 8601 timestamp, or null when no timestamp has been recorded. Usage is tracked asynchronously and persisted in batches, so this value may lag behind requests. It is not an exact audit timestamp, and null does not prove the key has never been used.","x-transloadit-description-id":"authKeyLastUsed"},"modified":{"anyOf":[{"$ref":"#/components/schemas/Schema_4e26553b40ceb7f4fccba1cb4f658b1497c18e9b47d825e006083381740d4576"},{"type":"null"}],"description":"Time the Auth Key settings were last updated, as an ISO 8601 timestamp, or null when no modification timestamp is recorded. Usage tracking is reported separately in `last_used`.","x-transloadit-description-id":"authKeyModified"},"scope":{"anyOf":[{"maxLength":512,"pattern":"^[\u0000-퟿-￿]*$","type":"string"},{"type":"null"}]},"signature_algo":{"type":["null","string"]}},"required":["auth_key","can_show_auth_secret","created","description","id","is_active","is_allowed_for_smartcdn","last_used","modified","scope","signature_algo"],"type":"object"},"type":"array"},"message":{"minLength":1,"type":"string"},"ok":{"const":"AUTH_KEYS_FOUND","type":"string"}},"required":["auth_keys","message","ok"],"type":"object","x-transloadit-schema-id":"sha256:6da3fb8f5d27dd56b80ee238180a201d96ab10810c2d1ef105b0e143ae7a4396"},"Schema_6de12f9aed4f7f419d1359c0ac48531ebb48381d76dc819ef2b9a40e6c3b6369":{"additionalProperties":true,"properties":{"auth_key":{"additionalProperties":false,"properties":{"auth_key":{"maxLength":64,"pattern":"^[\u0000-퟿-￿]*$","type":"string"},"auth_secret":{"type":"string"},"can_show_auth_secret":{"type":"boolean"},"created":{"anyOf":[{"$ref":"#/components/schemas/Schema_4e26553b40ceb7f4fccba1cb4f658b1497c18e9b47d825e006083381740d4576"},{"type":"null"}],"description":"Time the Auth Key was created, as an ISO 8601 timestamp, or null when no creation timestamp is recorded.","x-transloadit-description-id":"authKeyCreated"},"description":{"maxLength":255,"pattern":"^[\u0000-퟿-￿]*$","type":"string"},"id":{"type":"string"},"is_active":{"type":"boolean"},"is_allowed_for_smartcdn":{"type":"boolean"},"last_used":{"anyOf":[{"$ref":"#/components/schemas/Schema_4e26553b40ceb7f4fccba1cb4f658b1497c18e9b47d825e006083381740d4576"},{"type":"null"}],"description":"Approximate last-use time as an ISO 8601 timestamp, or null when no timestamp has been recorded. Usage is tracked asynchronously and persisted in batches, so this value may lag behind requests. It is not an exact audit timestamp, and null does not prove the key has never been used.","x-transloadit-description-id":"authKeyLastUsed"},"modified":{"anyOf":[{"$ref":"#/components/schemas/Schema_4e26553b40ceb7f4fccba1cb4f658b1497c18e9b47d825e006083381740d4576"},{"type":"null"}],"description":"Time the Auth Key settings were last updated, as an ISO 8601 timestamp, or null when no modification timestamp is recorded. Usage tracking is reported separately in `last_used`.","x-transloadit-description-id":"authKeyModified"},"scope":{"anyOf":[{"maxLength":512,"pattern":"^[\u0000-퟿-￿]*$","type":"string"},{"type":"null"}]},"signature_algo":{"type":["null","string"]}},"required":["auth_key","auth_secret","can_show_auth_secret","created","description","id","is_active","is_allowed_for_smartcdn","last_used","modified","scope","signature_algo"],"type":"object"},"message":{"minLength":1,"type":"string"},"ok":{"const":"AUTH_KEY_CREATED","type":"string"}},"required":["auth_key","message","ok"],"type":"object","x-transloadit-schema-id":"sha256:6de12f9aed4f7f419d1359c0ac48531ebb48381d76dc819ef2b9a40e6c3b6369"},"Schema_6e004c1fd5129d97457a92f4f20e65d0eebb689e98b3ca78a325ca39894070d4":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nIf this is set to `true` and one or more files are declined, the Assembly will be stopped and marked with an error.\n","x-transloadit-schema-id":"sha256:6e004c1fd5129d97457a92f4f20e65d0eebb689e98b3ca78a325ca39894070d4"},"Schema_6eae50596431e57a3adbeb024d3ca6f273d9f392eecf6f7fa7f4c725faa33dbd":{"additionalProperties":true,"properties":{"credential":{"additionalProperties":false,"properties":{"account_id":{"type":"string"},"content":{"anyOf":[{"additionalProperties":{},"type":"object"},{"items":{},"type":"array"},{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"}]},"created":{"anyOf":[{"anyOf":[{"type":"number"},{"type":"string"}]},{"type":"null"}]},"deleted":{"anyOf":[{"anyOf":[{"type":"number"},{"type":"string"}]},{"type":"null"}]},"id":{"type":"string"},"modified":{"anyOf":[{"anyOf":[{"type":"number"},{"type":"string"}]},{"type":"null"}]},"name":{"type":"string"},"stringified":{"type":"string"},"type":{"type":"string"}},"required":["account_id","content","created","deleted","id","modified","name","stringified","type"],"type":"object"},"message":{"minLength":1,"type":"string"},"ok":{"const":"TEMPLATE_CREDENTIALS_READ","type":"string"}},"required":["credential","message","ok"],"type":"object","x-transloadit-schema-id":"sha256:6eae50596431e57a3adbeb024d3ca6f273d9f392eecf6f7fa7f4c725faa33dbd"},"Schema_6f76a4b1c0011fc02a130479c0a33b50ca4ff841292c0a355755296647ce796a":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["private","public-read"],"type":"string"}],"default":"public-read","description":"\nThe permissions used for this file.\n","x-transloadit-schema-id":"sha256:6f76a4b1c0011fc02a130479c0a33b50ca4ff841292c0a355755296647ce796a"},"Schema_700ca6e236bc3ce29f7390532b108f5a864258e18588a743c9d63fff1d8ecf5d":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"type":"integer"}],"default":1,"description":"\nThe pagination page number. For now, in order to not break backwards compatibility in non-recursive imports, this only works when recursive is set to `true`.\n\nWhen doing big imports, make sure no files are added or removed from other scripts within your path, otherwise you might get weird results with the pagination.\n","x-transloadit-schema-id":"sha256:700ca6e236bc3ce29f7390532b108f5a864258e18588a743c9d63fff1d8ecf5d"},"Schema_7259bfd3c73979776529646b342688ee35f3b84b7549790c20f4249298a7c9b9":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nControls the image compression for PNG images. Setting to `true` results in smaller file size, while increasing processing time. It is encouraged to keep this option disabled.\n","x-transloadit-schema-id":"sha256:7259bfd3c73979776529646b342688ee35f3b84b7549790c20f4249298a7c9b9"},"Schema_725dd98f63e82a0c440264fe7b6dbfd1f038ec5934b2fcfbeedee8aaeced022f":{"additionalProperties":true,"description":"Normalized lowercase headers for the tusd download extension.","properties":{"if-match":{"description":"An entity tag or wildcard that the upload must match.","maxLength":8192,"minLength":1,"type":"string","x-transloadit-description-id":"tusIfMatch"},"if-modified-since":{"description":"An HTTP date after which a modified upload is returned.","maxLength":8192,"minLength":1,"type":"string","x-transloadit-description-id":"tusIfModifiedSince"},"if-none-match":{"description":"An entity tag or wildcard that the upload must not match.","maxLength":8192,"minLength":1,"type":"string","x-transloadit-description-id":"tusIfNoneMatch"},"if-range":{"description":"An entity tag or HTTP date that makes a byte range conditional.","maxLength":8192,"minLength":1,"type":"string","x-transloadit-description-id":"tusIfRange"},"if-unmodified-since":{"description":"An HTTP date after which a modified upload fails the precondition.","maxLength":8192,"minLength":1,"type":"string","x-transloadit-description-id":"tusIfUnmodifiedSince"},"range":{"description":"One or more canonical byte ranges.","maxLength":8192,"pattern":"^bytes=(?:[0-9]+-[0-9]*|-[0-9]+)(?:,(?:[0-9]+-[0-9]*|-[0-9]+))*$","type":"string","x-transloadit-description-id":"tusByteRanges"},"tus-resumable":{"const":"1.0.0","description":"The negotiated tus version when the client supplies it.","type":"string","x-transloadit-description-id":"tusVersionOptional"}},"type":"object","x-transloadit-description-id":"tusDownloadRequestHeaders","x-transloadit-schema-id":"sha256:725dd98f63e82a0c440264fe7b6dbfd1f038ec5934b2fcfbeedee8aaeced022f"},"Schema_72ccb0a44b1e565ea5e2fe4c78d74b1ff0ed2e77b02c8ea011f4822b52e7bd1c":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"description":"Returns an array of up to 10 dominant image colors as hexadecimal values. Omit `output_meta.dominant_colors` to skip this extraction. Supplying the property, including `false`, requests extraction and can incur additional usage charges when colors are returned. Setting `output_meta` itself to `false` disables additional metadata extraction; basic file type and size checks can still run.","x-transloadit-description-id":"assemblyStatusMetaDominantColors","x-transloadit-schema-id":"sha256:72ccb0a44b1e565ea5e2fe4c78d74b1ff0ed2e77b02c8ea011f4822b52e7bd1c"},"Schema_746f9be9d20864978e8adbc308556e9d52fe0b9a421c976a76d8079a26fb7d32":{"additionalProperties":false,"properties":{"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for a Billing request.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"required":["expires","key"],"type":"object","x-transloadit-description-id":"billingAuth"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"}},"required":["auth"],"type":"object","x-transloadit-schema-id":"sha256:746f9be9d20864978e8adbc308556e9d52fe0b9a421c976a76d8079a26fb7d32"},"Schema_748966bc8c9baec90b3eca9a7bc3fd115551e1a2be9465a2083daa6e75845253":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nCreate a Box app in the [Box Developer Console](https://app.box.com/developers/console) using **Server Authentication (JWT)**.\n\nGenerate a public/private keypair for that app. Box will download a JSON config file (with `boxAppSettings` and `appAuth`) that includes your JWT private key material.\n\nIn your Transloadit account, create [Template Credentials](/c/template-credentials/) of type Box and paste that full JSON file into `key_file_contents`. Then set this `credentials` parameter to the Template Credentials name.\n\nIf your Box enterprise requires it, make sure the app is authorized by an admin before using it in production.\n","x-transloadit-schema-id":"sha256:748966bc8c9baec90b3eca9a7bc3fd115551e1a2be9465a2083daa6e75845253"},"Schema_7540fd1b06c89ae9009b0560f56a0a82446f22491e572d5bc08b1fb39f540772":{"additionalProperties":true,"description":"Request limit reached.","properties":{"error":{"const":"RATE_LIMIT_REACHED","type":"string"},"http_code":{"const":429,"type":"number"},"message":{"description":"Human-readable explanation of the error. Its wording can vary; use the `error` code when handling a specific failure.","type":"string","x-transloadit-description-id":"api2ErrorMessage"}},"required":["error"],"type":"object","x-transloadit-description-id":"api2ErrorRateLimitReached","x-transloadit-schema-id":"sha256:7540fd1b06c89ae9009b0560f56a0a82446f22491e572d5bc08b1fb39f540772"},"Schema_76209e57578923a608782b4d21f58198393f30d2e11f67fd09fc8f84977ed260":{"description":"Immutable version ID returned after Storage finalizes the result. Import with `asset_id` and this `version_id` to retain the same bytes after a move or overwrite, subject to retention and access.","pattern":"^[A-Za-z0-9_-]{21}[AQgw]$","type":"string","x-transloadit-description-id":"assemblyStatusFileVersionId","x-transloadit-schema-id":"sha256:76209e57578923a608782b4d21f58198393f30d2e11f67fd09fc8f84977ed260"},"Schema_7644965addc4149f88074f52186d435ad8b8f8f4cb645c74726723b684bbbc55":{"anyOf":[{"additionalProperties":true,"description":"Your Template Credentials could not be created.","properties":{"error":{"const":"TEMPLATE_CREDENTIALS_NOT_CREATED","type":"string"},"http_code":{"const":400,"type":"number"},"message":{"description":"Human-readable explanation of the error. Its wording can vary; use the `error` code when handling a specific failure.","type":"string","x-transloadit-description-id":"api2ErrorMessage"}},"required":["error"],"type":"object","x-transloadit-description-id":"api2ErrorTemplateCredentialsNotCreated"},{"allOf":[{"$ref":"#/components/schemas/Schema_cb07bdaec8a57b18babcb0842531069c047ea76747de30cb3433ec3ab53763cb"}]}],"x-transloadit-schema-id":"sha256:7644965addc4149f88074f52186d435ad8b8f8f4cb645c74726723b684bbbc55"},"Schema_770e432acf7b380989fa1175d6e236099b20eba3f78c8e91975f0754af64cece":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":1,"type":"integer"}],"default":10,"description":"\nSpecifies the length of each HTTP segment. This is optional, and the default value as recommended by Apple is `10`. Do not change this value unless you have a good reason.\n","x-transloadit-schema-id":"sha256:770e432acf7b380989fa1175d6e236099b20eba3f78c8e91975f0754af64cece"},"Schema_771bb5eb20c0ddd29660dc234a014a68c5d7c9f2816829adad5f377746d540fc":{"anyOf":[{"additionalProperties":true,"properties":{"content-type":{"const":"application/offset+octet-stream","type":"string"},"tus-resumable":{"const":"1.0.0","description":"The negotiated tus version.","type":"string","x-transloadit-description-id":"tusVersion"},"upload-concat":{"const":"partial","type":"string"},"upload-defer-length":{"not":{}},"upload-length":{"description":"A canonical unsigned base-10 byte count in the signed 64-bit range, without zero padding or a plus sign.","pattern":"^(?:0|[1-9][0-9]{0,17}|[1-8][0-9]{18}|9[0-1][0-9]{17}|92[0-1][0-9]{16}|922[0-2][0-9]{15}|9223[0-2][0-9]{14}|92233[0-6][0-9]{13}|922337[0-1][0-9]{12}|92233720[0-2][0-9]{10}|922337203[0-5][0-9]{9}|9223372036[0-7][0-9]{8}|92233720368[0-4][0-9]{7}|922337203685[0-3][0-9]{6}|9223372036854[0-6][0-9]{5}|92233720368547[0-6][0-9]{4}|922337203685477[0-4][0-9]{3}|9223372036854775[0-7][0-9]{2}|922337203685477580[0-6]|9223372036854775807)$","type":"string","x-transloadit-description-id":"tusCanonicalByteCount"},"upload-metadata":{"$ref":"#/components/schemas/Schema_4628123852e2795740f3b1ddb1d557911a010ad427c6a85c4bb8b54491692385"}},"required":["tus-resumable","upload-length","upload-metadata"],"type":"object"},{"additionalProperties":true,"properties":{"content-type":{"const":"application/offset+octet-stream","type":"string"},"tus-resumable":{"const":"1.0.0","description":"The negotiated tus version.","type":"string","x-transloadit-description-id":"tusVersion"},"upload-concat":{"const":"partial","type":"string"},"upload-defer-length":{"const":"1","type":"string"},"upload-length":{"not":{}},"upload-metadata":{"$ref":"#/components/schemas/Schema_4628123852e2795740f3b1ddb1d557911a010ad427c6a85c4bb8b54491692385"}},"required":["tus-resumable","upload-defer-length","upload-metadata"],"type":"object"},{"additionalProperties":true,"properties":{"content-type":{"not":{}},"tus-resumable":{"const":"1.0.0","description":"The negotiated tus version.","type":"string","x-transloadit-description-id":"tusVersion"},"upload-concat":{"maxLength":8192,"pattern":"^final;(?:https?:\\/\\/[^/\\x09-\\x0D\\x20\\xA0                　﻿]+)?\\/resumable\\/files\\/[^/\\x09-\\x0D\\x20\\xA0                　﻿]+(?:\\/[^/\\x09-\\x0D\\x20\\xA0                　﻿]+)*(?: (?:https?:\\/\\/[^/\\x09-\\x0D\\x20\\xA0                　﻿]+)?\\/resumable\\/files\\/[^/\\x09-\\x0D\\x20\\xA0                　﻿]+(?:\\/[^/\\x09-\\x0D\\x20\\xA0                　﻿]+)*)*$","type":"string"},"upload-defer-length":{"not":{}},"upload-length":{"not":{}},"upload-metadata":{"$ref":"#/components/schemas/Schema_4628123852e2795740f3b1ddb1d557911a010ad427c6a85c4bb8b54491692385"}},"required":["tus-resumable","upload-concat","upload-metadata"],"type":"object"}],"description":"Normalized lowercase headers for fixed-length, deferred-length, partial, or final tus upload creation.","x-transloadit-description-id":"tusCreateRequestHeaders","x-transloadit-schema-id":"sha256:771bb5eb20c0ddd29660dc234a014a68c5d7c9f2816829adad5f377746d540fc"},"Schema_7cc8d8f776c1f7ce03f3b4dbd8d1e954038f256031ef8a62d19bbdac449d509e":{"anyOf":[{"additionalProperties":true,"properties":{"data":{"type":"string"},"type":{"const":"data","type":"string"}},"required":["data","type"],"type":"object"},{"additionalProperties":true,"properties":{"reference":{"additionalProperties":{"type":"string"},"type":"object"},"type":{"const":"reference","type":"string"}},"required":["reference","type"],"type":"object"},{"additionalProperties":true,"properties":{"text":{"type":"string"},"type":{"const":"text","type":"string"}},"required":["text","type"],"type":"object"}],"x-transloadit-schema-id":"sha256:7cc8d8f776c1f7ce03f3b4dbd8d1e954038f256031ef8a62d19bbdac449d509e"},"Schema_7d0953e667a4e84601b14c25ec998d74076b0afded4b1fe7182cba7b5a1062f7":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"description":"\nIf set to `true`, the Robot will not yet import the actual files but instead return an empty file stub that includes a URL from where the file can be imported by subsequent Robots. This is useful for cases where subsequent Steps need more control over the import process, such as with 🤖/video/ondemand. This parameter should only be set if all subsequent Steps use Robots that support file stubs.\n","type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nIf set to `true`, the Robot will not yet import the actual files but instead return an empty file stub that includes a URL from where the file can be imported by subsequent Robots. This is useful for cases where subsequent Steps need more control over the import process, such as with 🤖/video/ondemand. This parameter should only be set if all subsequent Steps use Robots that support file stubs.\n","x-transloadit-schema-id":"sha256:7d0953e667a4e84601b14c25ec998d74076b0afded4b1fe7182cba7b5a1062f7"},"Schema_7dc4ae103441fca5fb76bc40a593999f65fb8afc1061010fdd2e79963d8703f6":{"anyOf":[{"type":"string"},{"items":{"anyOf":[{"$ref":"#/components/schemas/Schema_ff79c8f71a3217a1b38b7ba2ab1c6ac0c0d575c77c52a209daddad9ee51151af"},{"anyOf":[{"additionalProperties":true,"properties":{"experimental_providerMetadata":{},"kind":{"pattern":"\\.","type":"string"},"providerOptions":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"type":{"const":"custom","type":"string"}},"required":["kind","providerOptions","type"],"type":"object"},{"additionalProperties":true,"properties":{"experimental_providerMetadata":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"kind":{"pattern":"\\.","type":"string"},"providerOptions":{"not":{}},"type":{"const":"custom","type":"string"}},"required":["kind","type"],"type":"object"},{"additionalProperties":true,"properties":{"experimental_providerMetadata":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"kind":{"pattern":"\\.","type":"string"},"providerOptions":{"type":"null"},"type":{"const":"custom","type":"string"}},"required":["kind","providerOptions","type"],"type":"object"}]},{"$ref":"#/components/schemas/Schema_12977f712386d47ebcfb772a35ba961d9d05729d01c4639ea75b7afa3eb82847"},{"$ref":"#/components/schemas/Schema_4bb77959dc1d70764b807255722366607c52c3e348068bea0f0c747c1dd9afe7"},{"anyOf":[{"additionalProperties":true,"properties":{"experimental_providerMetadata":{},"providerOptions":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"text":{"type":"string"},"type":{"const":"reasoning","type":"string"}},"required":["providerOptions","text","type"],"type":"object"},{"additionalProperties":true,"properties":{"experimental_providerMetadata":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"providerOptions":{"not":{}},"text":{"type":"string"},"type":{"const":"reasoning","type":"string"}},"required":["text","type"],"type":"object"},{"additionalProperties":true,"properties":{"experimental_providerMetadata":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"providerOptions":{"type":"null"},"text":{"type":"string"},"type":{"const":"reasoning","type":"string"}},"required":["providerOptions","text","type"],"type":"object"}]},{"anyOf":[{"additionalProperties":true,"properties":{"data":{"anyOf":[{"additionalProperties":true,"properties":{"data":{"type":"string"},"type":{"const":"data","type":"string"}},"required":["data","type"],"type":"object"},{"type":"string"}]},"experimental_providerMetadata":{},"mediaType":{"type":"string"},"providerOptions":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"type":{"const":"reasoning-file","type":"string"}},"required":["data","mediaType","providerOptions","type"],"type":"object"},{"additionalProperties":true,"properties":{"data":{"anyOf":[{"additionalProperties":true,"properties":{"data":{"type":"string"},"type":{"const":"data","type":"string"}},"required":["data","type"],"type":"object"},{"type":"string"}]},"experimental_providerMetadata":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"mediaType":{"type":"string"},"providerOptions":{"not":{}},"type":{"const":"reasoning-file","type":"string"}},"required":["data","mediaType","type"],"type":"object"},{"additionalProperties":true,"properties":{"data":{"anyOf":[{"additionalProperties":true,"properties":{"data":{"type":"string"},"type":{"const":"data","type":"string"}},"required":["data","type"],"type":"object"},{"type":"string"}]},"experimental_providerMetadata":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"mediaType":{"type":"string"},"providerOptions":{"type":"null"},"type":{"const":"reasoning-file","type":"string"}},"required":["data","mediaType","providerOptions","type"],"type":"object"}]},{"anyOf":[{"additionalProperties":true,"properties":{"args":{},"experimental_providerMetadata":{},"input":{},"providerExecuted":{"type":"boolean"},"providerOptions":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"toolCallId":{"type":"string"},"toolName":{"type":"string"},"type":{"const":"tool-call","type":"string"}},"required":["providerOptions","toolCallId","toolName","type"],"type":"object"},{"additionalProperties":true,"properties":{"args":{},"experimental_providerMetadata":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"input":{},"providerExecuted":{"type":"boolean"},"providerOptions":{"not":{}},"toolCallId":{"type":"string"},"toolName":{"type":"string"},"type":{"const":"tool-call","type":"string"}},"required":["toolCallId","toolName","type"],"type":"object"},{"additionalProperties":true,"properties":{"args":{},"experimental_providerMetadata":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"input":{},"providerExecuted":{"type":"boolean"},"providerOptions":{"type":"null"},"toolCallId":{"type":"string"},"toolName":{"type":"string"},"type":{"const":"tool-call","type":"string"}},"required":["providerOptions","toolCallId","toolName","type"],"type":"object"}]},{"$ref":"#/components/schemas/Schema_2971a82759cfb5a2f1a06240f9c836a156489d7a9f2db4cb0adef641c51a002a"},{"additionalProperties":true,"properties":{"approvalId":{"type":"string"},"isAutomatic":{"type":"boolean"},"signature":{"type":"string"},"toolCallId":{"type":"string"},"type":{"const":"tool-approval-request","type":"string"}},"required":["approvalId","toolCallId","type"],"type":"object"}]},"type":"array"}],"x-transloadit-schema-id":"sha256:7dc4ae103441fca5fb76bc40a593999f65fb8afc1061010fdd2e79963d8703f6"},"Schema_7def4758686ba84befe3cec9842c1f4ab2bcb40aeaa5a26a55c39b02734ba937":{"anyOf":[{"additionalProperties":true,"properties":{"account_id":{"type":["null","string"]},"account_name":{"type":["null","string"]},"account_slug":{"type":["null","string"]},"api_auth_key_id":{"type":["null","string"]},"assemblyId":{"type":"string"},"assembly_id":{"$ref":"#/components/schemas/Schema_5a5720fce62d62d631fea01984a62a4f36ef024049b713ef7d673713a081b806"},"assembly_ssl_url":{"$ref":"#/components/schemas/Schema_bbea786d2847a3b11367518539af6abd307fc35d7725344b7a6c264b53218b39"},"assembly_url":{"description":"The unique URL used to query the current status of this Assembly.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusResponseAssemblyUrl"},"build_id":{"$ref":"#/components/schemas/Schema_8c67d074b4dda4e673e2e8a9bb2ad781f1daded5d942e5eb0f0c82abb1b3d958"},"bytes_expected":{"description":"The number of bytes that this Assembly expects to be uploaded.","type":"number","x-transloadit-description-id":"assemblyStatusResponseBytesExpected"},"bytes_received":{"$ref":"#/components/schemas/Schema_bde8ad02c55ac79ce6d89b6a92097ae543a54a4110d15a465aca42a4ed3cf3ee"},"bytes_usage":{"$ref":"#/components/schemas/Schema_99943d2e7b4618d495632120f0b3afd3ff05ace6e91949c68286cce98ebd441d"},"client_agent":{"description":"The uploader’s user agent is not exposed; this deprecated field is always `null`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusResponseClientAgent"},"client_ip":{"description":"The uploader’s IP address is not exposed; this deprecated field is always `null`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusResponseClientIp"},"client_referer":{"description":"The uploader’s referrer URL is not exposed; this deprecated field is always `null`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusResponseClientReferer"},"companion_url":{"description":"The URL to the Companion server that this Assembly may communicate with.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusResponseCompanionUrl"},"error":{"$ref":"#/components/schemas/Schema_1e0026a0e9b6cc84fd08e232a36b1ed9c086865a5b9b809d8253d69b6edd78a9"},"executing_jobs":{"items":{"type":"string"},"type":"array"},"execution_duration":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The time taken by Transloadit to execute this Assembly, in seconds.","x-transloadit-description-id":"assemblyStatusResponseExecutionDuration"},"execution_start":{"type":["null","string"]},"expected_tus_uploads":{"type":"number"},"fields":{"$ref":"#/components/schemas/Schema_b736e077f16daefe161b737933dc42c15027ce02d7bdb410497f29799a2151aa"},"finished_tus_uploads":{"type":"number"},"has_dupe_jobs":{"type":"boolean"},"ignored_error_count":{"type":"number"},"ignored_errors":{"items":{"additionalProperties":true,"properties":{"error":{},"message":{"type":"string"},"phase":{"type":"string"},"step":{"type":["null","string"]}},"type":"object"},"type":"array"},"info":{"additionalProperties":true,"properties":{"retryIn":{"type":"number"}},"type":"object"},"instance":{"type":["null","string"]},"is_infinite":{"type":"boolean"},"jobs_queue_duration":{"type":"number"},"last_job_completed":{"type":["null","string"]},"merged_params":{"type":["null","string"]},"message":{"description":"A human-readable message explaining the state of this Assembly. This is not always\npresent.","type":"string","x-transloadit-description-id":"assemblyStatusResponseMessage"},"notify_duration":{"$ref":"#/components/schemas/Schema_98821d3fb80b8da19ecd734f66fdce4852dd42c3933f85148896f6e4b1232881"},"notify_error":{"type":["null","string"]},"notify_response_code":{"anyOf":[{"type":"number"},{"type":"null"}]},"notify_response_data":{"type":["null","string"]},"notify_start":{"type":["null","string"]},"notify_status":{"type":["null","string"]},"notify_url":{"type":["null","string"]},"num_input_files":{"type":"number"},"ok":{"description":"Indicates a [non-error lifecycle](/docs/api/response-codes/#ok-codes) status, including uploading, executing, aborted, and canceled states. Successful processing is indicated by `ASSEMBLY_COMPLETED`. If the Assembly\nencountered an error, the `error` key below is used instead of this key.","enum":["ASSEMBLY_EXECUTING","ASSEMBLY_REPLAYING","ASSEMBLY_UPLOADING"],"type":"string","x-transloadit-description-id":"assemblyStatusResponseOk"},"params":{"type":["null","string"]},"parent_assembly_status":{"anyOf":[{},{"type":"null"}]},"parent_id":{"type":["null","string"]},"previousStep":{"description":"Name of the preceding Step associated with the error, when available.","type":"string","x-transloadit-description-id":"assemblyStatusResponsePreviousStep"},"queue_duration":{"type":"number"},"region":{"type":"string"},"results":{"$ref":"#/components/schemas/Schema_acdda8455918771eb5b7d58d00e895c1326672fa85d67ad42497973e3292f5b8"},"running_jobs":{"items":{"type":"string"},"type":"array"},"start_date":{"description":"The date and time at which upload started for this Assembly.","type":"string","x-transloadit-description-id":"assemblyStatusResponseStartDate"},"started_jobs":{"items":{"type":"string"},"type":"array"},"started_tus_uploads":{"type":"number"},"step":{"description":"Name of the Step associated with the error, when available.","type":"string","x-transloadit-description-id":"assemblyStatusResponseStep"},"template":{"type":["null","string"]},"template_id":{"type":["null","string"]},"template_name":{"type":["null","string"]},"transloadit_client":{"type":["null","string"]},"tus_uploads":{"$ref":"#/components/schemas/Schema_d22a76a8ee6772f210db0c607b951c8c93ac86503e983681005064c9b1b4705d"},"tus_url":{"description":"The URL to the tus server used by this Assembly for [resumable\nuploads](/docs/api/resumable-uploads/).","type":"string","x-transloadit-description-id":"assemblyStatusResponseTusUrl"},"update_stream_url":{"$ref":"#/components/schemas/Schema_46291c8d1c92a74d382a7a6aed3de4d36d66c5dc3b0dee3c9d022c98afdd2dca"},"upload_duration":{"description":"The time taken by the uploader to upload files, in seconds.","type":"number","x-transloadit-description-id":"assemblyStatusResponseUploadDuration"},"upload_meta_data_extracted":{"type":"boolean"},"uploads":{"$ref":"#/components/schemas/Schema_d3ccf2a1956c64a2b53326785ba0c36292dd870853555c9b3d91afc00606e84b"},"uppyserver_url":{"type":["null","string"]},"usage_tags":{"type":"string"},"virusname":{"type":"string"},"warnings":{"$ref":"#/components/schemas/Schema_005a01ba58ae0ad47bab35d7b78f964895edfa15304dc581291f5710082ad6b8"},"websocket_url":{"$ref":"#/components/schemas/Schema_360cb9b22505669e09179309638d53b007d6067cb34ce87083ee7c6478b2ea94"}},"required":["ok"],"type":"object"},{"additionalProperties":true,"properties":{"account_id":{"type":["null","string"]},"account_name":{"type":["null","string"]},"account_slug":{"type":["null","string"]},"api_auth_key_id":{"type":["null","string"]},"assemblyId":{"type":"string"},"assembly_id":{"$ref":"#/components/schemas/Schema_5a5720fce62d62d631fea01984a62a4f36ef024049b713ef7d673713a081b806"},"assembly_ssl_url":{"$ref":"#/components/schemas/Schema_bbea786d2847a3b11367518539af6abd307fc35d7725344b7a6c264b53218b39"},"assembly_url":{"description":"The unique URL used to query the current status of this Assembly.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusResponseAssemblyUrl"},"build_id":{"$ref":"#/components/schemas/Schema_8c67d074b4dda4e673e2e8a9bb2ad781f1daded5d942e5eb0f0c82abb1b3d958"},"bytes_expected":{"description":"The number of bytes that this Assembly expects to be uploaded.","type":"number","x-transloadit-description-id":"assemblyStatusResponseBytesExpected"},"bytes_received":{"$ref":"#/components/schemas/Schema_bde8ad02c55ac79ce6d89b6a92097ae543a54a4110d15a465aca42a4ed3cf3ee"},"bytes_usage":{"$ref":"#/components/schemas/Schema_99943d2e7b4618d495632120f0b3afd3ff05ace6e91949c68286cce98ebd441d"},"client_agent":{"description":"The uploader’s user agent is not exposed; this deprecated field is always `null`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusResponseClientAgent"},"client_ip":{"description":"The uploader’s IP address is not exposed; this deprecated field is always `null`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusResponseClientIp"},"client_referer":{"description":"The uploader’s referrer URL is not exposed; this deprecated field is always `null`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusResponseClientReferer"},"companion_url":{"description":"The URL to the Companion server that this Assembly may communicate with.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusResponseCompanionUrl"},"error":{"$ref":"#/components/schemas/Schema_1e0026a0e9b6cc84fd08e232a36b1ed9c086865a5b9b809d8253d69b6edd78a9"},"executing_jobs":{"items":{"type":"string"},"type":"array"},"execution_duration":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The time taken by Transloadit to execute this Assembly, in seconds.","x-transloadit-description-id":"assemblyStatusResponseExecutionDuration"},"execution_start":{"type":["null","string"]},"expected_tus_uploads":{"type":"number"},"fields":{"$ref":"#/components/schemas/Schema_b736e077f16daefe161b737933dc42c15027ce02d7bdb410497f29799a2151aa"},"finished_tus_uploads":{"type":"number"},"has_dupe_jobs":{"type":"boolean"},"ignored_error_count":{"type":"number"},"ignored_errors":{"items":{"additionalProperties":true,"properties":{"error":{},"message":{"type":"string"},"phase":{"type":"string"},"step":{"type":["null","string"]}},"type":"object"},"type":"array"},"info":{"additionalProperties":true,"properties":{"retryIn":{"type":"number"}},"type":"object"},"instance":{"type":["null","string"]},"is_infinite":{"type":"boolean"},"jobs_queue_duration":{"type":"number"},"last_job_completed":{"type":["null","string"]},"merged_params":{"type":["null","string"]},"message":{"description":"A human-readable message explaining the state of this Assembly. This is not always\npresent.","type":"string","x-transloadit-description-id":"assemblyStatusResponseMessage"},"notify_duration":{"$ref":"#/components/schemas/Schema_98821d3fb80b8da19ecd734f66fdce4852dd42c3933f85148896f6e4b1232881"},"notify_error":{"type":["null","string"]},"notify_response_code":{"anyOf":[{"type":"number"},{"type":"null"}]},"notify_response_data":{"type":["null","string"]},"notify_start":{"type":["null","string"]},"notify_status":{"type":["null","string"]},"notify_url":{"type":["null","string"]},"num_input_files":{"type":"number"},"ok":{"description":"Indicates a [non-error lifecycle](/docs/api/response-codes/#ok-codes) status, including uploading, executing, aborted, and canceled states. Successful processing is indicated by `ASSEMBLY_COMPLETED`. If the Assembly\nencountered an error, the `error` key below is used instead of this key.","enum":["ASSEMBLY_CANCELED","ASSEMBLY_COMPLETED","ASSEMBLY_EXECUTING","ASSEMBLY_REPLAYING","ASSEMBLY_UPLOADING","REQUEST_ABORTED"],"type":"string","x-transloadit-description-id":"assemblyStatusResponseOk"},"params":{"type":["null","string"]},"parent_assembly_status":{"anyOf":[{},{"type":"null"}]},"parent_id":{"type":["null","string"]},"previousStep":{"description":"Name of the preceding Step associated with the error, when available.","type":"string","x-transloadit-description-id":"assemblyStatusResponsePreviousStep"},"queue_duration":{"type":"number"},"region":{"type":"string"},"results":{"$ref":"#/components/schemas/Schema_acdda8455918771eb5b7d58d00e895c1326672fa85d67ad42497973e3292f5b8"},"running_jobs":{"items":{"type":"string"},"type":"array"},"start_date":{"description":"The date and time at which upload started for this Assembly.","type":"string","x-transloadit-description-id":"assemblyStatusResponseStartDate"},"started_jobs":{"items":{"type":"string"},"type":"array"},"started_tus_uploads":{"type":"number"},"step":{"description":"Name of the Step associated with the error, when available.","type":"string","x-transloadit-description-id":"assemblyStatusResponseStep"},"template":{"type":["null","string"]},"template_id":{"type":["null","string"]},"template_name":{"type":["null","string"]},"transloadit_client":{"type":["null","string"]},"tus_uploads":{"$ref":"#/components/schemas/Schema_d22a76a8ee6772f210db0c607b951c8c93ac86503e983681005064c9b1b4705d"},"tus_url":{"description":"The URL to the tus server used by this Assembly for [resumable\nuploads](/docs/api/resumable-uploads/).","type":"string","x-transloadit-description-id":"assemblyStatusResponseTusUrl"},"update_stream_url":{"$ref":"#/components/schemas/Schema_46291c8d1c92a74d382a7a6aed3de4d36d66c5dc3b0dee3c9d022c98afdd2dca"},"upload_duration":{"description":"The time taken by the uploader to upload files, in seconds.","type":"number","x-transloadit-description-id":"assemblyStatusResponseUploadDuration"},"upload_meta_data_extracted":{"type":"boolean"},"uploads":{"$ref":"#/components/schemas/Schema_d3ccf2a1956c64a2b53326785ba0c36292dd870853555c9b3d91afc00606e84b"},"uppyserver_url":{"type":["null","string"]},"usage_tags":{"type":"string"},"virusname":{"type":"string"},"warnings":{"$ref":"#/components/schemas/Schema_005a01ba58ae0ad47bab35d7b78f964895edfa15304dc581291f5710082ad6b8"},"websocket_url":{"$ref":"#/components/schemas/Schema_360cb9b22505669e09179309638d53b007d6067cb34ce87083ee7c6478b2ea94"}},"required":["ok"],"type":"object"},{"additionalProperties":true,"properties":{"account_id":{"type":["null","string"]},"account_name":{"type":["null","string"]},"account_slug":{"type":["null","string"]},"api_auth_key_id":{"type":["null","string"]},"assemblyId":{"type":"string"},"assembly_id":{"$ref":"#/components/schemas/Schema_5a5720fce62d62d631fea01984a62a4f36ef024049b713ef7d673713a081b806"},"assembly_ssl_url":{"$ref":"#/components/schemas/Schema_bbea786d2847a3b11367518539af6abd307fc35d7725344b7a6c264b53218b39"},"assembly_url":{"description":"The unique URL used to query the current status of this Assembly.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusResponseAssemblyUrl"},"build_id":{"$ref":"#/components/schemas/Schema_8c67d074b4dda4e673e2e8a9bb2ad781f1daded5d942e5eb0f0c82abb1b3d958"},"bytes_expected":{"description":"The number of bytes that this Assembly expects to be uploaded.","type":"number","x-transloadit-description-id":"assemblyStatusResponseBytesExpected"},"bytes_received":{"$ref":"#/components/schemas/Schema_bde8ad02c55ac79ce6d89b6a92097ae543a54a4110d15a465aca42a4ed3cf3ee"},"bytes_usage":{"$ref":"#/components/schemas/Schema_99943d2e7b4618d495632120f0b3afd3ff05ace6e91949c68286cce98ebd441d"},"client_agent":{"description":"The uploader’s user agent is not exposed; this deprecated field is always `null`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusResponseClientAgent"},"client_ip":{"description":"The uploader’s IP address is not exposed; this deprecated field is always `null`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusResponseClientIp"},"client_referer":{"description":"The uploader’s referrer URL is not exposed; this deprecated field is always `null`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusResponseClientReferer"},"cmd":{"anyOf":[{"type":"string"},{"items":{"anyOf":[{"type":"string"},{"type":"number"}]},"type":"array"}],"description":"Optional processing command details for troubleshooting. Diagnostic details may vary; use the `error` code for programmatic error handling.","x-transloadit-description-id":"assemblyStatusResponseCmd"},"companion_url":{"description":"The URL to the Companion server that this Assembly may communicate with.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusResponseCompanionUrl"},"error":{"anyOf":[{"enum":["ADMIN_PERMISSIONS_REQUIRED","AI_CHAT_VALIDATION","ASSEMBLY_ACCOUNT_MISMATCH","ASSEMBLY_CANNOT_BE_REPLAYED","ASSEMBLY_COULD_NOT_BE_CREATED","ASSEMBLY_CRASHED","ASSEMBLY_DISALLOWED_ROBOTS_USED","ASSEMBLY_EMPTY_STEPS","ASSEMBLY_EXECUTION_PROGRESS_NOT_ENABLED","ASSEMBLY_EXPIRED","ASSEMBLY_FILE_NOT_RESERVED","ASSEMBLY_INFINITE","ASSEMBLY_INVALID_NOTIFY_URL","ASSEMBLY_INVALID_NUM_EXPECTED_UPLOAD_FILES_PARAM","ASSEMBLY_INVALID_STEPS","ASSEMBLY_JOB_ENQUEUE_ERROR","ASSEMBLY_LIST_ERROR","ASSEMBLY_MEMORY_LIMIT_EXCEEDED","ASSEMBLY_NOTIFICATIONS_LIST_ERROR","ASSEMBLY_NOTIFICATION_LIST_ERROR","ASSEMBLY_NOTIFICATION_NOT_PERSISTED","ASSEMBLY_NOTIFICATION_NOT_REPLAYED","ASSEMBLY_NOT_CAPABLE","ASSEMBLY_NOT_FINISHED","ASSEMBLY_NOT_FOUND","ASSEMBLY_NOT_REPLAYED","ASSEMBLY_NO_CHARGEABLE_STEP","ASSEMBLY_NO_NOTIFY_URL","ASSEMBLY_NO_STEPS","ASSEMBLY_PLAN_FILE_SIZE_LIMIT_EXCEEDED","ASSEMBLY_ROBOT_MISSING","ASSEMBLY_SATURATED","ASSEMBLY_STATS_ERROR","ASSEMBLY_STATS_INVALID_TIME","ASSEMBLY_STATS_MISSING_REGION","ASSEMBLY_STATUS_FETCHING_RATE_LIMIT_REACHED","ASSEMBLY_STATUS_NOT_FOUND","ASSEMBLY_STATUS_PARSE_ERROR","ASSEMBLY_STEP_INVALID","ASSEMBLY_STEP_INVALID_ROBOT","ASSEMBLY_STEP_INVALID_USE","ASSEMBLY_STEP_NO_ROBOT","ASSEMBLY_STEP_UNKNOWN_ROBOT","ASSEMBLY_STEP_UNKNOWN_USE","ASSEMBLY_URL_TRANSFORM_MISSING","AUDIO_ARTWORK_VALIDATION","AUDIO_CONCAT_INVALID_INPUT","AUDIO_CONCAT_VALIDATION","AUDIO_ENCODE_VALIDATION","AUDIO_LOOP_VALIDATION","AUDIO_MERGE_VALIDATION","AUDIO_SPLIT_NO_OUTPUT","AUDIO_SPLIT_VALIDATION","AUDIO_WAVEFORM_VALIDATION","AUTH_EXPIRED","AUTH_KEYS_NOT_FOUND","AUTH_KEY_SCOPES_NOT_FOUND","AUTH_SECRET_NOT_RETRIEVED","AZURE_IMPORT_ACCESS_DENIED","AZURE_IMPORT_FAILURE","AZURE_IMPORT_NOT_FOUND","AZURE_IMPORT_VALIDATION","AZURE_STORE_ACCESS_DENIED","AZURE_STORE_NOT_FOUND","AZURE_STORE_VALIDATION","BACKBLAZE_IMPORT_ACCESS_DENIED","BACKBLAZE_IMPORT_FAILURE","BACKBLAZE_IMPORT_NOT_FOUND","BACKBLAZE_IMPORT_VALIDATION","BACKBLAZE_STORE_ACCESS_DENIED","BACKBLAZE_STORE_FAILURE","BACKBLAZE_STORE_VALIDATION","BAD_PRICING","BEARER_TOKEN_AUTH_KEY_MISMATCH","BEARER_TOKEN_EXPIRED","BEARER_TOKEN_INVALID","BILL_LIMIT_EXCEEDED","BOX_IMPORT_ACCESS_DENIED","BOX_IMPORT_FAILURE","BOX_IMPORT_NOT_FOUND","BOX_IMPORT_VALIDATION","BOX_STORE_COULD_NOT_PARSE_URL","BOX_STORE_VALIDATION","CANNOT_ACCEPT_NEW_ASSEMBLIES","CDN_REQUIRED","CLOUDFILES_IMPORT_ACCESS_DENIED","CLOUDFILES_IMPORT_FAILURE","CLOUDFILES_IMPORT_NOT_FOUND","CLOUDFILES_IMPORT_VALIDATION","CLOUDFILES_STORE_ACCESS_DENIED","CLOUDFILES_STORE_ERROR","CLOUDFILES_STORE_VALIDATION","CLOUDFLARE_IMPORT_ACCESS_DENIED","CLOUDFLARE_IMPORT_FAILURE","CLOUDFLARE_IMPORT_NOT_FOUND","CLOUDFLARE_IMPORT_VALIDATION","CLOUDFLARE_STORE_ACCESS_DENIED","CLOUDFLARE_STORE_NOT_FOUND","CLOUDFLARE_STORE_URL_VERIFICATION_FAILURE","CLOUDFLARE_STORE_VALIDATION","CLOUDFLARE_STORE_WRONG_REGION","CLOUD_AI_IMAGE_VALIDATION","DAM_STORAGE_UNAVAILABLE","DIGITALOCEAN_IMPORT_ACCESS_DENIED","DIGITALOCEAN_IMPORT_FAILURE","DIGITALOCEAN_IMPORT_NOT_FOUND","DIGITALOCEAN_IMPORT_VALIDATION","DIGITALOCEAN_STORE_ACCESS_DENIED","DIGITALOCEAN_STORE_NOT_FOUND","DIGITALOCEAN_STORE_VALIDATION","DIGITALOCEAN_STORE_WRONG_REGION","DOCUMENT_AUTOROTATE_VALIDATION","DOCUMENT_CONVERT_UNSUPPORTED_CONVERSION","DOCUMENT_CONVERT_VALIDATION","DOCUMENT_EXTRACT_VALIDATION","DOCUMENT_MERGE_UNSUPPORTED_CONVERSION","DOCUMENT_MERGE_VALIDATION","DOCUMENT_OCR_VALIDATION","DOCUMENT_OPTIMIZE_UNSUPPORTED_INPUT","DOCUMENT_OPTIMIZE_VALIDATION","DOCUMENT_SPLIT_VALIDATION","DOCUMENT_THUMBS_INVALID_INPUT","DOCUMENT_THUMBS_VALIDATION","DO_NOT_REUSE_ASSEMBLY_IDS","DROPBOX_IMPORT_ACCESS_DENIED","DROPBOX_IMPORT_FAILURE","DROPBOX_IMPORT_NOT_FOUND","DROPBOX_IMPORT_VALIDATION","DROPBOX_STORE_COULD_NOT_PARSE_URL","DROPBOX_STORE_VALIDATION","FILE_COMPRESS_INVALID_INPUT","FILE_COMPRESS_VALIDATION","FILE_DECOMPRESS_INVALID_INPUT","FILE_DECOMPRESS_PASSWORD_INCORRECT","FILE_DECOMPRESS_PASSWORD_REQUIRED","FILE_DECOMPRESS_VALIDATION","FILE_DOWNLOAD_ERROR","FILE_FILTER_DECLINED_FILE","FILE_FILTER_INVALID_OPERATOR","FILE_FILTER_VALIDATION","FILE_HASH_VALIDATION","FILE_META_DATA_ERROR","FILE_PREVIEW_VALIDATION","FILE_READ_VALIDATION_ERROR","FILE_SERVE_NO_RESULT","FILE_SERVE_VALIDATION","FILE_VERIFY_INVALID_FILE","FILE_VERIFY_VALIDATION","FILE_VIRUSSCAN_DECLINED_FILE","FILE_VIRUSSCAN_INVALID_INPUT","FILE_VIRUSSCAN_VALIDATION","FTP_IMPORT_ACCESS_DENIED","FTP_IMPORT_FAILURE","FTP_IMPORT_NOT_FOUND","FTP_IMPORT_VALIDATION","FTP_STORE_VALIDATION","GET_ACCOUNT_DB_ERROR","GET_ACCOUNT_UNKNOWN_AUTH_KEY","GOOGLE_IMPORT_ACCESS_DENIED","GOOGLE_IMPORT_FAILURE","GOOGLE_IMPORT_NOT_FOUND","GOOGLE_IMPORT_VALIDATION","GOOGLE_STORE_INVALID_INPUT","GOOGLE_STORE_VALIDATION","HTML_CONVERT_VALIDATION","HTTP_IMPORT_ACCESS_DENIED","HTTP_IMPORT_FAILURE","HTTP_IMPORT_NOT_FOUND","HTTP_IMPORT_VALIDATION","HTTP_REQUEST_FAILURE","HTTP_REQUEST_VALIDATION","IMAGE_BGREMOVE_VALIDATION","IMAGE_COPYRIGHT_DETECT_DECLINED_FILE","IMAGE_COPYRIGHT_DETECT_VALIDATION","IMAGE_DESCRIBE_VALIDATION","IMAGE_ENHANCE_NO_INPUT_FILE","IMAGE_ENHANCE_VALIDATION","IMAGE_FACEDETECT_VALIDATION","IMAGE_GENERATE_VALIDATION","IMAGE_MERGE_FAILURE","IMAGE_MERGE_VALIDATION","IMAGE_OCR_VALIDATION","IMAGE_OPTIMIZE_VALIDATION","IMAGE_RESIZE_ERROR","IMAGE_RESIZE_INVALID_BLUR_REGION","IMAGE_RESIZE_INVALID_TEXT_OBJECT_VALUE","IMAGE_RESIZE_INVALID_TEXT_VALUE","IMAGE_RESIZE_INVALID_WATERMARK_OFFSET","IMAGE_RESIZE_INVALID_WATERMARK_POSITION","IMAGE_RESIZE_NO_CLUT_FILE","IMAGE_RESIZE_NO_INPUT_FILE","IMAGE_RESIZE_VALIDATION","IMAGE_UPSCALE_VALIDATION","IMPORT_FILE_ERROR","INCOMPLETE_PRICING","INSUFFICIENT_AUTH_SCOPE","INTERNAL_COMMAND_ERROR","INTERNAL_COMMAND_TIMEOUT","INVALID_ASSEMBLY_STATUS","INVALID_AUTH_EXPIRES_PARAMETER","INVALID_AUTH_KEY_PARAMETER","INVALID_AUTH_MAX_NUMBER_OF_FILES_PARAMETER","INVALID_AUTH_MAX_SIZE_PARAMETER","INVALID_AUTH_REFERER_PARAMETER","INVALID_FILE_META_DATA","INVALID_FORM_DATA","INVALID_INPUT_ERROR","INVALID_PARAMS_FIELD","INVALID_SIGNATURE","INVALID_STEP_NAME","INVALID_TEMPLATE_FIELD","INVALID_UPLOAD_HANDLE_STEP_NAME","INVALID_URL_ENCODING","MAX_NUMBER_OF_FILES_EXCEEDED","MAX_SIZE_EXCEEDED","MEGA_IMPORT_ACCESS_DENIED","MEGA_IMPORT_FAILURE","MEGA_IMPORT_NOT_FOUND","MEGA_IMPORT_VALIDATION","MEGA_STORE_ACCESS_DENIED","MEGA_STORE_NOT_FOUND","MEGA_STORE_VALIDATION","MEGA_STORE_WRONG_REGION","META_WRITE_VALIDATION","MINIO_IMPORT_ACCESS_DENIED","MINIO_IMPORT_FAILURE","MINIO_IMPORT_NOT_FOUND","MINIO_IMPORT_VALIDATION","MINIO_STORE_ACCESS_DENIED","MINIO_STORE_NOT_FOUND","MINIO_STORE_VALIDATION","MINIO_STORE_WRONG_REGION","NO_AUTH_EXPIRES_PARAMETER","NO_AUTH_KEY_PARAMETER","NO_AUTH_PARAMETER","NO_COUNTRY","NO_OBJECT_AUTH_PARAMETER","NO_OBJECT_PARAMS_FIELD","NO_PARAMS_FIELD","NO_PRICING","NO_RESULT_STEP_FOUND","NO_RPC_RESULT_FROM_IMAGE_RESIZER","NO_SIGNATURE_FIELD","NO_TEMPLATE_ID","PLAN_LIMIT_EXCEEDED","POSSIBLY_MALICIOUS_FILE_FOUND","PRIORITY_JOB_SLOTS_NOT_FOUND","PRIORITY_JOB_SLOT_STATS_ERROR","PRIORITY_JOB_SLOT_STATS_INVALID_AGGREGATION","PRIORITY_JOB_SLOT_STATS_INVALID_TIME","PRIORITY_JOB_SLOT_STATS_MISSING_REGION","RATE_LIMIT_REACHED","REFERER_MISMATCH","REQUEST_PREMATURE_CLOSED","ROBOT_VALIDATION_BASE_ERROR","S3_ACCESS_DENIED","S3_IMPORT_ACCESS_DENIED","S3_IMPORT_FAILURE","S3_IMPORT_NOT_FOUND","S3_IMPORT_VALIDATION","S3_NOT_FOUND","S3_STORE_ACCESS_DENIED","S3_STORE_FAILURE","S3_STORE_NOT_FOUND","S3_STORE_URL_VERIFICATION_FAILURE","S3_STORE_VALIDATION","S3_STORE_WRONG_REGION","S3_WRONG_REGION","SCRIPT_RUN_VALIDATION","SERVER_403","SERVER_404","SERVER_500","SFTP_IMPORT_ACCESS_DENIED","SFTP_IMPORT_FAILURE","SFTP_IMPORT_NOT_FOUND","SFTP_IMPORT_VALIDATION","SFTP_STORE_VALIDATION","SIGNATURE_REUSE_DETECTED","SPEECH_TRANSCRIBE_VALIDATION","STORAGE_GRANT_NOT_CREATED","SUPABASE_IMPORT_ACCESS_DENIED","SUPABASE_IMPORT_FAILURE","SUPABASE_IMPORT_NOT_FOUND","SUPABASE_IMPORT_VALIDATION","SUPABASE_STORE_ACCESS_DENIED","SUPABASE_STORE_NOT_FOUND","SUPABASE_STORE_VALIDATION","SUPABASE_STORE_WRONG_REGION","SWIFT_IMPORT_ACCESS_DENIED","SWIFT_IMPORT_FAILURE","SWIFT_IMPORT_NOT_FOUND","SWIFT_IMPORT_VALIDATION","SWIFT_STORE_ACCESS_DENIED","SWIFT_STORE_NOT_FOUND","SWIFT_STORE_VALIDATION","SWIFT_STORE_WRONG_REGION","TEMPLATE_CREDENTIALS_INJECTION_ERROR","TEMPLATE_DB_ERROR","TEMPLATE_DENIES_STEPS_OVERRIDE","TEMPLATE_INVALID_JSON","TEMPLATE_NOT_FOUND","TEXT_SPEAK_VALIDATION","TEXT_TRANSLATE_VALIDATION","TIGRIS_IMPORT_ACCESS_DENIED","TIGRIS_IMPORT_FAILURE","TIGRIS_IMPORT_NOT_FOUND","TIGRIS_IMPORT_VALIDATION","TIGRIS_STORE_ACCESS_DENIED","TIGRIS_STORE_NOT_FOUND","TIGRIS_STORE_VALIDATION","TIGRIS_STORE_WRONG_REGION","TMP_FILE_DOWNLOAD_ERROR","TOKEN_INVALID_CREDENTIALS","TRANSIENT_STORAGE_SERVICE_ERROR","TRANSLOADIT_IMPORT_ACCESS_DENIED","TRANSLOADIT_IMPORT_FAILURE","TRANSLOADIT_IMPORT_NOT_FOUND","TRANSLOADIT_IMPORT_VALIDATION","TRANSLOADIT_STORE_CONFLICT","TRANSLOADIT_STORE_FAILURE","TRANSLOADIT_STORE_UNAVAILABLE","TRANSLOADIT_STORE_VALIDATION","TUS_STORE_VALIDATION","USER_COMMAND_ERROR","VERIFIED_EMAIL_REQUIRED","VIDEO_ADAPTIVE_VALIDATION","VIDEO_ARTWORK_VALIDATION","VIDEO_CONCAT_INVALID_INPUT","VIDEO_CONCAT_NO_OUTPUT","VIDEO_CONCAT_VALIDATION","VIDEO_ENCODE_INVALID_VIDEO_CODEC","VIDEO_ENCODE_INVALID_WATERMARK_POSITION","VIDEO_ENCODE_VALIDATION","VIDEO_GENERATE_VALIDATION","VIDEO_MERGE_NO_IMAGE_FOUND","VIDEO_MERGE_VALIDATION","VIDEO_ONDEMAND_NOT_FOUND","VIDEO_ONDEMAND_VALIDATION","VIDEO_SPLIT_NO_OUTPUT","VIDEO_SPLIT_VALIDATION","VIDEO_SUBTITLE_VALIDATION","VIDEO_THUMBS_INVALID_COUNT_VALUE","VIDEO_THUMBS_INVALID_FORMAT","VIDEO_THUMBS_INVALID_INPUT","VIDEO_THUMBS_VALIDATION","VIMEO_IMPORT_ACCESS_DENIED","VIMEO_IMPORT_FAILURE","VIMEO_IMPORT_NOT_FOUND","VIMEO_IMPORT_VALIDATION","VIMEO_STORE_ACCESS_DENIED","VIMEO_STORE_PROBLEM_SENDING_FILE","VIMEO_STORE_VALIDATION","WASABI_IMPORT_ACCESS_DENIED","WASABI_IMPORT_FAILURE","WASABI_IMPORT_NOT_FOUND","WASABI_IMPORT_VALIDATION","WASABI_STORE_ACCESS_DENIED","WASABI_STORE_NOT_FOUND","WASABI_STORE_VALIDATION","WASABI_STORE_WRONG_REGION","WORKER_JOB_ERROR","YOUTUBE_STORE_PROBLEM_SENDING_FILE","YOUTUBE_STORE_VALIDATION"],"type":"string"},{"minLength":1,"type":"string"}],"description":"Indicates an [error](/docs/api/response-codes/#error-codes) status. This key is only present if\nthe Assembly failed. New error codes may be added. Handle unrecognized codes as failures and preserve their values for programmatic inspection.","x-transloadit-description-id":"assemblyStatusResponseError"},"executing_jobs":{"items":{"type":"string"},"type":"array"},"execution_duration":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The time taken by Transloadit to execute this Assembly, in seconds.","x-transloadit-description-id":"assemblyStatusResponseExecutionDuration"},"execution_start":{"type":["null","string"]},"exitCode":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"Optional exit status of a failed processing command. Diagnostic details may vary; use the `error` code for programmatic error handling.","x-transloadit-description-id":"assemblyStatusResponseExitCode"},"exitSignal":{"description":"Optional signal that terminated a processing command. Diagnostic details may vary; use the `error` code for programmatic error handling.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusResponseExitSignal"},"expected_tus_uploads":{"type":"number"},"fields":{"$ref":"#/components/schemas/Schema_b736e077f16daefe161b737933dc42c15027ce02d7bdb410497f29799a2151aa"},"file":{"type":"string"},"finished_tus_uploads":{"type":"number"},"has_dupe_jobs":{"type":"boolean"},"headers":{"additionalProperties":{},"type":"object"},"ignored_error_count":{"type":"number"},"ignored_errors":{"items":{"additionalProperties":true,"properties":{"error":{},"message":{"type":"string"},"phase":{"type":"string"},"step":{"type":["null","string"]}},"type":"object"},"type":"array"},"info":{"additionalProperties":true,"properties":{"retryIn":{"type":"number"}},"type":"object"},"instance":{"type":["null","string"]},"is_infinite":{"type":"boolean"},"is_private_address":{"type":"boolean"},"jobs_queue_duration":{"type":"number"},"last_job_completed":{"type":["null","string"]},"merged_params":{"type":["null","string"]},"message":{"description":"A human-readable message explaining the state of this Assembly. This is not always\npresent.","type":"string","x-transloadit-description-id":"assemblyStatusResponseMessage"},"name":{"type":"string"},"notify_duration":{"$ref":"#/components/schemas/Schema_98821d3fb80b8da19ecd734f66fdce4852dd42c3933f85148896f6e4b1232881"},"notify_error":{"type":["null","string"]},"notify_response_code":{"anyOf":[{"type":"number"},{"type":"null"}]},"notify_response_data":{"type":["null","string"]},"notify_start":{"type":["null","string"]},"notify_status":{"type":["null","string"]},"notify_url":{"type":["null","string"]},"numRetries":{"type":"number"},"num_input_files":{"type":"number"},"ok":{"type":"null"},"params":{"type":["null","string"]},"parent_assembly_status":{"anyOf":[{},{"type":"null"}]},"parent_id":{"type":["null","string"]},"playwright_error_code":{"type":"string"},"previousStep":{"description":"Name of the preceding Step associated with the error, when available.","type":"string","x-transloadit-description-id":"assemblyStatusResponsePreviousStep"},"queue_duration":{"type":"number"},"reason":{"anyOf":[{"type":"null"},{"type":"string"},{"type":"number"},{"type":"boolean"},{"items":{},"type":"array"},{"additionalProperties":{},"type":"object"}],"description":"Optional diagnostic details. Do not assume this value is a string or display it directly; use `message` for human-readable text. Diagnostic details may vary; use the `error` code for programmatic error handling.","x-transloadit-description-id":"assemblyStatusResponseReason"},"region":{"type":"string"},"response_code":{"anyOf":[{"type":"number"},{"type":"null"}]},"results":{"$ref":"#/components/schemas/Schema_acdda8455918771eb5b7d58d00e895c1326672fa85d67ad42497973e3292f5b8"},"retries":{"type":"number"},"retryable":{"type":"boolean"},"running_jobs":{"items":{"type":"string"},"type":"array"},"start_date":{"description":"The date and time at which upload started for this Assembly.","type":"string","x-transloadit-description-id":"assemblyStatusResponseStartDate"},"started_jobs":{"items":{"type":"string"},"type":"array"},"started_tus_uploads":{"type":"number"},"stderr":{"description":"Optional diagnostic output from a processing command, for troubleshooting. Diagnostic details may vary; use the `error` code for programmatic error handling.","type":"string","x-transloadit-description-id":"assemblyStatusResponseStderr"},"stdout":{"description":"Optional standard output from a processing command, for troubleshooting. Diagnostic details may vary; use the `error` code for programmatic error handling.","type":"string","x-transloadit-description-id":"assemblyStatusResponseStdout"},"step":{"description":"Name of the Step associated with the error, when available.","type":"string","x-transloadit-description-id":"assemblyStatusResponseStep"},"template":{"type":["null","string"]},"template_id":{"type":["null","string"]},"template_name":{"type":["null","string"]},"transloadit_client":{"type":["null","string"]},"tus_uploads":{"$ref":"#/components/schemas/Schema_d22a76a8ee6772f210db0c607b951c8c93ac86503e983681005064c9b1b4705d"},"tus_url":{"description":"The URL to the tus server used by this Assembly for [resumable\nuploads](/docs/api/resumable-uploads/).","type":"string","x-transloadit-description-id":"assemblyStatusResponseTusUrl"},"update_stream_url":{"$ref":"#/components/schemas/Schema_46291c8d1c92a74d382a7a6aed3de4d36d66c5dc3b0dee3c9d022c98afdd2dca"},"upload_duration":{"description":"The time taken by the uploader to upload files, in seconds.","type":"number","x-transloadit-description-id":"assemblyStatusResponseUploadDuration"},"upload_meta_data_extracted":{"type":"boolean"},"uploads":{"$ref":"#/components/schemas/Schema_d3ccf2a1956c64a2b53326785ba0c36292dd870853555c9b3d91afc00606e84b"},"uppyserver_url":{"type":["null","string"]},"url":{"type":"string"},"url_host":{"type":["null","string"]},"usage_tags":{"type":"string"},"virusname":{"type":"string"},"warnings":{"$ref":"#/components/schemas/Schema_005a01ba58ae0ad47bab35d7b78f964895edfa15304dc581291f5710082ad6b8"},"websocket_url":{"$ref":"#/components/schemas/Schema_360cb9b22505669e09179309638d53b007d6067cb34ce87083ee7c6478b2ea94"}},"required":["error"],"type":"object"}],"x-transloadit-schema-id":"sha256:7def4758686ba84befe3cec9842c1f4ab2bcb40aeaa5a26a55c39b02734ba937"},"Schema_7f097566eced15d91383f4594e6347c83bc019f301d60d1f97200b0c1bbf9f01":{"additionalProperties":true,"description":"Normalized lowercase headers for a canonical tus DELETE request.","properties":{"tus-resumable":{"const":"1.0.0","description":"The negotiated tus version.","type":"string","x-transloadit-description-id":"tusVersion"}},"required":["tus-resumable"],"type":"object","x-transloadit-description-id":"tusDeleteRequestHeaders","x-transloadit-schema-id":"sha256:7f097566eced15d91383f4594e6347c83bc019f301d60d1f97200b0c1bbf9f01"},"Schema_7f16f56b3c70f4e47af9b47f6c4b31aa85b568bc1de2916dd411803ed341ee7b":{"anyOf":[{"additionalProperties":true,"description":"Your Template Credentials could not be read.","properties":{"error":{"const":"TEMPLATE_CREDENTIALS_NOT_READ","type":"string"},"http_code":{"const":400,"type":"number"},"message":{"description":"Human-readable explanation of the error. Its wording can vary; use the `error` code when handling a specific failure.","type":"string","x-transloadit-description-id":"api2ErrorMessage"}},"required":["error"],"type":"object","x-transloadit-description-id":"api2ErrorTemplateCredentialsNotRead"},{"allOf":[{"$ref":"#/components/schemas/Schema_cb07bdaec8a57b18babcb0842531069c047ea76747de30cb3433ec3ab53763cb"}]}],"x-transloadit-schema-id":"sha256:7f16f56b3c70f4e47af9b47f6c4b31aa85b568bc1de2916dd411803ed341ee7b"},"Schema_7f25b58051081b331737944f9aae037f25dab15cb3961edbac57144acce9ae59":{"additionalProperties":true,"properties":{"content-type":{"const":"text/plain; charset=utf-8","type":"string"},"tus-resumable":{"const":"1.0.0","type":"string"},"x-content-type-options":{"const":"nosniff","type":"string"}},"required":["content-type","tus-resumable","x-content-type-options"],"type":"object","x-transloadit-schema-id":"sha256:7f25b58051081b331737944f9aae037f25dab15cb3961edbac57144acce9ae59"},"Schema_7f9c24af80e16d6034ea444d5f1a6c15d4dc6fd9a7d7b64377d8fe3de8d744e6":{"additionalProperties":false,"properties":{"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for a Template request.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"required":["expires","key"],"type":"object","x-transloadit-description-id":"templateAuth"},"fromdate":{"description":"Specifies the minimum UTC creation date/time for Workspace Templates. Only Workspace Templates created at or after this time are returned; Builtin Templates are not filtered by creation date. Use a UTC timestamp such as `2026-08-01 00:00:00` (`YYYY-MM-DD HH:mm:ss`).","type":"string","x-transloadit-description-id":"templatesFromDate"},"include_builtin":{"default":"none","description":"Controls whether Builtin Templates are included. Use `latest` (recommended) or `all`; prefix either with `exclusively-` to return only Builtin Templates. Builtin Templates appear before Workspace Templates in catalog order and share the requested pagination. The sort, order, fromdate and todate parameters apply only to Workspace Templates.","enum":["all","exclusively-all","exclusively-latest","latest","none"],"type":"string","x-transloadit-description-id":"includeBuiltinTemplates"},"keywords":{"anyOf":[{"type":"string"},{"items":{"type":"string"},"type":"array"}],"default":"","description":"Filters Workspace Template names using a SQL LIKE pattern surrounded by `%`. Within your value, `%` matches any sequence of characters and `_` matches one character. Prefer a single string. String arrays remain accepted for released clients and are joined with commas into one pattern, not separate search terms. Builtin Template slugs use a case-insensitive literal substring search instead; `%` and `_` are not wildcards for Builtin Templates.","x-transloadit-description-id":"templatesKeywords"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"},"order":{"default":"desc","description":"Specifies the sort direction for Workspace Templates. Does not change Builtin Template ordering. Defaults to `desc`.","enum":["asc","desc"],"type":"string","x-transloadit-description-id":"templatesOrder"},"page":{"default":1,"description":"Specifies the current page within the current pagination. Defaults to `1`.","maximum":9007199254740991,"minimum":1,"type":"integer","x-transloadit-description-id":"page"},"pagesize":{"default":850,"description":"Specifies how many Templates to return per API request. Defaults to `850`.","maximum":850,"minimum":1,"type":"integer","x-transloadit-description-id":"templatesPageSize"},"sort":{"default":"created","description":"Specifies the field used to sort Workspace Templates. Does not change Builtin Template ordering. Defaults to `created`.","enum":["created","id","last_used","modified","name"],"type":"string","x-transloadit-description-id":"templatesSort"},"todate":{"description":"Specifies the maximum UTC creation date/time for Workspace Templates. Only Workspace Templates created at or before this time are returned; Builtin Templates are not filtered by creation date. Use a UTC timestamp such as `2026-08-01 00:00:00` (`YYYY-MM-DD HH:mm:ss`).","type":"string","x-transloadit-description-id":"templatesToDate"}},"required":["auth"],"type":"object","x-transloadit-schema-id":"sha256:7f9c24af80e16d6034ea444d5f1a6c15d4dc6fd9a7d7b64377d8fe3de8d744e6"},"Schema_7fb91907bbf2388744de3246f974a20fbb2af44487c059a0da70d58ed9774170":{"additionalProperties":true,"properties":{"accept-ranges":{"const":"bytes","type":"string"},"content-disposition":{"minLength":1,"type":"string"},"content-length":{"description":"A canonical unsigned base-10 byte count in the signed 64-bit range, without zero padding or a plus sign.","pattern":"^(?:0|[1-9][0-9]{0,17}|[1-8][0-9]{18}|9[0-1][0-9]{17}|92[0-1][0-9]{16}|922[0-2][0-9]{15}|9223[0-2][0-9]{14}|92233[0-6][0-9]{13}|922337[0-1][0-9]{12}|92233720[0-2][0-9]{10}|922337203[0-5][0-9]{9}|9223372036[0-7][0-9]{8}|92233720368[0-4][0-9]{7}|922337203685[0-3][0-9]{6}|9223372036854[0-6][0-9]{5}|92233720368547[0-6][0-9]{4}|922337203685477[0-4][0-9]{3}|9223372036854775[0-7][0-9]{2}|922337203685477580[0-6]|9223372036854775807)$","type":"string","x-transloadit-description-id":"tusCanonicalByteCount"},"content-type":{"pattern":"^[a-z]+\\/[a-z0-9+.-]+$","type":"string"},"last-modified":{"minLength":1,"type":"string"},"tus-resumable":{"const":"1.0.0","type":"string"},"x-content-type-options":{"const":"nosniff","type":"string"}},"required":["accept-ranges","content-disposition","content-length","content-type","last-modified","tus-resumable","x-content-type-options"],"type":"object","x-transloadit-schema-id":"sha256:7fb91907bbf2388744de3246f974a20fbb2af44487c059a0da70d58ed9774170"},"Schema_80795bd6bd67bc4193d2c8da6172ae289b3b2c5c002c64e6a90a1a3c20bdd346":{"additionalProperties":false,"properties":{"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for an Auth Keys request.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"required":["expires","key"],"type":"object","x-transloadit-description-id":"authKeysAuth"},"auth_key":{"description":"Custom Auth Key value. API2 generates one when omitted. Characters outside Unicode’s Basic Multilingual Plane, including most emoji, are not supported.","maxLength":64,"pattern":"^[\u0000-퟿-￿]*$","type":"string","x-transloadit-description-id":"authKeyCustomValue"},"can_show_auth_secret":{"anyOf":[{"type":"boolean"},{"const":0,"type":"number"},{"const":1,"type":"number"}],"description":"Whether the generated secret may be revealed once after creation. Defaults to false. The creation response itself includes the secret regardless of this setting; store it securely.","x-transloadit-description-id":"authKeyCanShowSecret"},"description":{"description":"Human-readable Auth Key description. Characters outside Unicode’s Basic Multilingual Plane, including most emoji, are not supported.","maxLength":255,"pattern":"^[\u0000-퟿-￿]*$","type":"string","x-transloadit-description-id":"authKeyDescription"},"is_allowed_for_smartcdn":{"anyOf":[{"type":"boolean"},{"const":0,"type":"number"},{"const":1,"type":"number"}],"description":"Whether this Auth Key can authenticate Smart CDN URLs in addition to ordinary API requests and bearer-token issuance. Each operation still requires its own scope. On creation, omission defaults to false. On update, omission keeps the current value; send false explicitly to disable Smart CDN use.","x-transloadit-description-id":"authKeySmartCdnAllowed"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"},"scope":{"description":"Comma-separated Auth Key scopes. Duplicate scopes are normalized by API2.","pattern":"^(?:[\\x09-\\x0D\\x20\\xA0                　﻿]*,)*[\\x09-\\x0D\\x20\\xA0                　﻿]*(?:read|write|auth_keys:write|auth_keys:read|assemblies:write|assemblies:read|assembly_notifications:write|dam:read|dam:write|template_credentials:read|template_credentials:write|billing:read|queues:read|smart_cdn:sign|templates:read|templates:write|storage_grants:write)[\\x09-\\x0D\\x20\\xA0                　﻿]*(?:,[\\x09-\\x0D\\x20\\xA0                　﻿]*(?:(?:read|write|auth_keys:write|auth_keys:read|assemblies:write|assemblies:read|assembly_notifications:write|dam:read|dam:write|template_credentials:read|template_credentials:write|billing:read|queues:read|smart_cdn:sign|templates:read|templates:write|storage_grants:write)[\\x09-\\x0D\\x20\\xA0                　﻿]*)?)*$","type":"string","x-transloadit-description-id":"authKeyScopes"},"signature_algo":{"anyOf":[{"description":"HMAC algorithm used to sign requests with this Auth Key. On creation, ordinary API keys default to `sha384`. Smart CDN keys accept only `sha256` or `null` and default to `null`. On update, omission keeps the current value, except that enabling Smart CDN resets an incompatible algorithm to `null`.","enum":["sha1","sha256","sha384"],"type":"string","x-transloadit-description-id":"authKeySignatureAlgorithm"},{"type":"null"}],"description":"HMAC algorithm used to sign requests with this Auth Key. On creation, ordinary API keys default to `sha384`. Smart CDN keys accept only `sha256` or `null` and default to `null`. On update, omission keeps the current value, except that enabling Smart CDN resets an incompatible algorithm to `null`.","x-transloadit-description-id":"authKeySignatureAlgorithm"}},"required":["auth","scope"],"type":"object","x-transloadit-schema-id":"sha256:80795bd6bd67bc4193d2c8da6172ae289b3b2c5c002c64e6a90a1a3c20bdd346"},"Schema_814f073e849c70953228d4708d1a835d0d5699d222f4aa21f68821d93c3ba91e":{"additionalProperties":false,"properties":{"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for a Template Credentials request.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"required":["expires","key"],"type":"object","x-transloadit-description-id":"templateCredentialsAuth"},"content":{"anyOf":[{"anyOf":[{"additionalProperties":{},"type":"object"},{"type":"string"}]},{"type":"null"}],"description":"Omit this field or send `null` to retain all existing content. Key and value pairs for this credential type. Pass a JSON object or a JSON-encoded string that decodes to an object. See [supported credential types](/docs/api/template-credentials-types-get/) for their fields and [updating credentials](/docs/api/template-credentials-credentials-id-put/) for preservation and secret-rotation behavior.","x-transloadit-description-id":"templateCredentialsUpdateContent"},"name":{"description":"Name of the Template Credentials. Must be between 3 and 255 characters and contain only letters, digits, dashes, underscores, and dots.","pattern":"^[A-Za-zK0-9._-]{3,255}$","type":"string","x-transloadit-description-id":"templateCredentialsName"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"},"type":{"description":"The service these credentials belong to. On update, resend the existing type unchanged. To use a different service, create another Template Credential.","enum":["ai","azure","backblaze","box","cloudflare","companion","digitalocean","dropbox","ftp","google","http","mega","minio","rackspace","s3","sftp","supabase","swift","tigris","vimeo","wasabi","youtube"],"type":"string","x-transloadit-description-id":"templateCredentialsType"}},"required":["auth","name","type"],"type":"object","x-transloadit-schema-id":"sha256:814f073e849c70953228d4708d1a835d0d5699d222f4aa21f68821d93c3ba91e"},"Schema_81a83acc28006534ce4842a8c113d5e7fe31aa0ae3f623c98e5c373fdc2867fd":{"anyOf":[{"additionalProperties":true,"description":"The Assembly cancellation outcome could not be confirmed. Check its status before deciding whether to try again.","properties":{"error":{"const":"ASSEMBLY_CANCEL_UNAVAILABLE","type":"string"},"http_code":{"const":503,"type":"number"},"message":{"description":"Human-readable explanation of the error. Its wording can vary; use the `error` code when handling a specific failure.","type":"string","x-transloadit-description-id":"api2ErrorMessage"}},"required":["error"],"type":"object","x-transloadit-description-id":"api2ErrorAssemblyCancelUnavailable"},{"allOf":[{"$ref":"#/components/schemas/Schema_cb07bdaec8a57b18babcb0842531069c047ea76747de30cb3433ec3ab53763cb"}]}],"x-transloadit-schema-id":"sha256:81a83acc28006534ce4842a8c113d5e7fe31aa0ae3f623c98e5c373fdc2867fd"},"Schema_82b82f844a9d0f4274a6d334e8aba4f914533926796eb96a51dcba18915e4a8e":{"anyOf":[{"type":"string"},{"items":{"type":["null","string"]},"type":"array"}],"description":"The unique ID of the original upload file from which this file was generated. This is useful to\ndetermine which file of a multi-file upload was used to generate a given file, after several\nSteps of processing.","x-transloadit-description-id":"assemblyStatusFileOriginalId","x-transloadit-schema-id":"sha256:82b82f844a9d0f4274a6d334e8aba4f914533926796eb96a51dcba18915e4a8e"},"Schema_8305335b6eafa6a9a8c0e5d531016c79ff3ffd63f98546b464a7fd0b9473ba0f":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nSetting this to `true` will enable importing files from subfolders and sub-subfolders, etc. of the given path.\n\nPlease use the pagination parameters `page_number` and `files_per_page` wisely here.\n","x-transloadit-schema-id":"sha256:8305335b6eafa6a9a8c0e5d531016c79ff3ffd63f98546b464a7fd0b9473ba0f"},"Schema_846fca23a9d7f02825d388ae1fb440b75a4c4f2366725d02b4ef60cb0263551a":{"additionalProperties":false,"properties":{"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for a Template Credentials request.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"type":"object","x-transloadit-description-id":"templateCredentialsAuth"},"content":{"anyOf":[{"additionalProperties":{},"type":"object"},{"type":"string"}],"description":"Key and value pairs for this credential type. Pass a JSON object or a JSON-encoded string that decodes to an object. See [supported credential types](/docs/api/template-credentials-types-get/) for their fields and [updating credentials](/docs/api/template-credentials-credentials-id-put/) for preservation and secret-rotation behavior.","x-transloadit-description-id":"templateCredentialsContent"},"name":{"description":"Name of the Template Credentials. Must be between 3 and 255 characters and contain only letters, digits, dashes, underscores, and dots.","pattern":"^[A-Za-zK0-9._-]{3,255}$","type":"string","x-transloadit-description-id":"templateCredentialsName"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"},"type":{"description":"The service these credentials belong to. On update, resend the existing type unchanged. To use a different service, create another Template Credential.","enum":["ai","azure","backblaze","box","cloudflare","companion","digitalocean","dropbox","ftp","google","http","mega","minio","rackspace","s3","sftp","supabase","swift","tigris","vimeo","wasabi","youtube"],"type":"string","x-transloadit-description-id":"templateCredentialsType"}},"required":["content","name","type"],"type":"object","x-transloadit-schema-id":"sha256:846fca23a9d7f02825d388ae1fb440b75a4c4f2366725d02b4ef60cb0263551a"},"Schema_8487d0e12453112ed39e75778476ded0f3ed8d298232989948a2717cd876b510":{"anyOf":[{"items":{"additionalProperties":true,"properties":{"confidence":{"type":"number"},"height":{"type":"number"},"width":{"type":"number"},"x1":{"type":"number"},"x2":{"type":"number"},"y1":{"type":"number"},"y2":{"type":"number"}},"required":["height","width","x1","x2","y1","y2"],"type":"object"},"type":"array"},{"type":"null"}],"x-transloadit-schema-id":"sha256:8487d0e12453112ed39e75778476ded0f3ed8d298232989948a2717cd876b510"},"Schema_8656748a7135431e1adb16edf042a7f48c05f2aebc63ce14a909b328c4237055":{"description":"Transloadit can send a Pingback to your server when the Assembly is completed. We’ll send the Assembly Status as a JSON string in the `transloadit` field of an `application/x-www-form-urlencoded` POST request to the URL supplied here. Use `notification_payload` to reduce the payload size (e.g. `without_uploads`, `without_results`, `without_params`). Notification replays reuse only filters supplied in the original Assembly request, not filters defined only in a Template.","type":["null","string"],"x-transloadit-description-id":"notifyUrl","x-transloadit-schema-id":"sha256:8656748a7135431e1adb16edf042a7f48c05f2aebc63ce14a909b328c4237055"},"Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"items":{"enum":["execute","meta"],"type":"string"},"type":"array"}]}],"default":[],"description":"\nIgnore errors during specific phases of processing.\n\nSetting this to `[\"meta\"]` will cause the Robot to ignore errors during metadata extraction.\n\nSetting this to `[\"execute\"]` will cause the Robot to ignore errors during the main execution phase.\n\nSetting this to `true` is equivalent to `[\"meta\", \"execute\"]` and will ignore errors in both phases.\n","x-transloadit-schema-id":"sha256:866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"Schema_890804d234d612ea9886169f8a823d94ff84c70cb7d3497c939d7c64c840c852":{"anyOf":[{"additionalProperties":true,"properties":{"accept-ranges":{"const":"bytes","type":"string"},"content-disposition":{"minLength":1,"type":"string"},"content-length":{"$ref":"#/components/schemas/Schema_b54f48fb2e4d0bf53206494c64de3ea8f644cbce7badf257a3b4b3e543b55c87"},"content-range":{"description":"The inclusive returned byte range and current stored size, not the declared final upload length.","pattern":"^bytes [0-9]+-[0-9]+\\/[0-9]+$","type":"string","x-transloadit-description-id":"tusContentRange"},"content-type":{"pattern":"^[a-z]+\\/[a-z0-9+.-]+$","type":"string"},"last-modified":{"minLength":1,"type":"string"},"tus-resumable":{"const":"1.0.0","type":"string"},"x-content-type-options":{"const":"nosniff","type":"string"}},"required":["accept-ranges","content-disposition","content-length","content-range","content-type","last-modified","tus-resumable","x-content-type-options"],"type":"object"},{"additionalProperties":true,"properties":{"accept-ranges":{"const":"bytes","type":"string"},"content-disposition":{"minLength":1,"type":"string"},"content-length":{"$ref":"#/components/schemas/Schema_b54f48fb2e4d0bf53206494c64de3ea8f644cbce7badf257a3b4b3e543b55c87"},"content-range":{"not":{}},"content-type":{"pattern":"^multipart\\/byteranges; boundary=[0-9a-f]{60}$","type":"string"},"last-modified":{"minLength":1,"type":"string"},"tus-resumable":{"const":"1.0.0","type":"string"},"x-content-type-options":{"const":"nosniff","type":"string"}},"required":["accept-ranges","content-disposition","content-length","content-type","last-modified","tus-resumable","x-content-type-options"],"type":"object"}],"x-transloadit-schema-id":"sha256:890804d234d612ea9886169f8a823d94ff84c70cb7d3497c939d7c64c840c852"},"Schema_894ca51bc217ffa7c8529a59e38dd1724955749efb7587c16084f133dcc1d688":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["black","blue","cyan","gray","green","grey","magenta","none","opaque","red","transparent","white","yellow"],"type":"string"}],"x-transloadit-schema-id":"sha256:894ca51bc217ffa7c8529a59e38dd1724955749efb7587c16084f133dcc1d688"},"Schema_8ae0b8fbf79b68fb3deaf6da0348e39fc3fa033f61c4544fbb4b4e6cd48fb3b5":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["aac","alac","android","android-high","android-low","android_high","android_low","audio/aac","audio/alac","audio/flac","audio/mp3","audio/ogg","dash-1080p-video","dash-1080p_video","dash-128k-audio","dash-128k_audio","dash-256k-audio","dash-256k_audio","dash-270p-video","dash-270p_video","dash-32k-audio","dash-32k_audio","dash-360p-video","dash-360p_video","dash-480p-video","dash-480p_video","dash-540p-video","dash-540p_video","dash-576p-video","dash-576p_video","dash-64k-audio","dash-64k_audio","dash-720p-video","dash-720p_video","dash/1080p-video","dash/1080p_video","dash/128k-audio","dash/128k_audio","dash/256k-audio","dash/256k_audio","dash/270p-video","dash/270p_video","dash/32k-audio","dash/32k_audio","dash/360p-video","dash/360p_video","dash/480p-video","dash/480p_video","dash/540p-video","dash/540p_video","dash/576p-video","dash/576p_video","dash/64k-audio","dash/64k_audio","dash/720p-video","dash/720p_video","dash_1080p-video","dash_1080p_video","dash_128k-audio","dash_128k_audio","dash_256k-audio","dash_256k_audio","dash_270p-video","dash_270p_video","dash_32k-audio","dash_32k_audio","dash_360p-video","dash_360p_video","dash_480p-video","dash_480p_video","dash_540p-video","dash_540p_video","dash_576p-video","dash_576p_video","dash_64k-audio","dash_64k_audio","dash_720p-video","dash_720p_video","empty","flac","flash","gif","hevc","hg-transformers-audio","hg-transformers_audio","hg_transformers-audio","hg_transformers_audio","hls-1080p","hls-270p","hls-360p","hls-480p","hls-540p","hls-576p","hls-720p","hls/1080p","hls/270p","hls/360p","hls/480p","hls/4k","hls/540p","hls/720p","hls_1080p","hls_270p","hls_360p","hls_480p","hls_540p","hls_576p","hls_720p","ipad","ipad-high","ipad-low","ipad_high","ipad_low","iphone","iphone-high","iphone-low","iphone_high","iphone_low","mp3","ogg","ogv","opus","speech","vod/1080p","vod/270p","vod/480p","vod/720p","vp9","vp9-1080p","vp9-270p","vp9-360p","vp9-480p","vp9-540p","vp9-576p","vp9-720p","vp9_1080p","vp9_270p","vp9_360p","vp9_480p","vp9_540p","vp9_576p","vp9_720p","wav","web/mp4-x265/1080p","web/mp4-x265/240p","web/mp4-x265/360p","web/mp4-x265/480p","web/mp4-x265/4k","web/mp4-x265/720p","web/mp4-x265/8k","web/mp4/1080p","web/mp4/240p","web/mp4/360p","web/mp4/480p","web/mp4/4k","web/mp4/540p","web/mp4/720p","web/mp4/8k","web/mp4_x265/1080p","web/mp4_x265/240p","web/mp4_x265/360p","web/mp4_x265/480p","web/mp4_x265/4k","web/mp4_x265/720p","web/mp4_x265/8k","web/webm-av1/1080p","web/webm-av1/240p","web/webm-av1/360p","web/webm-av1/480p","web/webm-av1/4k","web/webm-av1/720p","web/webm-av1/8k","web/webm/1080p","web/webm/240p","web/webm/360p","web/webm/480p","web/webm/4k","web/webm/720p","web/webm/8k","web/webm_av1/1080p","web/webm_av1/240p","web/webm_av1/360p","web/webm_av1/480p","web/webm_av1/4k","web/webm_av1/720p","web/webm_av1/8k","webm","webm-1080p","webm-270p","webm-360p","webm-480p","webm-540p","webm-576p","webm-720p","webm_1080p","webm_270p","webm_360p","webm_480p","webm_540p","webm_576p","webm_720p","wmv"],"type":"string"}],"description":"\nConverts a video according to [pre-configured settings](/docs/presets/video/).\n\nYou can use the value `'empty'` here if you specify your own FFmpeg parameters using the <dfn>Robot</dfn> or do not want Transloadit to set any encoding settings.\n","x-transloadit-schema-id":"sha256:8ae0b8fbf79b68fb3deaf6da0348e39fc3fa033f61c4544fbb4b4e6cd48fb3b5"},"Schema_8b7fe97abf49a0f1ab09b376d08f18200d03ada9e3307144dd075611afe5c6d7":{"anyOf":[{"additionalProperties":true,"description":"The DAM mutation could not be completed. Please try again.","properties":{"error":{"const":"DAM_MUTATION_FAILED","type":"string"},"http_code":{"const":500,"type":"number"},"message":{"description":"Human-readable explanation of the error. Its wording can vary; use the `error` code when handling a specific failure.","type":"string","x-transloadit-description-id":"api2ErrorMessage"}},"required":["error"],"type":"object","x-transloadit-description-id":"api2ErrorDamMutationFailed"},{"allOf":[{"$ref":"#/components/schemas/Schema_cb07bdaec8a57b18babcb0842531069c047ea76747de30cb3433ec3ab53763cb"}]}],"x-transloadit-schema-id":"sha256:8b7fe97abf49a0f1ab09b376d08f18200d03ada9e3307144dd075611afe5c6d7"},"Schema_8be2cd1ead5dc3bef9e45523f716cffa2e21710d1e93da7905dc608d7be4af00":{"additionalProperties":false,"properties":{"assembly_status_expiry":{"description":"Controls how long the Assembly Status is retained for Assemblies created from this Template.","enum":["1day","30days","7days","90days","NoSave"],"type":"string","x-transloadit-description-id":"templateAssemblyStatusExpiry"},"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for a Template request.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"type":"object","x-transloadit-description-id":"templateAuth"},"name":{"description":"Name of this Template. Use 3–200 lowercase Latin letters, numbers, or dashes. The name `tmp` and service-reserved names are unavailable.","maxLength":200,"minLength":3,"pattern":"^(?:[a-su-z0-9-][a-z0-9-]{2,199}|t[a-ln-z0-9-][a-z0-9-]{1,198}|tm[a-oq-z0-9-][a-z0-9-]{0,197}|tmp[a-z0-9-]{1,197})$","type":"string","x-transloadit-description-id":"templateName"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"},"require_signature_auth":{"description":"Use `1` to require a valid signature when creating Assemblies from this Template with an Auth Key. Valid bearer tokens bypass this signature requirement; their scopes and audience still apply. This setting does not add authentication to Assembly status, cancellation or upload capability URLs. See [Signature Authentication](/docs/api/authentication/).","enum":[0,1],"type":"number","x-transloadit-description-id":"requireSignatureAuth"},"template":{"anyOf":[{"additionalProperties":false,"description":"Structured Assembly Instructions stored in this Template.","properties":{"allow_steps_override":{"description":"Set this to false in a stored Template to disallow overriding its Steps at runtime. The Template may then be used with `template_id`, or direct `steps` may be supplied without it, but not both. A value supplied only while creating an Assembly does not control this policy.","type":"boolean","x-transloadit-description-id":"allowStepsOverride"},"auth":{"additionalProperties":false,"description":"Optional authentication and upload constraints for an Assembly. The API key may be omitted for bearer-authenticated requests or when only upload constraints are stored in a Template.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"},"max_number_of_files":{"description":"Maximum number of input files allowed per Assembly. If the number of uploaded or imported files exceeds this limit, the Assembly will be stopped with an error. This is useful for preventing abuse when Signature Authentication credentials are exposed.","minimum":1,"type":"integer","x-transloadit-description-id":"signatureAuthMaxNumberOfFiles"},"max_size":{"description":"Maximum total expected upload size in bytes for the Assembly, including request-body overhead. This is not a per-file limit and does not guarantee rejection before a resumable transfer starts.","type":"number","x-transloadit-description-id":"signatureAuthMaxSize"},"referer":{"description":"Regular expression matched against a supplied HTTP Referer. Invalid expressions and expressions that exceed the evaluation time limit are rejected. Missing Referer headers pass this check; use Signature Authentication to authenticate requests.","type":"string","x-transloadit-description-id":"signatureAuthReferer"}},"type":"object","x-transloadit-description-id":"assemblyOptionalAuth"},"emit_execution_progress":{"description":"Set to true to publish real-time Assembly execution-progress events. This is ignored for URL Transform Assemblies.","type":"boolean","x-transloadit-description-id":"assemblyEmitExecutionProgress"},"exiftool_stack":{"description":"Ignored when stored in a Template. To select the ExifTool stack for metadata extraction, set `exiftool_stack` in the top-level Assembly request params instead.","type":"string","x-transloadit-description-id":"storedTemplateExifToolStack"},"ffmpeg_stack":{"description":"Ignored when stored in a Template. To select the FFmpeg stack for metadata extraction, set `ffmpeg_stack` in the top-level Assembly request params instead.","type":"string","x-transloadit-description-id":"storedTemplateFfmpegStack"},"fields":{"additionalProperties":{},"description":"An object of string keyed values (name -> value) that can be used as Assembly Variables, just like additional form fields can. You can use anything that is JSON stringifyable as a value","type":"object","x-transloadit-description-id":"fields"},"imagemagick_stack":{"description":"Ignored when stored in a Template. To select the ImageMagick stack for metadata extraction, set `imagemagick_stack` in the top-level Assembly request params instead.","type":"string","x-transloadit-description-id":"storedTemplateImageMagickStack"},"mediainfo_stack":{"description":"Ignored when stored in a Template. To select the MediaInfo stack for metadata extraction, set `mediainfo_stack` in the top-level Assembly request params instead.","type":"string","x-transloadit-description-id":"storedTemplateMediaInfoStack"},"mplayer_stack":{"description":"Ignored when stored in a Template. To select the MPlayer stack for metadata extraction, set `mplayer_stack` in the top-level Assembly request params instead.","type":"string","x-transloadit-description-id":"storedTemplateMplayerStack"},"notification_payload":{"description":"Controls the size of the payload sent in Assembly notifications. Notification replays reuse filters supplied in the original Assembly request; filters defined only in a Template are not preserved on replay. An empty array (default) sends the complete Assembly Status. Add `\"without_params\"` so the top-level raw Assembly instruction fields `params`, `template`, and `merged_params` are omitted. Add `\"without_result_meta_data\"` so `meta` is omitted from each file in `results`. Add `\"without_results\"` so the top-level `results` object is omitted. Add `\"without_upload_meta_data\"` so `meta` is omitted from each file in `uploads`. Add `\"without_uploads\"` so the top-level `uploads` array is omitted. Filtering is applied before serialization, so using these options reduces memory use and helps avoid oversized-payload or OOM failures on large Assemblies.","items":{"enum":["without_params","without_result_meta_data","without_results","without_upload_meta_data","without_uploads"],"type":"string"},"type":"array","x-transloadit-description-id":"notificationPayload"},"notify_url":{"description":"Transloadit can send a Pingback to your server when the Assembly is completed. We’ll send the Assembly Status as a JSON string in the `transloadit` field of an `application/x-www-form-urlencoded` POST request to the URL supplied here. Use `notification_payload` to reduce the payload size (e.g. `without_uploads`, `without_results`, `without_params`). Notification replays reuse only filters supplied in the original Assembly request, not filters defined only in a Template.","type":["null","string"],"x-transloadit-description-id":"notifyUrl"},"quiet":{"description":"Set this to true to minimize the initial Assembly-creation response. A successful response includes only ok and assembly_id; an error response retains error, http_code, message, reason and assembly_id when available. This is response minimization, not access control: anyone with the returned Assembly ID can still retrieve the full Assembly Status, including fields and results, without additional authentication. Treat Assembly IDs and status URLs as secret capabilities. The full Assembly Status is still sent to notify_url when configured.","type":"boolean","x-transloadit-description-id":"quiet"},"redirect_url":{"description":"URL to redirect a browser upload to after the upload completes. The Assembly ID and status URL are appended as query parameters while preserving any existing query parameters and fragment.","type":"string","x-transloadit-description-id":"assemblyRedirectUrl"},"response_headers":{"additionalProperties":true,"description":"Custom response headers emitted by an Assembly. CORS overrides belong in `cors`; other top-level keys are emitted as custom headers.","properties":{"cors":{"additionalProperties":true,"properties":{"Access-Control-Allow-Credentials":{"type":"boolean"},"Access-Control-Allow-Headers":{"type":"string"},"Access-Control-Allow-Methods":{"type":"string"},"Access-Control-Allow-Origin":{"type":"string"},"Access-Control-Allow-Private-Network":{"type":"boolean"},"Access-Control-Allow-Public-Network":{"type":"boolean"},"Access-Control-Expose-Headers":{"type":"string"},"Access-Control-Max-Age":{"type":"number"}},"type":"object"}},"type":"object","x-transloadit-description-id":"assemblyResponseHeaders"},"steps":{"allOf":[{"$ref":"#/components/schemas/Schema_97aad3d37f5046edcb335db4458316ce19e3edbaf9c9f74754f078aae9e99450"}],"description":"Contains Assembly Instructions.","x-transloadit-description-id":"assemblyInstructions"},"template_id":{"description":"Ignored when stored in a Template. Templates do not inherit Instructions from another Template. Put the Steps directly in this Template and select it using `template_id` in the top-level Assembly request params.","type":"string","x-transloadit-description-id":"storedTemplateId"},"usage_tags":{"description":"Usage tags recorded on an Assembly.","type":"string","x-transloadit-description-id":"assemblyUsageTags"}},"type":"object","x-transloadit-description-id":"templateContentObject"},{"description":"JSON-encoded Assembly Instructions retained for client compatibility.","pattern":"^[\\x09-\\x0D\\x20\\xA0                　﻿]*\\{(?:[^\\x00]|\\x00)*\\}[\\x09-\\x0D\\x20\\xA0                　﻿]*$","type":"string","x-transloadit-description-id":"templateContentJson","x-transloadit-input-fidelity":"conservative"}],"description":"Assembly Instructions stored in this Template. Prefer the structured JSON object; a JSON-encoded string remains accepted for compatibility.","x-transloadit-description-id":"template"},"transcoding_result_expiry":{"description":"Controls how long transcoding results are retained for Assemblies created from this Template.","enum":["1day","NoSave"],"type":"string","x-transloadit-description-id":"templateTranscodingResultExpiry"}},"type":"object","x-transloadit-schema-id":"sha256:8be2cd1ead5dc3bef9e45523f716cffa2e21710d1e93da7905dc608d7be4af00"},"Schema_8bef30e845687818c225b81030d97335d9454464b4970117e2538a5bf473186e":{"additionalProperties":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"$ref":"#/components/schemas/Schema_a8213ce4c995e2d44b094b3ea909eddf983764d183e2903635e64aa32732520a"},{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},{"type":"null"}]},"type":"object","x-transloadit-schema-id":"sha256:8bef30e845687818c225b81030d97335d9454464b4970117e2538a5bf473186e"},"Schema_8c4ad79bf6bd7b482c47fde8c3be8d8a73fc7d70dc89a0a1ab1c67e06d82bd82":{"additionalProperties":false,"properties":{"assembly_status_expiry":{"type":["null","string"]},"content":{"anyOf":[{"additionalProperties":{},"type":"object"},{"items":{},"type":"array"},{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"}]},"id":{"anyOf":[{"maxLength":32,"pattern":"^[\\x00-\\x7F]*$","type":"string"},{"maxLength":32,"pattern":"^builtin\\/[a-z0-9-]+(?:@[0-9a-z.-]+)?$","type":"string"}]},"message":{"minLength":1,"type":"string"},"name":{"maxLength":255,"minLength":1,"type":"string"},"ok":{"const":"TEMPLATE_CREATED","type":"string"},"require_signature_auth":{"enum":[0,1],"type":"number"},"transcoding_result_expiry":{"type":["null","string"]}},"required":["assembly_status_expiry","content","id","message","name","ok","require_signature_auth","transcoding_result_expiry"],"type":"object","x-transloadit-schema-id":"sha256:8c4ad79bf6bd7b482c47fde8c3be8d8a73fc7d70dc89a0a1ab1c67e06d82bd82"},"Schema_8c67d074b4dda4e673e2e8a9bb2ad781f1daded5d942e5eb0f0c82abb1b3d958":{"description":"Optional build identifier for support troubleshooting. Treat it as opaque; it may change between Assemblies.","type":"string","x-transloadit-description-id":"assemblyStatusResponseBuildId","x-transloadit-schema-id":"sha256:8c67d074b4dda4e673e2e8a9bb2ad781f1daded5d942e5eb0f0c82abb1b3d958"},"Schema_8c987e88773d0f9f6d0093c337387d3211a2386c2e1c01403b1c26dc95f28c2a":{"additionalProperties":false,"properties":{"assets":{"items":{"additionalProperties":true,"properties":{"asset_id":{"description":"Stable asset ID. It survives native moves and renames; use it without a version to select the current bytes.","pattern":"^[A-Za-z0-9_-]{21}[AQgw]$","type":"string","x-transloadit-description-id":"storedAssetAssetId"},"has_alpha":{"description":"Whether the image has an alpha channel, even if all its pixels are opaque. Present when ThumbHash extraction succeeds; absence means unknown.","type":"boolean","x-transloadit-description-id":"storedAssetHasAlpha"},"height":{"description":"Display height in pixels, after applying EXIF orientation, when known.","exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer","x-transloadit-description-id":"storedAssetHeight"},"md5hash":{"description":"Lowercase MD5 checksum of the stored bytes, when available.","pattern":"^[a-f0-9]{32}$","type":"string","x-transloadit-description-id":"storedAssetMd5Hash"},"mime":{"description":"MIME type of the stored bytes, or null when unknown.","type":["null","string"],"x-transloadit-description-id":"storedAssetMime"},"path":{"description":"Current mutable location relative to the Workspace. A rename makes the previous path stale; overwriting can change the bytes at this path.","minLength":1,"type":"string","x-transloadit-description-id":"storedAssetPath"},"sha256":{"description":"Lowercase SHA-256 checksum of the stored bytes, when available.","pattern":"^[a-f0-9]{64}$","type":"string","x-transloadit-description-id":"storedAssetSha256"},"size":{"description":"Size of the stored file in bytes.","maximum":9007199254740991,"minimum":0,"type":"integer","x-transloadit-description-id":"storedAssetSize"},"thumbhash":{"description":"Base64-encoded ThumbHash of this version’s displayed pixels, when requested with output_meta.thumbhash on its producing Step. This is image data: apply the same access controls as the original.","pattern":"^(?:[A-Za-z0-9+/]{4}){1,15}(?:[A-Za-z0-9+/]{4}|[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)$","type":"string","x-transloadit-description-id":"storedAssetThumbhash"},"version_id":{"description":"Exact immutable version of this asset. Pair with asset_id to select retained bytes; a missing version never falls back to the current version.","pattern":"^[A-Za-z0-9_-]{21}[AQgw]$","type":"string","x-transloadit-description-id":"storedAssetVersionId"},"width":{"description":"Display width in pixels, after applying EXIF orientation, when known.","exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer","x-transloadit-description-id":"storedAssetWidth"},"workspace":{"description":"Workspace slug that owns this asset. Authenticate for the same Workspace when reading or managing it.","minLength":1,"type":"string","x-transloadit-description-id":"storedAssetWorkspace"}},"required":["asset_id","mime","path","size","version_id","workspace"],"type":"object"},"type":"array"},"message":{"minLength":1,"type":"string"},"next_cursor":{"type":["null","string"]},"ok":{"const":"DAM_ASSETS_LISTED","type":"string"},"workspace":{"description":"Workspace slug that owns this asset. Authenticate for the same Workspace when reading or managing it.","minLength":1,"type":"string","x-transloadit-description-id":"storedAssetWorkspace"}},"required":["assets","message","next_cursor","ok","workspace"],"type":"object","x-transloadit-schema-id":"sha256:8c987e88773d0f9f6d0093c337387d3211a2386c2e1c01403b1c26dc95f28c2a"},"Schema_8e7ed1be08df9219cc84f79912d659318e9bb5a1f8b241e3600c03a63956b576":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nWhether to create a URL to this file for sharing with other people. This will overwrite the file's `\"url\"` property.\n","x-transloadit-schema-id":"sha256:8e7ed1be08df9219cc84f79912d659318e9bb5a1f8b241e3600c03a63956b576"},"Schema_9078af0c8fa2eacba340b713a60073b4ab7866926df6574f217706a3d1e36cfd":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["auto","aws","gcp"],"type":"string"}],"default":"auto","description":"Chooses the best provider based on your request.\n\nSelect a specific provider to override automatic selection.\nAWS supports detection for the following languages: English, Arabic, Russian, German, French, Italian, Portuguese and Spanish. GCP allows for a wider range of languages, with varying levels of support which can be found on the [official documentation](https://cloud.google.com/vision/docs/languages/).\n","x-transloadit-schema-id":"sha256:9078af0c8fa2eacba340b713a60073b4ab7866926df6574f217706a3d1e36cfd"},"Schema_91a0439dbbd92cd45383cfadc493423b2037036823521cb4160c86b270240132":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":true,"description":"\nIf this is set to `false`, smaller videos will not be stretched to the desired width and height. For details about the impact of zooming for your preferred resize strategy, see the list of available [resize strategies](/docs/topics/resize-strategies/).\n","x-transloadit-schema-id":"sha256:91a0439dbbd92cd45383cfadc493423b2037036823521cb4160c86b270240132"},"Schema_91ebf076951a09d46d134e429dae1060e4764ff23a9611174fcaac45893a5f52":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["bottom","bottom-left","bottom-right","center","left","right","top","top-left","top-right"],"type":"string"}],"x-transloadit-schema-id":"sha256:91ebf076951a09d46d134e429dae1060e4764ff23a9611174fcaac45893a5f52"},"Schema_931c3d3fa0183a1ad90aa5e4dfb4cde8fd2e6fb6f48f16de37fbaf754b6bf430":{"additionalProperties":false,"properties":{"asset_ids":{"items":{"description":"Case-sensitive, canonical 22-character Base64URL DAM identifier.","pattern":"^[A-Za-z0-9_-]{21}[AQgw]$","type":"string","x-transloadit-description-id":"damId"},"maxItems":100,"minItems":1,"type":"array","uniqueItems":true},"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for a DAM mutation.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"type":"object","x-transloadit-description-id":"damMutationAuth"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"}},"required":["asset_ids"],"type":"object","x-transloadit-schema-id":"sha256:931c3d3fa0183a1ad90aa5e4dfb4cde8fd2e6fb6f48f16de37fbaf754b6bf430"},"Schema_93f6798a65ce5f82f9f24e57970692d0637744d29ed7af56ed96d02c14a59f79":{"additionalProperties":false,"properties":{"bundle_steps":{"type":"boolean"},"fields":{"description":"\nArray of field names to filter input files by when using steps.\n","items":{"type":"string"},"type":"array"},"group_by_original":{"type":"boolean"},"steps":{"$ref":"#/components/schemas/Schema_dce1096fff6767b5f477f31f13c4e33289b9e9f3a0fd3df2000b731877c8d4bb"}},"required":["steps"],"type":"object","x-transloadit-schema-id":"sha256:93f6798a65ce5f82f9f24e57970692d0637744d29ed7af56ed96d02c14a59f79"},"Schema_9512d12bb73438b337e679242bd743ae4b5856d07e71ede1ace50fad9b0b14a6":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"}],"x-transloadit-schema-id":"sha256:9512d12bb73438b337e679242bd743ae4b5856d07e71ede1ace50fad9b0b14a6"},"Schema_9681caa0aa6542ed2a643b183b7c36d228a47074be0dabdc585931c16610f02c":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"additionalProperties":false,"properties":{"from":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]}],"description":"Start time of the segment in seconds (e.g. `30`) or as a timecode string (e.g. `\"00:00:30.000\"`)."},"to":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]}],"description":"End time of the segment in seconds (e.g. `60`) or as a timecode string (e.g. `\"00:01:00.000\"`)."}},"required":["from","to"],"type":"object"}],"x-transloadit-schema-id":"sha256:9681caa0aa6542ed2a643b183b7c36d228a47074be0dabdc585931c16610f02c"},"Schema_97aad3d37f5046edcb335db4458316ce19e3edbaf9c9f74754f078aae9e99450":{"additionalProperties":{"anyOf":[{"additionalProperties":false,"properties":{"asset_id":{"description":"\nThe stored asset's stable ID. Without `version_id`, imports its current version even after\nrenaming or moving it. Cannot be combined with `path` or recursive folder imports.\n","not":{}},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"force_name":{"$ref":"#/components/schemas/Schema_e2d753e6b6111506a4565bdb18eccafd67d2027839616974639f5565d695fafd"},"ignore_errors":{"$ref":"#/components/schemas/Schema_03e4961eba9e9b422ce714f9224b8d47a380c80d27b8342a78ba4e2702feb4db"},"import_on_errors":{"$ref":"#/components/schemas/Schema_61808f40a326596fd9674ebbd91184b0a2e04f8c67eb49fdf9f9449580271ab8"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"path":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nThe current file or folder location, for example `photos/cat.jpg`. Use either `path` or\n`asset_id`, not both. Renaming makes an old path stale; overwriting changes what it imports.\n"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"recursive":{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"}],"default":false,"description":"\nWhether to import files from subfolders and sub-subfolders when `path` is a folder. By default\nonly the folder's own files are imported.\n"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"$ref":"#/components/schemas/Schema_6c84276367657f004182c40181e6a75f0bbb8b764190745b1a9d346b766311ee"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"},"version_id":{"description":"\nThe exact retained version of `asset_id` to import. Requires `asset_id`; a missing or deleted\nversion never falls back to the current version.\n","not":{}}},"required":["path","robot"],"type":"object"},{"additionalProperties":false,"properties":{"asset_id":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"description":"Case-sensitive, canonical 22-character Base64URL DAM identifier.","pattern":"^[A-Za-z0-9_-]{21}[AQgw]$","type":"string","x-transloadit-description-id":"damId"}],"description":"\nThe stored asset's stable ID. Without `version_id`, imports its current version even after\nrenaming or moving it. Cannot be combined with `path` or recursive folder imports.\n"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"force_name":{"$ref":"#/components/schemas/Schema_e2d753e6b6111506a4565bdb18eccafd67d2027839616974639f5565d695fafd"},"ignore_errors":{"$ref":"#/components/schemas/Schema_03e4961eba9e9b422ce714f9224b8d47a380c80d27b8342a78ba4e2702feb4db"},"import_on_errors":{"$ref":"#/components/schemas/Schema_61808f40a326596fd9674ebbd91184b0a2e04f8c67eb49fdf9f9449580271ab8"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"path":{"description":"\nThe current file or folder location, for example `photos/cat.jpg`. Use either `path` or\n`asset_id`, not both. Renaming makes an old path stale; overwriting changes what it imports.\n","not":{}},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"recursive":{"anyOf":[{"const":false,"type":"boolean"},{"const":"false","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"}],"default":false,"description":"\nWhether to import files from subfolders and sub-subfolders when `path` is a folder. By default\nonly the folder's own files are imported.\n"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"$ref":"#/components/schemas/Schema_6c84276367657f004182c40181e6a75f0bbb8b764190745b1a9d346b766311ee"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"},"version_id":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"description":"Case-sensitive, canonical 22-character Base64URL DAM identifier.","pattern":"^[A-Za-z0-9_-]{21}[AQgw]$","type":"string","x-transloadit-description-id":"damId"}],"description":"\nThe exact retained version of `asset_id` to import. Requires `asset_id`; a missing or deleted\nversion never falls back to the current version.\n"}},"required":["asset_id","robot"],"type":"object"},{"additionalProperties":false,"properties":{"change_format_if_necessary":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nWhether the original file should be transcoded into a new format if there is an issue with the original file.\n","x-transloadit-description-id":"audioArtworkChangeFormatIfNecessary"},"ffmpeg":{"$ref":"#/components/schemas/Schema_15464c9d28640e7bf8903ba6d26df07ca6adbb8f0503e291180fa8a4647ec8e5"},"ffmpeg_stack":{"$ref":"#/components/schemas/Schema_2af3b38087bd992e9cae66535831de488ac05a86fd19619f5cfd998074675a28"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"method":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["extract","insert"],"type":"string"}],"default":"extract","description":"\nWhat should be done with the audio file. A value of `\"extract\"` means audio artwork will be extracted. A value of `\"insert\"` means the provided image will be inserted as audio artwork.\n"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"preset":{"$ref":"#/components/schemas/Schema_edecfbd5df4587f3777dedbf28e7de13ac7093ec263b82ed52f21f398e96aef1"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/audio/artwork","description":"\nThis <dfn>Robot</dfn> extracts or inserts cover artwork in audio files.\n\nFor extraction, it uses the image format embedded within the audio file — most often, this is JPEG. If you need the image in a different format, pipe the result into [🤖/image/resize](/docs/robots/image-resize/).\n\nFor insertion, provide both an audio file (as `\"audio\"`) and an image file (as `\"image\"`) via the `use` parameter, and set `method` to `\"insert\"`. The image will be embedded as the cover artwork of the audio file.\n","type":"string"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"audio_fade_seconds":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"type":"number"}],"default":1,"description":"\nWhen used this adds an audio fade in and out effect between each section of your concatenated audio file. The float value is used, so if you want an audio delay effect of 500 milliseconds between each video section, you would select 0.5. Integer values can also be represented.\n\nThis parameter does not add an audio fade effect at the beginning or end of your result audio file. If you want to do so, create an additional [🤖/audio/encode](/docs/robots/audio-encode/) <dfn>Step</dfn> and use our `ffmpeg` parameter as shown in this [demo](/demos/audio-encoding/ffmpeg-fade-in-and-out/).\n"},"bitrate":{"$ref":"#/components/schemas/Schema_4903f86e11ac255c4db0545de4124e4c3092c8a124f00d2fef6bca66bf2f638f"},"crossfade":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nWhen set to `true`, this parameter enables crossfading between concatenated audio files using FFmpeg's `acrossfade` filter. This creates a smooth transition where the end of one audio file overlaps and blends with the beginning of the next file.\n\nThe duration of the crossfade is controlled by the `audio_fade_seconds` parameter (defaults to 1 second if `audio_fade_seconds` is 0).\n\nNote: This parameter requires at least 2 audio files to concatenate and only works with audio files, not video files.\n"},"ffmpeg":{"$ref":"#/components/schemas/Schema_15464c9d28640e7bf8903ba6d26df07ca6adbb8f0503e291180fa8a4647ec8e5"},"ffmpeg_stack":{"$ref":"#/components/schemas/Schema_2af3b38087bd992e9cae66535831de488ac05a86fd19619f5cfd998074675a28"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"preset":{"$ref":"#/components/schemas/Schema_edecfbd5df4587f3777dedbf28e7de13ac7093ec263b82ed52f21f398e96aef1"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_ca159bf04e5ff3004e76aa992115890f7a332c46f90913826648557e7fc86b82"},"robot":{"const":"/audio/concat","description":"\nThis Robot can concatenate an almost infinite number of audio files.\n","type":"string"},"sample_rate":{"$ref":"#/components/schemas/Schema_feebba1777caed78980328c392ae9ada2c93035aa1a0d8ea0239045b00c5015b"},"sort_by":{"$ref":"#/components/schemas/Schema_a529048b2ed32b0125d678e158645220b42861e2c3e5bf89f766bec34234c3e6"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"bitrate":{"$ref":"#/components/schemas/Schema_4903f86e11ac255c4db0545de4124e4c3092c8a124f00d2fef6bca66bf2f638f"},"ffmpeg":{"$ref":"#/components/schemas/Schema_15464c9d28640e7bf8903ba6d26df07ca6adbb8f0503e291180fa8a4647ec8e5"},"ffmpeg_stack":{"$ref":"#/components/schemas/Schema_2af3b38087bd992e9cae66535831de488ac05a86fd19619f5cfd998074675a28"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"preset":{"$ref":"#/components/schemas/Schema_edecfbd5df4587f3777dedbf28e7de13ac7093ec263b82ed52f21f398e96aef1"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_ca159bf04e5ff3004e76aa992115890f7a332c46f90913826648557e7fc86b82"},"robot":{"const":"/audio/split","description":"\nSplits an audio file into multiple segments based on an array of from/to durations. Each segment produces a separate output file. This is useful for cutting an audio file into parts, for example to insert ads later via [🤖/audio/concat](/docs/robots/audio-concat/).\n","type":"string"},"sample_rate":{"$ref":"#/components/schemas/Schema_feebba1777caed78980328c392ae9ada2c93035aa1a0d8ea0239045b00c5015b"},"segments":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"description":"\nAn array of objects, each specifying a segment to extract from the input audio. Each object must have a `from` and `to` key indicating the start and end time of the segment.\n\nTimes can be specified as numbers (seconds) or as timecode strings (e.g. `\"00:01:30.000\"`).\n","items":{"$ref":"#/components/schemas/Schema_9681caa0aa6542ed2a643b183b7c36d228a47074be0dabdc585931c16610f02c"},"minItems":1,"type":"array"}]},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot","segments"],"type":"object"},{"additionalProperties":false,"properties":{"bitrate":{"$ref":"#/components/schemas/Schema_4903f86e11ac255c4db0545de4124e4c3092c8a124f00d2fef6bca66bf2f638f"},"ffmpeg":{"$ref":"#/components/schemas/Schema_15464c9d28640e7bf8903ba6d26df07ca6adbb8f0503e291180fa8a4647ec8e5"},"ffmpeg_stack":{"$ref":"#/components/schemas/Schema_2af3b38087bd992e9cae66535831de488ac05a86fd19619f5cfd998074675a28"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"preset":{"$ref":"#/components/schemas/Schema_edecfbd5df4587f3777dedbf28e7de13ac7093ec263b82ed52f21f398e96aef1"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_ca159bf04e5ff3004e76aa992115890f7a332c46f90913826648557e7fc86b82"},"robot":{"const":"/audio/encode","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"sample_rate":{"$ref":"#/components/schemas/Schema_feebba1777caed78980328c392ae9ada2c93035aa1a0d8ea0239045b00c5015b"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"bitrate":{"$ref":"#/components/schemas/Schema_4903f86e11ac255c4db0545de4124e4c3092c8a124f00d2fef6bca66bf2f638f"},"duration":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"type":"number"}],"default":60,"description":"\nTarget duration for the whole process in seconds. The <dfn>Robot</dfn> will loop the input audio file for as long as this target duration is not reached yet.\n"},"ffmpeg":{"$ref":"#/components/schemas/Schema_15464c9d28640e7bf8903ba6d26df07ca6adbb8f0503e291180fa8a4647ec8e5"},"ffmpeg_stack":{"$ref":"#/components/schemas/Schema_2af3b38087bd992e9cae66535831de488ac05a86fd19619f5cfd998074675a28"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"preset":{"$ref":"#/components/schemas/Schema_edecfbd5df4587f3777dedbf28e7de13ac7093ec263b82ed52f21f398e96aef1"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/audio/loop","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"sample_rate":{"$ref":"#/components/schemas/Schema_feebba1777caed78980328c392ae9ada2c93035aa1a0d8ea0239045b00c5015b"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"bitrate":{"$ref":"#/components/schemas/Schema_4903f86e11ac255c4db0545de4124e4c3092c8a124f00d2fef6bca66bf2f638f"},"duration":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["first","longest","shortest"],"type":"string"}],"default":"longest","description":"\nDuration of the output file compared to the duration of all merged audio files. Can be `\"first\"` (duration of the first input file), `\"shortest\"` (duration of the shortest audio file) or `\"longest\"` for the duration of the longest input file.\n"},"ffmpeg":{"$ref":"#/components/schemas/Schema_15464c9d28640e7bf8903ba6d26df07ca6adbb8f0503e291180fa8a4647ec8e5"},"ffmpeg_stack":{"$ref":"#/components/schemas/Schema_2af3b38087bd992e9cae66535831de488ac05a86fd19619f5cfd998074675a28"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"loop":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nSpecifies if any input files that do not match the target duration should be looped to match it. Useful for audio merging where your overlay file is typically much shorter than the main audio file.\n"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"preset":{"$ref":"#/components/schemas/Schema_edecfbd5df4587f3777dedbf28e7de13ac7093ec263b82ed52f21f398e96aef1"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/audio/merge","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"sample_rate":{"$ref":"#/components/schemas/Schema_feebba1777caed78980328c392ae9ada2c93035aa1a0d8ea0239045b00c5015b"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"},"volume":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["average","sum"],"type":"string"}],"default":"average","description":"\nValid values are `\"average\"` and `\"sum\"` here. `\"average\"` means each input is scaled 1/n (n is the number of inputs) or `\"sum\"` which means each individual audio stays on the same volume, but since we merge tracks 'on top' of each other, this could result in very loud output.\n"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"amplitude_scale":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"exclusiveMinimum":0,"type":"number"}],"description":"\nAvailable when style is `\"v1\"`. Amplitude scale factor.\n"},"antialiasing":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":0,"type":"number"}]},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":1,"type":"number"}]},{"$ref":"#/components/schemas/Schema_a8213ce4c995e2d44b094b3ea909eddf983764d183e2903635e64aa32732520a"}],"default":0,"description":"\nEither a value of `0` or `1`, or `true`/`false`, corresponding to if you want to enable antialiasing to achieve smoother edges in the waveform graph or not.\n"},"axis_label_color":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^#?[0-9a-fA-F]{6}([0-9a-fA-F]{2})?$","type":"string"}],"description":"\nAvailable when style is `\"v1\"`. Color for axis labels in \"rrggbbaa\" format.\n"},"background_color":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^#?[0-9a-fA-F]{6}([0-9a-fA-F]{2})?$","type":"string"}],"default":"#00000000","description":"\nThe background color of the resulting image in the \"rrggbbaa\" format (red, green, blue, alpha), if the format `\"image\"` was selected.\n"},"bar_gap":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":0,"type":"integer"}],"description":"\nAvailable when style is `\"v1\"`. Gap between bars in pixels when waveform_style is \"bars\".\n"},"bar_style":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["rounded","square"],"type":"string"}],"description":"\nAvailable when style is `\"v1\"`. Bar style when waveform_style is \"bars\".\n"},"bar_width":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"exclusiveMinimum":0,"type":"integer"}],"description":"\nAvailable when style is `\"v1\"`. Width of bars in pixels when waveform_style is \"bars\".\n"},"bits":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":8,"type":"number"}]},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":16,"type":"number"}]}],"description":"\nAvailable when style is `\"v1\"`. Bit depth for waveform data. Can be 8 or 16.\n"},"border_color":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^#?[0-9a-fA-F]{6}([0-9a-fA-F]{2})?$","type":"string"}],"description":"\nAvailable when style is `\"v1\"`. Border color in \"rrggbbaa\" format.\n"},"center_color":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^#?[0-9a-fA-F]{6}([0-9a-fA-F]{2})?$","type":"string"}],"default":"000000ff","description":"\nThe color used in the center of the gradient. The format is \"rrggbbaa\" (red, green, blue, alpha).\n"},"color_map":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["cividis","cool","fiery","fire","fruit","gray","green","magma","moreland","nebulae","plasma","rainbow","terrain","viridis"],"type":"string"}],"description":"\nAvailable when style is `\"spectrogram\"`. Color scheme for the spectrogram visualization. Defaults to `\"viridis\"`.\n"},"colors":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["audacity","audition"],"type":"string"}],"description":"\nAvailable when style is `\"v1\"`. Color scheme to use. Can be \"audition\" or \"audacity\".\n"},"compression":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"maximum":9,"minimum":-1,"type":"integer"}],"description":"\nAvailable when style is `\"v1\"`. PNG compression level: 0 (none) to 9 (best), or -1 (default). Only applicable when format is \"image\".\n"},"end":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":0,"type":"number"}],"description":"\nAvailable when style is `\"v1\"`. End time in seconds (0 means end of audio).\n"},"ffmpeg":{"$ref":"#/components/schemas/Schema_15464c9d28640e7bf8903ba6d26df07ca6adbb8f0503e291180fa8a4647ec8e5"},"ffmpeg_stack":{"$ref":"#/components/schemas/Schema_2af3b38087bd992e9cae66535831de488ac05a86fd19619f5cfd998074675a28"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"format":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["image","json"],"type":"string"}],"default":"image","description":"\nThe format of the result file. Can be `\"image\"` or `\"json\"`. If `\"image\"` is supplied, a PNG image will be created, otherwise a JSON file.\nWhen `style` is `\"spectrogram\"`, only `\"image\"` is supported.\n"},"frequency_max":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":1,"type":"number"}],"description":"\nAvailable when style is `\"spectrogram\"`. Maximum frequency in Hz to display. Defaults to half the sample rate (Nyquist frequency).\n"},"frequency_min":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":0,"type":"number"}],"description":"\nAvailable when style is `\"spectrogram\"`. Minimum frequency in Hz to display. Defaults to `0`.\n"},"frequency_scale":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["linear","logarithmic"],"type":"string"}],"description":"\nAvailable when style is `\"spectrogram\"`. Frequency scale for the spectrogram. `\"linear\"` shows frequencies evenly spaced, `\"logarithmic\"` emphasizes lower frequencies. Defaults to `\"logarithmic\"`.\n"},"gain":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"maximum":128,"minimum":0,"type":"number"}],"description":"\nAvailable when style is `\"spectrogram\"`. Linear gain factor for spectrogram intensity. Defaults to `1`.\n"},"height":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":1,"type":"integer"}],"default":64,"description":"\nThe height of the resulting image if the format `\"image\"` was selected.\n"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"legend":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"description":"\nAvailable when style is `\"spectrogram\"`. Whether to include a legend showing the frequency and time scales. Defaults to `false`.\n"},"no_axis_labels":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"description":"\nAvailable when style is `\"v1\"`. If set to `true`, renders waveform image without axis labels.\n"},"orientation":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["horizontal","vertical"],"type":"string"}],"description":"\nAvailable when style is `\"spectrogram\"`. Orientation of the spectrogram. `\"horizontal\"` shows time on the x-axis (default), `\"vertical\"` shows time on the y-axis.\n"},"outer_color":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^#?[0-9a-fA-F]{6}([0-9a-fA-F]{2})?$","type":"string"}],"default":"000000ff","description":"\nThe color used in the outer parts of the gradient. The format is \"rrggbbaa\" (red, green, blue, alpha).\n"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"pixels_per_second":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"exclusiveMinimum":0,"type":"number"}],"description":"\nAvailable when style is `\"v1\"`. Zoom level in pixels per second. This parameter cannot be used together with `zoom`.\n"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/audio/waveform","description":"\nWe recommend that you use an [🤖/audio/encode](/docs/robots/audio-encode/) <dfn>Step</dfn> prior to your waveform <dfn>Step</dfn> to convert audio files to MP3. This way it is guaranteed that [🤖/audio/waveform](/docs/robots/audio-waveform/) accepts your audio file and you can also down-sample large audio files and save some money.\n\nSimilarly, if you need the output image in a different format, please pipe the result of this <dfn>Robot</dfn> into [🤖/image/resize](/docs/robots/image-resize/).\n","type":"string"},"split_channels":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"description":"\nAvailable when style is `\"v1\"`. If set to `true`, outputs multi-channel waveform data or image files, one per channel.\n"},"start":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":0,"type":"number"}],"description":"\nAvailable when style is `\"v1\"`. Start time in seconds.\n"},"style":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"enum":["spectrogram","v0","v1"],"type":"string"},{"const":0,"type":"number"},{"const":1,"type":"number"},{"const":"0","type":"string"},{"const":"1","type":"string"}],"default":"v0","description":"\nWaveform style version.\n\n- `\"v0\"`: Legacy waveform generation (default).\n- `\"v1\"`: Advanced waveform generation with additional parameters.\n- `\"spectrogram\"`: Spectrogram visualization showing frequency content over time.\n\nFor backwards compatibility, numeric values `0` and `1` are also accepted and mapped to `\"v0\"` and `\"v1\"`.\n"}],"description":"\nWaveform style version.\n\n- `\"v0\"`: Legacy waveform generation (default).\n- `\"v1\"`: Advanced waveform generation with additional parameters.\n- `\"spectrogram\"`: Spectrogram visualization showing frequency content over time.\n\nFor backwards compatibility, numeric values `0` and `1` are also accepted and mapped to `\"v0\"` and `\"v1\"`.\n"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"},"waveform_style":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["bars","normal"],"type":"string"}],"description":"\nAvailable when style is `\"v1\"`. Waveform style. Can be \"normal\" or \"bars\".\n"},"width":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":1,"type":"integer"}],"default":256,"description":"\nThe width of the resulting image if the format `\"image\"` was selected.\n"},"with_axis_labels":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"description":"\nAvailable when style is `\"v1\"`. If set to `true`, renders waveform image with axis labels.\n"},"zoom":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":1,"type":"integer"}],"description":"\nAvailable when style is `\"v1\"`. Zoom level in samples per pixel. This parameter cannot be used together with `pixels_per_second`.\n"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"account":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"container":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"credentials":{"$ref":"#/components/schemas/Schema_ad51c2302b6f6e6b4a5a4f89e2eb8ec6b1439d2931ec56ee670bcf0231502e1a"},"files_per_page":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"type":"integer"}],"default":1000,"description":"\nThe pagination page size.\n"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"force_name":{"$ref":"#/components/schemas/Schema_e2d753e6b6111506a4565bdb18eccafd67d2027839616974639f5565d695fafd"},"ignore_errors":{"$ref":"#/components/schemas/Schema_03e4961eba9e9b422ce714f9224b8d47a380c80d27b8342a78ba4e2702feb4db"},"import_on_errors":{"$ref":"#/components/schemas/Schema_61808f40a326596fd9674ebbd91184b0a2e04f8c67eb49fdf9f9449580271ab8"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"key":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"next_page_token":{"$ref":"#/components/schemas/Schema_64187d2c5d197bbf686767819d827fe59b36816001ff849e7ed9a50ef83083d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"path":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},{"$ref":"#/components/schemas/Schema_bc9fbfc32e2939087e1b877c2b51ce63f08c8cdfdcf7adca01505a0498ab5691"}],"description":"\nThe path in your container to the specific file or directory. If the path points to a file, only this file will be imported. For example: `images/avatar.jpg`.\n\nIf it points to a directory, indicated by a trailing slash (`/`), then all files that are descendants of this directory are recursively imported. For example: `images/`.\n\nIf you want to import all files from the root directory, please use `/` as the value here.\n\nYou can also use an array of path strings here to import multiple paths in the same <dfn>Robot</dfn>'s <dfn>Step</dfn>.\n"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"recursive":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\n  Setting this to `true` will enable importing files from subdirectories and sub-subdirectories (etc.) of the given path.\n  "},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/azure/import","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["path","robot"],"type":"object"},{"additionalProperties":false,"properties":{"account":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"cache_control":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nThe cache control header with which to store the file.\n"},"container":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"content_disposition":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nThe content disposition with which to store the file. By default this will be guessed by Azure.\n"},"content_encoding":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nThe content encoding with which to store the file. By default this will be guessed by Azure.\n"},"content_language":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nThe content language with which to store the file. By default this will be guessed by Azure.\n"},"content_type":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nThe content type with which to store the file. By default this will be guessed by Azure.\n"},"credentials":{"$ref":"#/components/schemas/Schema_ad51c2302b6f6e6b4a5a4f89e2eb8ec6b1439d2931ec56ee670bcf0231502e1a"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"key":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"metadata":{"additionalProperties":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"}]}]},"default":{},"description":"\nA JavaScript object containing a list of metadata to be set for this file on Azure, such as `{ FileURL: \"${file.url_name}\" }`. This can also include any available [Assembly variables](/docs/topics/assembly-instructions/#assembly-variables).\n","type":"object"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"path":{"$ref":"#/components/schemas/Schema_35cf890db619e90c290459ad1bb9111a20064bbab0881cc1ebedd82c75b6e871"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/azure/store","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"sas_expires_in":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":0,"type":"integer"}],"description":"\nSet this to a number to enable shared access signatures for your stored object. This reflects the number of seconds that the signature will be valid for once the object is stored. Enabling this will attach the shared access signature (SAS) to the result URL of your object.\n"},"sas_permissions":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"maxLength":3,"pattern":"^[rdw]+$","type":"string"}],"description":"\nSet this to a combination of `r` (read), `w` (write) and `d` (delete) for your shared access signatures (SAS) permissions.\n"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"app_key":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"app_key_id":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"bucket":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"credentials":{"$ref":"#/components/schemas/Schema_2aaf249ed4fed809982b89e0ca25f4dd95ec6582007e71d01e6dd3d4d0a85d65"},"files_per_page":{"$ref":"#/components/schemas/Schema_fb8110ac8e46afd357588fdb3f6e0487d14ea219ff23b237b83413793ce39f30"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"force_name":{"$ref":"#/components/schemas/Schema_e2d753e6b6111506a4565bdb18eccafd67d2027839616974639f5565d695fafd"},"ignore_errors":{"$ref":"#/components/schemas/Schema_03e4961eba9e9b422ce714f9224b8d47a380c80d27b8342a78ba4e2702feb4db"},"import_on_errors":{"$ref":"#/components/schemas/Schema_61808f40a326596fd9674ebbd91184b0a2e04f8c67eb49fdf9f9449580271ab8"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"path":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},{"$ref":"#/components/schemas/Schema_bc9fbfc32e2939087e1b877c2b51ce63f08c8cdfdcf7adca01505a0498ab5691"}],"description":"\nThe path in your bucket to the specific file or directory. If the path points to a file, only this file will be imported. For example: `images/avatar.jpg`.\n\nIf it points to a directory, indicated by a trailing slash (`/`), then all files that are direct descendants of this directory will be imported. For example: `images/`.\n\nDirectories are **not** imported recursively. If you want to import files from subdirectories and sub-subdirectories, enable the `recursive` parameter.\n\nIf you want to import all files from the root directory, please use `/` as the value here. In this case, make sure all your objects belong to a path. If you have objects in the root of your bucket that aren't prefixed with `/`, you'll receive a 404 `BACKBLAZE_IMPORT_NOT_FOUND` error.\n\nYou can also use an array of path strings here to import multiple paths in the same <dfn>Robot</dfn>'s <dfn>Step</dfn>.\n"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"recursive":{"$ref":"#/components/schemas/Schema_0d5e623ef607f7e5a5d864341fe8b479821f0bbb4438d97a29e9da5ff1902f4e"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/backblaze/import","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"start_file_name":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"default":"","description":"\nThe name of the last file from the previous paging call. This tells the <dfn>Robot</dfn> to ignore all files up to and including this file.\n"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["path","robot"],"type":"object"},{"additionalProperties":false,"properties":{"app_key":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"app_key_id":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"bucket":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"credentials":{"$ref":"#/components/schemas/Schema_2aaf249ed4fed809982b89e0ca25f4dd95ec6582007e71d01e6dd3d4d0a85d65"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"headers":{"additionalProperties":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"default":{},"description":"\nAn object containing a list of headers to be set for this file in your Backblaze B2 Cloud Storage bucket, such as `{ FileURL: \"${file.url_name}\" }`. This can also include any available [Assembly Variables](/docs/topics/assembly-instructions/#assembly-variables).\n\n[Here](https://www.backblaze.com/b2/docs/b2_upload_file.html) you can find a list of available headers.\n\nObject Metadata can be specified using `X-Bz-Info-*` headers.\n","type":"object"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"path":{"$ref":"#/components/schemas/Schema_35cf890db619e90c290459ad1bb9111a20064bbab0881cc1ebedd82c75b6e871"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/backblaze/store","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"credentials":{"$ref":"#/components/schemas/Schema_748966bc8c9baec90b3eca9a7bc3fd115551e1a2be9465a2083daa6e75845253"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"force_name":{"$ref":"#/components/schemas/Schema_e2d753e6b6111506a4565bdb18eccafd67d2027839616974639f5565d695fafd"},"ignore_errors":{"$ref":"#/components/schemas/Schema_03e4961eba9e9b422ce714f9224b8d47a380c80d27b8342a78ba4e2702feb4db"},"import_on_errors":{"$ref":"#/components/schemas/Schema_61808f40a326596fd9674ebbd91184b0a2e04f8c67eb49fdf9f9449580271ab8"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"path":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},{"$ref":"#/components/schemas/Schema_bc9fbfc32e2939087e1b877c2b51ce63f08c8cdfdcf7adca01505a0498ab5691"}],"description":"\nThe path in your Box to the specific file or directory. If the path points to a file, only this file will be imported. For example: `images/avatar.jpg`.\n\nIf it points to a directory, indicated by a trailing slash (`/`), then all files that are descendants of this directory are recursively imported. For example: `images/`.\n\nIf you want to import all files from the root directory, please use `/` as the value here.\n\nYou can also use an array of path strings here to import multiple paths in the same <dfn>Robot</dfn>'s <dfn>Step</dfn>.\n"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/box/import","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["path","robot"],"type":"object"},{"additionalProperties":false,"properties":{"create_sharing_link":{"$ref":"#/components/schemas/Schema_8e7ed1be08df9219cc84f79912d659318e9bb5a1f8b241e3600c03a63956b576"},"credentials":{"$ref":"#/components/schemas/Schema_748966bc8c9baec90b3eca9a7bc3fd115551e1a2be9465a2083daa6e75845253"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"path":{"$ref":"#/components/schemas/Schema_35cf890db619e90c290459ad1bb9111a20064bbab0881cc1ebedd82c75b6e871"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/box/store","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"bucket":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"bucket_region":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nThe region where the bucket is located.\n"},"credentials":{"$ref":"#/components/schemas/Schema_f5aeeb6dae70ba70bb8a4c4daf5fad0a106a00f329e9960ff77cd84ecf415fee"},"files_per_page":{"$ref":"#/components/schemas/Schema_fb8110ac8e46afd357588fdb3f6e0487d14ea219ff23b237b83413793ce39f30"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"force_name":{"$ref":"#/components/schemas/Schema_e2d753e6b6111506a4565bdb18eccafd67d2027839616974639f5565d695fafd"},"host":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"ignore_errors":{"$ref":"#/components/schemas/Schema_03e4961eba9e9b422ce714f9224b8d47a380c80d27b8342a78ba4e2702feb4db"},"import_on_errors":{"$ref":"#/components/schemas/Schema_61808f40a326596fd9674ebbd91184b0a2e04f8c67eb49fdf9f9449580271ab8"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"key":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"page_number":{"$ref":"#/components/schemas/Schema_700ca6e236bc3ce29f7390532b108f5a864258e18588a743c9d63fff1d8ecf5d"},"path":{"$ref":"#/components/schemas/Schema_29b03e33e094714044bf936cf358f56ce8a49e8051c5e450b83befe9961c4ace"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"recursive":{"$ref":"#/components/schemas/Schema_8305335b6eafa6a9a8c0e5d531016c79ff3ffd63f98546b464a7fd0b9473ba0f"},"result":{"$ref":"#/components/schemas/Schema_ca159bf04e5ff3004e76aa992115890f7a332c46f90913826648557e7fc86b82"},"return_file_stubs":{"$ref":"#/components/schemas/Schema_7d0953e667a4e84601b14c25ec998d74076b0afded4b1fe7182cba7b5a1062f7"},"robot":{"const":"/mega/import","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"secret":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["path","robot"],"type":"object"},{"additionalProperties":false,"properties":{"acl":{"$ref":"#/components/schemas/Schema_6f76a4b1c0011fc02a130479c0a33b50ca4ff841292c0a355755296647ce796a"},"bucket":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"bucket_region":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nThe region where the bucket is located.\n"},"credentials":{"$ref":"#/components/schemas/Schema_f5aeeb6dae70ba70bb8a4c4daf5fad0a106a00f329e9960ff77cd84ecf415fee"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"headers":{"additionalProperties":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"default":{"Content-Type":"${file.mime}"},"description":"\nAn object containing a list of headers to be set for this file in your MEGA S4 Object Storage bucket, such as `{ FileURL: \"${file.url_name}\" }`. This can also include any available [Assembly Variables](/docs/topics/assembly-instructions/#assembly-variables).\n\nObject Metadata can be specified using `x-amz-meta-*` headers. Note that these headers [do not support non-ASCII metadata values](https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#UserMetadata).\n","type":"object"},"host":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"key":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"path":{"$ref":"#/components/schemas/Schema_9e32d2e043ddaf27be258da25a42fb43c4a65680e4582d53c4c0e1d0b76908cf"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/mega/store","description":"\nThe URL to the result file will be returned in the <dfn>Assembly Status JSON</dfn>.\n","type":"string"},"secret":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"sign_urls_for":{"$ref":"#/components/schemas/Schema_6561742ad8531818ad835d63fdd348612b329189814a3953875b261e98fcb035"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"account_type":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["uk","us"],"type":"string"}]},"container":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"credentials":{"$ref":"#/components/schemas/Schema_5052eed04caf4a479c4755d89f58bf14b6f653aba94524691a6e08a0d151721e"},"data_center":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"files_per_page":{"$ref":"#/components/schemas/Schema_fb8110ac8e46afd357588fdb3f6e0487d14ea219ff23b237b83413793ce39f30"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"force_name":{"$ref":"#/components/schemas/Schema_e2d753e6b6111506a4565bdb18eccafd67d2027839616974639f5565d695fafd"},"ignore_errors":{"$ref":"#/components/schemas/Schema_03e4961eba9e9b422ce714f9224b8d47a380c80d27b8342a78ba4e2702feb4db"},"import_on_errors":{"$ref":"#/components/schemas/Schema_61808f40a326596fd9674ebbd91184b0a2e04f8c67eb49fdf9f9449580271ab8"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"key":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"page_number":{"$ref":"#/components/schemas/Schema_700ca6e236bc3ce29f7390532b108f5a864258e18588a743c9d63fff1d8ecf5d"},"path":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},{"$ref":"#/components/schemas/Schema_bc9fbfc32e2939087e1b877c2b51ce63f08c8cdfdcf7adca01505a0498ab5691"}],"description":"\nThe path in your container to the specific file or directory. If the path points to a file, only this file will be imported. For example: `images/avatar.jpg`.\n\nIf it points to a directory, indicated by a trailing slash (`/`), then all files that are direct descendants of this directory will be imported. For example: `images/`.\n\nDirectories are **not** imported recursively. If you want to import files from subdirectories and sub-subdirectories, enable the `recursive` parameter.\n\nYou can also use an array of path strings here to import multiple paths in the same <dfn>Robot</dfn>'s <dfn>Step</dfn>.\n"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"recursive":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nSetting this to `true` will enable importing files from subdirectories and sub-subdirectories (etc.) of the given path.\n\nPlease use the pagination parameters `page_number` and `files_per_page`wisely here.\n"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/cloudfiles/import","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"user":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["path","robot"],"type":"object"},{"additionalProperties":false,"properties":{"account_type":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["uk","us"],"type":"string"}]},"container":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"credentials":{"$ref":"#/components/schemas/Schema_5052eed04caf4a479c4755d89f58bf14b6f653aba94524691a6e08a0d151721e"},"data_center":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"key":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"path":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"default":"${unique_prefix}/${file.url_name}","description":"\nThe path at which to store the file. This value can also contain [Assembly variables](/docs/topics/assembly-instructions/#assembly-variables).\n"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/cloudfiles/store","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"bucket":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"credentials":{"$ref":"#/components/schemas/Schema_d300119ee8d16e72882af16ef449639393821a80bc12430be44571d9b242781d"},"files_per_page":{"$ref":"#/components/schemas/Schema_fb8110ac8e46afd357588fdb3f6e0487d14ea219ff23b237b83413793ce39f30"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"force_name":{"$ref":"#/components/schemas/Schema_e2d753e6b6111506a4565bdb18eccafd67d2027839616974639f5565d695fafd"},"host":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"ignore_errors":{"$ref":"#/components/schemas/Schema_03e4961eba9e9b422ce714f9224b8d47a380c80d27b8342a78ba4e2702feb4db"},"import_on_errors":{"$ref":"#/components/schemas/Schema_61808f40a326596fd9674ebbd91184b0a2e04f8c67eb49fdf9f9449580271ab8"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"key":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"page_number":{"$ref":"#/components/schemas/Schema_700ca6e236bc3ce29f7390532b108f5a864258e18588a743c9d63fff1d8ecf5d"},"path":{"$ref":"#/components/schemas/Schema_29b03e33e094714044bf936cf358f56ce8a49e8051c5e450b83befe9961c4ace"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"recursive":{"$ref":"#/components/schemas/Schema_8305335b6eafa6a9a8c0e5d531016c79ff3ffd63f98546b464a7fd0b9473ba0f"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"return_file_stubs":{"$ref":"#/components/schemas/Schema_7d0953e667a4e84601b14c25ec998d74076b0afded4b1fe7182cba7b5a1062f7"},"robot":{"const":"/cloudflare/import","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"secret":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["path","robot"],"type":"object"},{"additionalProperties":false,"properties":{"bucket":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"credentials":{"$ref":"#/components/schemas/Schema_d300119ee8d16e72882af16ef449639393821a80bc12430be44571d9b242781d"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"headers":{"additionalProperties":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"default":{"Content-Type":"${file.mime}"},"description":"\nAn object containing a list of headers to be set for this file in your Cloudflare R2 bucket, such as `{ FileURL: \"${file.url_name}\" }`. This can also include any available [Assembly Variables](/docs/topics/assembly-instructions/#assembly-variables).\n\nObject Metadata can be specified using `x-amz-meta-*` headers. Note that these headers [do not support non-ASCII metadata values](https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#UserMetadata).\n","type":"object"},"host":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"key":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"path":{"$ref":"#/components/schemas/Schema_9e32d2e043ddaf27be258da25a42fb43c4a65680e4582d53c4c0e1d0b76908cf"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/cloudflare/store","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"secret":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"sign_urls_for":{"$ref":"#/components/schemas/Schema_6561742ad8531818ad835d63fdd348612b329189814a3953875b261e98fcb035"},"url_prefix":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nThe URL prefix used for accessing files from your Cloudflare R2 bucket. This is typically the custom public URL access host set up in your Cloudflare account.\n"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"credentials":{"$ref":"#/components/schemas/Schema_9a0a76f0af9f4fb579969fc5942e87b2ef0569e89b34cfa832137b2dd9a6b07e"},"files_per_page":{"$ref":"#/components/schemas/Schema_fb8110ac8e46afd357588fdb3f6e0487d14ea219ff23b237b83413793ce39f30"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"force_name":{"$ref":"#/components/schemas/Schema_e2d753e6b6111506a4565bdb18eccafd67d2027839616974639f5565d695fafd"},"ignore_errors":{"$ref":"#/components/schemas/Schema_03e4961eba9e9b422ce714f9224b8d47a380c80d27b8342a78ba4e2702feb4db"},"import_on_errors":{"$ref":"#/components/schemas/Schema_61808f40a326596fd9674ebbd91184b0a2e04f8c67eb49fdf9f9449580271ab8"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"key":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"page_number":{"$ref":"#/components/schemas/Schema_700ca6e236bc3ce29f7390532b108f5a864258e18588a743c9d63fff1d8ecf5d"},"path":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},{"$ref":"#/components/schemas/Schema_bc9fbfc32e2939087e1b877c2b51ce63f08c8cdfdcf7adca01505a0498ab5691"}],"description":"\nThe path in your bucket to the specific file or directory. If the path points to a file, only this file will be imported. For example: `images/avatar.jpg`.\n\nIf it points to a directory, indicated by a trailing slash (`/`), then all files that are direct descendants of this directory will be imported. For example: `images/`.\n\nDirectories are **not** imported recursively. If you want to import files from subdirectories and sub-subdirectories, enable the `recursive` parameter.\n\nYou can also use an array of path strings here to import multiple paths in the same <dfn>Robot</dfn>'s <dfn>Step</dfn>.\n"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"recursive":{"$ref":"#/components/schemas/Schema_2a04346246228d68b23baff4fd26615a3dabf4b0b635cea5e60d9c76cd4a0543"},"region":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"return_file_stubs":{"$ref":"#/components/schemas/Schema_7d0953e667a4e84601b14c25ec998d74076b0afded4b1fe7182cba7b5a1062f7"},"robot":{"const":"/digitalocean/import","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"secret":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"space":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["path","robot"],"type":"object"},{"additionalProperties":false,"properties":{"acl":{"$ref":"#/components/schemas/Schema_6f76a4b1c0011fc02a130479c0a33b50ca4ff841292c0a355755296647ce796a"},"credentials":{"$ref":"#/components/schemas/Schema_9a0a76f0af9f4fb579969fc5942e87b2ef0569e89b34cfa832137b2dd9a6b07e"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"headers":{"additionalProperties":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"default":{"Content-Type":"${file.mime}"},"description":"\nAn object containing a list of headers to be set for this file on DigitalOcean Spaces, such as `{ FileURL: \"${file.url_name}\" }`. This can also include any available [Assembly Variables](/docs/topics/assembly-instructions/#assembly-variables).\n\n[Here](https://developers.digitalocean.com/documentation/spaces/#object) you can find a list of available headers.\n\nObject Metadata can be specified using `x-amz-meta-*` headers. Note that these headers [do not support non-ASCII metadata values](https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#UserMetadata).\n","type":"object"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"key":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"path":{"$ref":"#/components/schemas/Schema_9e32d2e043ddaf27be258da25a42fb43c4a65680e4582d53c4c0e1d0b76908cf"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"region":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/digitalocean/store","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"secret":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"sign_urls_for":{"$ref":"#/components/schemas/Schema_6561742ad8531818ad835d63fdd348612b329189814a3953875b261e98fcb035"},"space":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"url_prefix":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"default":"https://{space}.{region}.digitaloceanspaces.com/","description":"\nThe URL prefix used for the returned URL, such as `\"https://my.cdn.com/some/path\"`.\n"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/document/autorotate","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"format":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"description":"\nThe desired format for document conversion.\n","enum":["ai","csv","doc","docx","eps","gif","html","jpeg","jpg","latex","md","oda","odd","odt","ott","pdf","png","pot","pps","ppt","pptx","ppz","ps","rtf","rtx","srt","svg","text","txt","vtt","xhtml","xla","xls","xlsx","xml"],"type":"string"}],"description":"\nThe desired format for document conversion.\n"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"markdown_format":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["commonmark","gfm"],"type":"string"}],"default":"gfm","description":"\nMarkdown can be represented in several [variants](https://www.iana.org/assignments/markdown-variants/markdown-variants.xhtml), so when using this Robot to transform Markdown into HTML please specify which revision is being used.\n"},"markdown_theme":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["bare","github"],"type":"string"}],"default":"github","description":"\nThis parameter overhauls your Markdown files styling based on several canned presets.\n"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"pdf_display_header_footer":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nDisplay PDF header and footer.\n\nCurrently this parameter is only supported when converting from `html`.\n"},"pdf_footer_template":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nHTML template for the PDF print footer.\n\nShould use the same format as the `pdf_header_template`.\n\nCurrently this parameter is only supported when converting from `html`, and requires `pdf_display_header_footer` to be enabled.\n\nTo change the formatting of the HTML element, the `font-size` must be specified in a wrapper. For example, to center the page number in the footer you'd use the following HTML for the footer template:\n\n```html\n<div style=\"font-size: 15px; width: 100%; text-align: center;\"><span class=\"pageNumber\"></span></div>\n```\n"},"pdf_format":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["A0","A1","A2","A3","A4","A5","A6","Ledger","Legal","Letter","Tabloid"],"type":"string"}],"default":"Letter","description":"\nPDF paper format.\n\nCurrently this parameter is only supported when converting from `html`.\n"},"pdf_header_template":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nHTML template for the PDF print header.\n\nShould be valid HTML markup with following classes used to inject printing values into them:\n- `date` formatted print date\n- `title` document title\n- `url` document location\n- `pageNumber` current page number\n- `totalPages` total pages in the document\n\nCurrently this parameter is only supported when converting from `html`, and requires `pdf_display_header_footer` to be enabled.\n\nTo change the formatting of the HTML element, the `font-size` must be specified in a wrapper. For example, to center the page number at the top of a page you'd use the following HTML for the header template:\n\n```html\n<div style=\"font-size: 15px; width: 100%; text-align: center;\"><span class=\"pageNumber\"></span></div>\n```\n"},"pdf_margin":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"default":"6.25mm,6.25mm,14.11mm,6.25mm","description":"\nPDF Paper margins, separated by `,` and with units.\n\nWe support the following unit values: `px`, `in`, `cm`, `mm`.\n\nCurrently this parameter is only supported when converting from `html`.\n"},"pdf_print_background":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":true,"description":"\nPrint PDF background graphics.\n\nCurrently this parameter is only supported when converting from `html`.\n"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/document/convert","description":"\n> [!Note]\n> This Robot can convert files to PDF, but cannot convert PDFs to different formats. If you want to convert PDFs to say, JPEG or TIFF, use [🤖/image/resize](/docs/robots/image-resize/). If you want to turn them into text files or recognize (OCR) them to make them searchable, reach out, as we have a new Robot in the works for this.\n\nSometimes, a certain file type might not support what you are trying to accomplish. Perhaps your company is trying to automate document formatting, but it only works with docx, so all your docs need to be converted. Or maybe your stored jpg files are taking up too much space and you want a lighter format. Whatever the case, we have you covered.\n\nUsing this Robot, you can bypass the issues that certain file types may bring, by converting your file into the most suitable format. This also works in conjunction with our other Robots, allowing for even greater versatility when using our services.\n\n> [!Warning]\n> A general rule of this Robot is that converting files into an alien format category will result in an error. For example, SRT files can be converted into the VTT format (and vice versa), but not to an image.\n\nThe following file formats can be converted from:\n\n- `ai`\n- `csv`\n- `doc`\n- `docx`\n- `eps`\n- `gif`\n- `html`\n- `jpg`\n- `latex`\n- `md`\n- `oda`\n- `odd`\n- `odt`\n- `ott`\n- `png`\n- `pot`\n- `pps`\n- `ppt`\n- `pptx`\n- `ppz`\n- `ps`\n- `rtf`\n- `rtx`\n- `srt`\n- `svg`\n- `text`\n- `txt`\n- `vtt`\n- `xhtml`\n- `xla`\n- `xls`\n- `xlsx`\n- `xml`\n","type":"string"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["format","robot"],"type":"object"},{"additionalProperties":false,"properties":{"dedupe_images":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":true,"description":"\nWhen enabled, identical extracted image files are emitted only once.\n"},"extract":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["images","text"],"type":"string"}]},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"items":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["images","text"],"type":"string"}]},"minItems":1,"type":"array"}]}],"default":["text","images"],"description":"\nSelects which assets to extract. Use `[\"text\"]`, `[\"images\"]`, or `[\"text\", \"images\"]`.\n"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"image_format":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["auto","jpg","original","png"],"type":"string"}],"default":"auto","description":"\nOutput format for extracted embedded raster images.\n\n- `\"auto\"` and `\"original\"` preserve the embedded image format where possible.\n- `\"png\"` asks Poppler to decode images as PNG.\n- `\"jpg\"` converts non-JPEG extracted images through `/image/resize`.\n"},"include_image_masks":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nWhen enabled, the robot also keeps image mask files when Poppler exposes them as separate files.\n"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"min_image_bytes":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":0,"type":"integer"}],"default":0,"description":"\nMinimum file size in bytes for extracted images. Smaller images are ignored.\n"},"min_image_height":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":0,"type":"integer"}],"default":0,"description":"\nMinimum height in pixels for extracted images. Smaller images are ignored. Set to `0` to disable this filter.\n"},"min_image_width":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":0,"type":"integer"}],"default":0,"description":"\nMinimum width in pixels for extracted images. Smaller images are ignored. Set to `0` to disable this filter.\n"},"ocr_provider":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["aws","gcp"],"type":"string"}],"description":"\nOCR provider to use when `text_method` is `\"ocr\"` or `\"auto\"`. Valid values are `\"aws\"` and `\"gcp\"`.\n"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"page_range":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^[\\x09-\\x0D\\x20\\xA0                　﻿]*[0-9]+(?:[\\x09-\\x0D\\x20\\xA0                　﻿]*-[\\x09-\\x0D\\x20\\xA0                　﻿]*[0-9]+)?(?:[\\x09-\\x0D\\x20\\xA0                　﻿]*,[\\x09-\\x0D\\x20\\xA0                　﻿]*[0-9]+(?:[\\x09-\\x0D\\x20\\xA0                　﻿]*-[\\x09-\\x0D\\x20\\xA0                　﻿]*[0-9]+)?)*[\\x09-\\x0D\\x20\\xA0                　﻿]*$","type":"string"}],"description":"\nOptional comma-separated page selection, such as `\"1\"`, `\"1-3\"`, or `\"1,3-5\"`. Page numbers start at 1. Ranges are clamped to the detected page count.\n\nAt most 1,000 selected pages are allowed per job.\n\nThis is supported for native text extraction and embedded image extraction. OCR extraction currently works on the full document.\n"},"password":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nPassword used to unlock encrypted PDFs for native text extraction and embedded image extraction. OCR extraction currently does not support encrypted PDFs, so do not combine this with `text_method: \"ocr\"` or `text_method: \"auto\"`.\n"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/document/extract","description":"\nExtracts native/selectable text and embedded raster image assets from PDF documents.\n\nThis robot does not render full pages. If you need page images, use `/document/thumbs`. Vector graphics, charts, and page backgrounds are not always embedded raster images and may therefore not be returned by this robot.\n","type":"string"},"text_format":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["json","txt"],"type":"string"}],"default":"txt","description":"\nOutput format for extracted text. Use `\"txt\"` for plain text or `\"json\"` for structured output.\n"},"text_granularity":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["document","page"],"type":"string"}],"default":"document","description":"\nControls text output grouping for native extraction.\n\n- `\"document\"` creates one text result for the selected pages.\n- `\"page\"` creates one text result per selected page.\n\nPage granularity is currently only supported with `text_method: \"native\"`.\n"},"text_method":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["auto","native","ocr"],"type":"string"}],"default":"native","description":"\nControls how text is extracted.\n\n- `\"native\"` extracts selectable PDF text locally with Poppler. This is fast, but returns little or no text for scanned PDFs.\n- `\"ocr\"` delegates to `/document/ocr` and requires `ocr_provider`.\n- `\"auto\"` tries native extraction first, then falls back to OCR when no native text is found. This also requires `ocr_provider`.\n\nOCR modes currently cannot be combined with `password`.\n"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"input_passwords":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"items":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"type":"array"}],"default":[],"description":"\nAn array of passwords for the input documents, in case they are encrypted. The order of passwords must match the order of the documents as they are passed to the /document/merge step.\n\nThis can be achieved via our as-syntax using \"document_1\", \"document_2\", etc if provided. See the demos below.\n\nIf the as-syntax is not used in the \"use\" parameter, the documents are sorted alphanumerically based on their filename, and in that order input passwords should be provided.\n"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"output_password":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nIf not empty, encrypts the output file and makes it accessible only by typing in this password.\n"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/document/merge","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"sort_by":{"$ref":"#/components/schemas/Schema_a529048b2ed32b0125d678e158645220b42861e2c3e5bf89f766bec34234c3e6"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"format":{"$ref":"#/components/schemas/Schema_446b14af1ebe5ec174a22cdaf673cc8a9d274ffbf3ec624c203ffd7addeaa9ea"},"granularity":{"$ref":"#/components/schemas/Schema_c242020da3b98956a79933f680e24b9f780508f9223377ee11ef1e890ba21ca0"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"provider":{"$ref":"#/components/schemas/Schema_9078af0c8fa2eacba340b713a60073b4ab7866926df6574f217706a3d1e36cfd"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/document/ocr","description":"\nWith this <dfn>Robot</dfn>, you can detect and extract text from PDFs using optical character recognition (OCR).\n\nFor example, you can use the results to obtain the content of invoices, legal documents or restaurant menus. You can also pass the text down to other <dfn>Robots</dfn> to filter documents that contain (or do not contain) certain phrases.\n","type":"string"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"compatibility":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["1.4","1.5","1.6","1.7","2.0"],"type":"string"}],"default":"1.7","description":"\nThe PDF version compatibility level. Lower versions have broader compatibility but fewer features. Higher versions support more advanced features but may not open in older PDF readers.\n\n- `1.4` - Acrobat 5 compatibility, most widely supported\n- `1.5` - Acrobat 6 compatibility\n- `1.6` - Acrobat 7 compatibility\n- `1.7` - Acrobat 8+ compatibility (default)\n- `2.0` - PDF 2.0 standard\n"},"compress_fonts":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":true,"description":"\nWhether to compress embedded fonts. When enabled, fonts are compressed to reduce file size.\n"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"image_dpi":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"maximum":600,"minimum":36,"type":"integer"}],"description":"\nTarget DPI (dots per inch) for embedded images. When specified, this overrides the DPI setting from the preset.\n\nHigher DPI values result in better image quality but larger file sizes. Lower values produce smaller files but may result in pixelated images when printed.\n\nCommon values:\n- 72 - Screen viewing\n- 150 - eBooks and general documents\n- 300 - Print quality\n- 600 - High-quality print\n"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"linearize":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":true,"description":"\nWhether to linearize (optimize for Fast Web View) the output PDF. Linearized PDFs can begin displaying in a browser before they are fully downloaded, improving the user experience for web delivery.\n"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"preset":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["ebook","prepress","printer","screen"],"type":"string"}],"default":"ebook","description":"\nThe quality preset to use for optimization. Each preset provides a different balance between file size and quality:\n\n- `screen` - Lowest quality, smallest file size. Best for screen viewing only. Images are downsampled to 72 DPI.\n- `ebook` - Good balance of quality and size. Suitable for most purposes. Images are downsampled to 150 DPI.\n- `printer` - High quality suitable for printing. Images are kept at 300 DPI.\n- `prepress` - Highest quality for professional printing. Minimal compression applied.\n"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"remove_metadata":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nWhether to strip document metadata (title, author, keywords, etc.) from the PDF. This can provide a small reduction in file size and may be useful for privacy.\n"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/document/optimize","description":"\nThis Robot reduces PDF file sizes. It recompresses images, subsets fonts, and applies various optimizations to reduce file size while maintaining acceptable quality.\n\n## Quality Presets\n\nThe Robot supports four quality presets that control the trade-off between file size and quality:\n\n| Preset | DPI | Use Case | Typical Savings |\n|--------|-----|----------|-----------------|\n| `screen` | 72 | Screen viewing, smallest files | ~86% |\n| `ebook` | 150 | Good balance of quality/size | ~71% |\n| `printer` | 300 | Print quality | Moderate |\n| `prepress` | Highest | Press-ready, largest files | Minimal |\n","type":"string"},"subset_fonts":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":true,"description":"\nWhether to subset embedded fonts, keeping only the glyphs that are actually used in the document. This can significantly reduce file size for documents that only use a small portion of a font's character set.\n"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/file/read","description":"\nThis <dfn>Robot</dfn> accepts any file, and will read the file using UTF-8 encoding. The result is outputted to `file.meta.content` to be accessed in later <dfn>Steps</dfn>.\n\nThe <dfn>Robot</dfn> currently only accepts files under 500KB.\n","type":"string"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"pages":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},{"$ref":"#/components/schemas/Schema_bc9fbfc32e2939087e1b877c2b51ce63f08c8cdfdcf7adca01505a0498ab5691"}],"description":"The pages to select from the input PDF and to be included in the output PDF. Each entry can be a single page number (e.g. 5), or a range (e.g. `5-10`). Page numbers start at 1. By default all pages are extracted."},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/document/split","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"alpha":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["Remove","Set"],"type":"string"}],"description":"\nChange how the alpha channel of the resulting image should work. Valid values are `\"Set\"` to enable transparency and `\"Remove\"` to remove transparency.\n\nFor a list of all valid values please check the ImageMagick documentation [here](http://www.imagemagick.org/script/command-line-options.php#alpha).\n"},"antialiasing":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nControls whether or not antialiasing is used to remove jagged edges from text or images in a document.\n"},"background":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"default":"#FFFFFF","description":"\nEither the hexadecimal code or [name](https://www.imagemagick.org/script/color.php#color_names) of the color used to fill the background (only used for the pad resize strategy).\n\nBy default, the background of transparent images is changed to white. For details about how to preserve transparency across all image types, see [this demo](/demos/image-processing/properly-preserve-transparency-across-all-image-types/).\n"},"colorspace":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["CMY","CMYK","Gray","HCL","HCLp","HSB","HSI","HSL","HSV","HWB","Jzazbz","LCHab","LCHuv","LMS","Lab","Log","Luv","OHTA","OkLCH","OkLab","RGB","Rec601YCbCr","Rec709YCbCr","Transparent","Undefined","XYZ","YCC","YCbCr","YDbDr","YIQ","YPbPr","YUV","sRGB","scRGB","xyY"],"type":"string"}],"description":"\nSets the image colorspace. For details about the available values, see the [ImageMagick documentation](https://www.imagemagick.org/script/command-line-options.php#colorspace).\n\nPlease note that if you were using `\"RGB\"`, we recommend using `\"sRGB\"`. ImageMagick might try to find the most efficient `colorspace` based on the color of an image, and default to e.g. `\"Gray\"`. To force colors, you might then have to use this parameter.\n"},"delay":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":0,"type":"integer"}],"description":"\nIf your output format is `\"gif\"` then this parameter sets the number of 100th seconds to pass before the next frame is shown in the animation. Set this to `100` for example to allow 1 second to pass between the frames of the animated gif.\n\nIf your output format is not `\"gif\"`, then this parameter does not have any effect.\n"},"density":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^(?:0*[1-9][0-9]*(?:\\.[0-9]+)?|0+\\.[0-9]*[1-9][0-9]*)(?:x(?:0*[1-9][0-9]*(?:\\.[0-9]+)?|0+\\.[0-9]*[1-9][0-9]*))?$","type":"string"}],"description":"\nWhile in-memory quality and file format depth specifies the color resolution, the density of an image is the spatial (space) resolution of the image. That is the density (in pixels per inch) of an image and defines how far apart (or how big) the individual pixels are. It defines the size of the image in real world terms when displayed on devices or printed.\n\nYou can set this value to a specific `width` or in the format `width`x`height`.\n\nIf your converted image has a low resolution, please try using the density parameter to resolve that.\n"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"format":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["gif","jpeg","jpg","png"],"type":"string"}],"default":"png","description":"\nThe format of the extracted image(s).\n\nIf you specify the value `\"gif\"`, then an animated gif cycling through all pages is created. Please check out [this demo](/demos/document-processing/convert-all-pages-of-a-document-into-an-animated-gif/) to learn more about this.\n"},"height":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"maximum":5000,"minimum":1,"type":"integer"}],"description":"\nHeight of the new image, in pixels. If not specified, will default to the height of the input image\n"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"imagemagick_stack":{"$ref":"#/components/schemas/Schema_56b30d86ea31500bf844b3c857e7e1087b090f38feb9275f6991048203c04727"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"page":{"anyOf":[{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"type":"integer"}]},{"type":"null"}],"default":null,"description":"\nThe PDF page that you want to convert to an image. By default the value is `null` which means that all pages will be converted into images.\n"},"page_range":{"anyOf":[{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^[0-9]+-[0-9]+$","type":"string","x-transloadit-input-fidelity":"conservative"}]},{"type":"null"}],"default":null,"description":"\nA page range to extract, in the format `\"start-end\"` (e.g., `\"1-20\"`). Extraction starts from the first page in the range and proceeds sequentially, stopping gracefully when a page does not exist. This is useful for PDFs where the total page count cannot be determined.\n\nThe start must be at least `1`, and the end must be greater than or equal to the start.\n\nThis parameter cannot be used together with `page`, and is not supported with GIF format. When `page_range` is set, the robot does not need to know the total page count upfront, making it robust for PDFs that fail page count detection.\n"},"pdf_use_cropbox":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":true,"description":"\nSome PDF documents lie about their dimensions. For instance they'll say they are landscape, but when opened in decent Desktop readers, it's really in portrait mode. This can happen if the document has a cropbox defined. When this option is enabled (by default), the cropbox is leading in determining the dimensions of the resulting thumbnails.\n"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"resize_strategy":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["crop","fillcrop","fit","min_fit","pad","stretch"],"type":"string"}],"default":"pad","description":"\nOne of the [available resize strategies](/docs/topics/resize-strategies/).\n"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/document/thumbs","description":"\n## Things to keep in mind\n\n- If you convert a multi-page PDF file into several images, all result images will be sorted with the first image being the thumbnail of the first document page, etc.\n- You can also check the `meta.thumb_index` key of each result image to find out which page it corresponds to. Keep in mind that these thumb indices **start at 0,** not at 1.\n","type":"string"},"stack":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["ghostscript","pdfium","vips"],"type":"string"}],"description":"\nSelects the PDF rendering stack. Defaults to Ghostscript.\n\nUse `\"pdfium\"` for page-specific or single-page high-DPI PDF rasterization when Ghostscript is too slow or exhausts scratch space, for example with high-resolution CAD, blueprint, or layered real-estate PDFs. This stack uses PDFium via the Python `pypdfium2` bindings and Pillow for final image encoding.\n\nUse `\"vips\"` only when you explicitly want libvips PDF loading. It is lower-overhead, but PDFium was faster in high-DPI floorplan tests while producing comparable output quality.\n\nThe `\"pdfium\"` stack currently supports JPG/PNG output, `resize_strategy: \"fit\"`, a specific `page` or single-page PDFs, opaque hexadecimal backgrounds, `antialiasing`, and `pdf_use_cropbox`.\n\nThe `\"vips\"` stack currently supports JPG/PNG output, `resize_strategy: \"fit\"`, a specific `page` or single-page PDFs, and hexadecimal or transparent backgrounds.\n"},"trim_whitespace":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":true,"description":"\nThis determines if additional whitespace around the PDF should first be trimmed away before it is converted to an image. If you set this to `true` only the real PDF page contents will be shown in the image.\n\nIf you need to reflect the PDF's dimensions in your image, it is generally a good idea to set this to `false`.\n"},"turbo":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":true,"description":"\nEnables high-performance mode for faster document processing.\n\nWhen enabled, Turbo Mode provides two key optimizations:\n\n1. **Parallel page extraction**: For documents with more than 5 pages, multiple processes run in parallel to extract pages simultaneously. The number of parallel processes scales with the document size (up to 4 processes for documents with 13+ pages).\n\n2. **Distributed resizing**: Extracted pages are resized concurrently on multiple machines, providing up to 20 times faster processing for large documents.\n\nFiles are emitted as they become available during processing. If you set this to `false`, pages are extracted sequentially using a single process, and files are emitted only after all processing is complete.\n\nTurbo Mode increases pricing in that the input document's file size is added for every extracted page. There are no performance benefits nor increased charges for single-page documents.\n"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"},"width":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"maximum":5000,"minimum":1,"type":"integer"}],"description":"\nWidth of the new image, in pixels. If not specified, will default to the width of the input image\n"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"access_token":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nThe Dropbox OAuth access token. We recommend using <dfn>Template Credentials</dfn> via `credentials`, but you can use this parameter for dynamic Dropbox credentials.\n"},"credentials":{"$ref":"#/components/schemas/Schema_995e384a38585760bf60a96e9933b8db3ca61882b133cf6952963495d3926235"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"force_name":{"$ref":"#/components/schemas/Schema_e2d753e6b6111506a4565bdb18eccafd67d2027839616974639f5565d695fafd"},"ignore_errors":{"$ref":"#/components/schemas/Schema_03e4961eba9e9b422ce714f9224b8d47a380c80d27b8342a78ba4e2702feb4db"},"import_on_errors":{"$ref":"#/components/schemas/Schema_61808f40a326596fd9674ebbd91184b0a2e04f8c67eb49fdf9f9449580271ab8"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"path":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},{"$ref":"#/components/schemas/Schema_bc9fbfc32e2939087e1b877c2b51ce63f08c8cdfdcf7adca01505a0498ab5691"}],"description":"\nThe path in your Dropbox to the specific file or directory. If the path points to a file, only this file will be imported. For example: `images/avatar.jpg`.\n\nIf it points to a directory, indicated by a trailing slash (`/`), then all files that are descendants of this directory are recursively imported. For example: `images/`.\n\nIf you want to import all files from the root directory, please use `/` as the value here.\n\nYou can also use an array of path strings here to import multiple paths in the same <dfn>Robot</dfn>'s <dfn>Step</dfn>.\n"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"refresh_token":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nThe Dropbox OAuth refresh token. This is optional and can be used together with `access_token` for dynamic Dropbox credentials.\n"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/dropbox/import","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["path","robot"],"type":"object"},{"additionalProperties":false,"properties":{"create_sharing_link":{"$ref":"#/components/schemas/Schema_8e7ed1be08df9219cc84f79912d659318e9bb5a1f8b241e3600c03a63956b576"},"credentials":{"$ref":"#/components/schemas/Schema_995e384a38585760bf60a96e9933b8db3ca61882b133cf6952963495d3926235"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"path":{"$ref":"#/components/schemas/Schema_35cf890db619e90c290459ad1bb9111a20064bbab0881cc1ebedd82c75b6e871"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/dropbox/store","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/edgly/deliver","description":"\nWhen you want Transloadit to tranform files on the fly, this <dfn>Robot</dfn> can cache and deliver the results close to your end-user, saving on latency and encoding volume. The use of this <dfn>Robot</dfn> is implicit when you use the <code>edgly.net</code> domain.\n","type":"string"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"archive_name":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nThe name of the archive file to be created (without the file extension).\n"},"compression_level":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"maximum":0,"minimum":-9,"type":"integer"}],"default":-6,"description":"\nDetermines how fiercely to try to compress the archive. `-0` is compressionless, which is suitable for media that is already compressed. `-1` is fastest with lowest compression. `-9` is slowest with the highest compression.\n\nIf you are using `-0` in combination with the `tar` format with `gzip` enabled, consider setting `gzip: false` instead. This results in a plain Tar archive, meaning it already has no compression.\n"},"file_layout":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["advanced","relative-path","simple"],"type":"string"}],"default":"advanced","description":"\nDetermines if the result archive should contain all files in one directory (value for this is `\"simple\"`) or in subfolders according to the explanation below (value for this is `\"advanced\"`). The `\"relative-path\"` option preserves the relative directory structure of the input files.\n\nFiles with same names are numbered in the `\"simple\"` file layout to avoid naming collisions.\n"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"format":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["tar","zip"],"type":"string"}],"default":"tar","description":"\nThe format of the archive to be created. Supported values are `\"tar\"` and `\"zip\"`.\n\nNote that `\"tar\"` without setting `gzip` to `true` results in an archive that's not compressed in any way.\n"},"gzip":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nDetermines if the result archive should also be gzipped. Gzip compression is only applied if you use the `\"tar\"` format.\n"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"password":{"anyOf":[{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},{"type":"null"}],"default":null,"description":"\nThis allows you to encrypt all archive contents with a password and thereby protect it against unauthorized use. To unzip the archive, the user will need to provide the password in a text input field prompt.\n\nThis parameter has no effect if the format parameter is anything other than `\"zip\"`.\n"},"path":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nThe path at which each file is to be placed inside the archive. This may include any available [Assembly variables](/docs/topics/assembly-instructions/#assembly-variables). Variables are evaluated per file, allowing templates like `\"${file.meta.archive_directory}/${file.name}\"` to preserve the original directory structure from a previously extracted archive.\n\nWhen this parameter is set, the `file_layout` parameter is ignored.\n"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/file/compress","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"ignore_errors":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"items":{"enum":["execute","meta"],"type":"string"},"type":"array"}]}],"default":[],"description":"\nIgnore errors during specific phases of processing.\n\nSetting this to `[\"meta\"]` will cause the Robot to ignore errors during metadata extraction.\n\nSetting this to `[\"execute\"]` will cause the Robot to ignore errors during the main execution phase.\n\nSetting this to `true` is equivalent to `[\"meta\", \"execute\"]` and will ignore errors in both phases.\n\nMetadata extraction can fail for files inside an archive, for example when an archived file has a size of zero bytes. Configure the `\"meta\"` phase when decompression should continue in that case.\n"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"password":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nThe password to use for decrypting password-protected archives.\n\nSupports encrypted ZIP (ZipCrypto and AES), RAR (encrypted), and 7z (AES-256 encrypted) archives.\n\nFor security, this value should be passed via Template Variables (`${fields.archive_password}`) or Template Credentials rather than hardcoded in your Assembly Instructions. The password is never logged or included in Assembly status responses.\n\nIf the archive is encrypted and no password is provided, or if the password is incorrect, the <dfn>Assembly</dfn> will fail with a `FILE_DECOMPRESS_PASSWORD_REQUIRED` or `FILE_DECOMPRESS_PASSWORD_INCORRECT` error.\n"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/file/decompress","description":"\nThis Robot supports the following archive formats:\n\n- ZIP archives (with uncompressed or \"deflate\"-compressed entries, including password-protected)\n- 7-Zip archives (including AES-256 encrypted)\n- RAR archives (including encrypted)\n- GNU tar format (including GNU long filenames, long link names, and sparse files)\n- Solaris 9 extended tar format (including ACLs)\n- Old V7 tar archives\n- POSIX ustar\n- POSIX pax interchange format\n- POSIX octet-oriented cpio\n- SVR4 ASCII cpio\n- Binary cpio (big-endian or little-endian)\n- ISO9660 CD-ROM images (with optional Rockridge or Joliet extensions)\n- GNU and BSD \"ar\" archives\n- \"mtree\" format\n- Microsoft CAB format\n- LHA and LZH archives\n- XAR archives\n\nThis <dfn>Robot</dfn> also detects and handles any of the following before evaluating the archive file:\n\n- uuencoded files\n- Files with RPM wrapper\n- gzip compression\n- bzip2 compression\n- compress/LZW compression\n- lzma, lzip, and xz compression\n\nFor security reasons, archives containing symlinks that point outside the archived directory will cause the <dfn>Assembly</dfn> to fail.\n\nPassword-protected archives (ZIP with ZipCrypto or AES encryption, RAR encrypted, 7z with AES-256) are supported via the `password` parameter.\n","type":"string"},"turbo":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":true,"description":"\nEnables Turbo Mode for `/file/decompress`.\n\nThis setting defaults to `true`. Set it to `false` to disable Turbo Mode.\n\nWhen enabled, extracted files are emitted as soon as they are available, which can speed up downstream processing for large archives.\n\nTurbo Mode also changes usage accounting: emitted extracted-file bytes and original input-archive bytes are billed with a surcharge (25% by default).\n"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"accepts":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"type":"null"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},{"$ref":"#/components/schemas/Schema_32f18cfb12051bed3614149f34e9d4e1035266d19b2ef39b57e08adddb9ddfec"}],"description":"\nFiles that match at least one requirement will be accepted, or declined otherwise. If the value is `null`, all files will be accepted. If the array is empty, no files will be accepted. Omit this parameter or set it to `null` when you want the Step to pass every file through. Examples:\n\n`[[\"${file.mime}\", \"==\", \"image/gif\"]]`\n`[[\"${file.size}\", \"<\", \"5kb\"]]`\n\nFor numeric comparisons (`<`, `>`, `<=`, `>=`), human-readable byte values such as `\"20mb\"`, `\"1gb\"`, or `\"512kb\"` are supported.\n\nIf the `condition_type` parameter is set to `\"and\"`, then all requirements must match for the file to be accepted.\n\nIf `accepts` and `declines` are both provided, the requirements in `accepts` will be evaluated first, before the conditions in `declines`.\n"},"condition_type":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["and","or"],"type":"string"}],"default":"or","description":"\nSpecifies the condition type according to which the members of the `accepts` or `declines` arrays should be evaluated. Can be `\"or\"` or `\"and\"`.\n"},"declines":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"type":"null"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},{"$ref":"#/components/schemas/Schema_32f18cfb12051bed3614149f34e9d4e1035266d19b2ef39b57e08adddb9ddfec"}],"description":"\nFiles that match at least one requirement will be declined, or accepted otherwise. If the value is `null` or an empty array, no files will be declined. Examples:\n\n`[[\"${file.size}\", \">\", \"1024\"]]`\n`[[\"${file.size}\", \">\", \"20mb\"]]`\n\nFor numeric comparisons (`<`, `>`, `<=`, `>=`), human-readable byte values such as `\"20mb\"`, `\"1gb\"`, or `\"512kb\"` are supported.\n\nIf the `condition_type` parameter is set to `\"and\"`, then all requirements must match for the file to be declined.\n\nIf `accepts` and `declines` are both provided, the requirements in `accepts` will be evaluated first, before the conditions in `declines`.\n"},"error_msg":{"$ref":"#/components/schemas/Schema_bf2046fbe6985102c38f69c30542d74796e31ca5b37925448ed8a9ac879d4c26"},"error_on_decline":{"$ref":"#/components/schemas/Schema_6e004c1fd5129d97457a92f4f20e65d0eebb689e98b3ca78a325ca39894070d4"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/file/filter","description":"\nThink of this <dfn>Robot</dfn> as an `if/else` condition for building advanced file conversion workflows. With it, you can filter and direct certain uploaded files depending on their metadata.\n\nThe <dfn>Robot</dfn> has two modes of operation:\n\n- Constructing conditions out of arrays with 3 members each. For example, `[\"${file.size}\", \"<=\", \"720\"]`\n- Writing conditions in JavaScript. For example, `${file.size <= 720}`. See also [Dynamic Evaluation](/docs/topics/dynamic-evaluation/).\n\nIf you want a `/file/filter` Step to pass every input file through unchanged, leave `accepts` and\n`declines` unset, or set them to `null`. Do not use `\"accepts\": \"true\"` for this: plain strings\nare treated as JavaScript expressions only when they use the `${...}` form, such as `\"${true}\"`.\n\nPassing JavaScript allows you to implement logic as complex as you wish, however it’s slower than combining arrays of conditions, and will be charged for per invocation via [🤖/script/run](/docs/robots/script-run/).\n\n### Conditions as arrays\n\nThe `accepts` and `declines` parameters can each be set to an array of arrays with three members:\n\n1. A value or job variable, such as `${file.mime}`\n2. One of the following operators: `=`, `==`, `===`, `<`, `>`, `<=`, `>=`, `!=`, `!==`, `regex`, `!regex`, `includes`, `!includes`, `empty`, `!empty`\n3. A value or job variable, such as `50` or `\"foo\"`\n\nExamples:\n\n- `[[\"${file.meta.width}\", \">\", \"${file.meta.height}\"]]`\n- `[[\"${file.size}\", \"<=\", \"720\"]]`\n- `[[\"${file.size}\", \">\", \"20mb\"]]`\n- `[[\"720\", \">=\", \"${file.size}\"]]`\n- `[[\"${file.mime}\", \"regex\", \"image\"]]`\n\nWhen you match against `${file.mime}`, the value is typically based on Transloadit’s\nserver-side metadata extraction in the normal upload flow, rather than only the MIME type reported\nby the client or browser. This makes `/file/filter` suitable for rejecting mislabeled files.\nDepending on the file container and the detection tools involved, some formats may be reported under\nclosely related MIME types such as `image/heic` or `image/heif`.\n\nIf you only want formats that browsers consistently render, prefer an explicit allowlist such as\n`^(image/jpeg|image/png|image/gif|image/webp|image/avif)$` over a broad `^image/` rule.\n\nFor numeric comparisons (`<`, `>`, `<=`, `>=`), you can use human-readable byte values such as `\"20mb\"`, `\"1gb\"`, or `\"512kb\"`. These use binary (1024-based) multipliers. Supported units: `b`, `kb`, `mb`, `gb`, `tb`, `pb` (and their IEC equivalents `kib`, `mib`, `gib`, `tib`, `pib`).\n\nThe `includes` and `!includes` operators work with arrays or strings (strings use substring checks).\n\n> [!Warning]\n> If you would like to match against a `null` value or a value that is not present (like an audio file does not have a `video_codec` property in its metadata), match against `\"\"` (an empty string) instead. We’ll support proper matching against `null` in the future, but we cannot easily do so right now without breaking backwards compatibility.\n\n### Conditions as JavaScript\n\nThe `accepts` and `declines` parameters can each be set to strings of JavaScript, which return a boolean value.\n\nExamples:\n\n- `${file.meta.width > file.meta.height}`\n- `${file.size <= 720}`\n- `${/image/.test(file.mime)}`\n- `${Math.max(file.meta.width, file.meta.height) > 100}`\n\nAs indicated, we charge for this via [🤖/script/run](/docs/robots/script-run/). See also [Dynamic Evaluation](/docs/topics/dynamic-evaluation/) for more details on allowed syntax and behavior.\n","type":"string"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"algorithm":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["b2","md5","sha1","sha224","sha256","sha384","sha512"],"type":"string"}],"default":"sha256","description":"\nThe hashing algorithm to use.\n\nThe file hash is exported as `file.meta.hash`.\n"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"partial":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["both","first","full","last"],"type":"string"}],"default":"full","description":"\nSpecifies which portion of the file to hash. This is useful for fast fingerprinting of large files.\n\n- `\"full\"` (default): Hash the entire file.\n- `\"first\"`: Hash only the first N bytes (specified by `partial_size`).\n- `\"last\"`: Hash only the last N bytes (specified by `partial_size`).\n- `\"both\"`: Hash the first N bytes concatenated with the last N bytes.\n\nWhen using partial hashing, `file.meta.hash_partial` indicates the mode used, and `file.meta.hash_partial_size` indicates the number of bytes hashed from each portion.\n"},"partial_size":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"exclusiveMinimum":0,"type":"integer"}],"default":1048576,"description":"\nThe number of bytes to hash when using partial hashing. Defaults to `1048576` (1 MB).\n\nThis parameter is only used when `partial` is set to `\"first\"`, `\"last\"`, or `\"both\"`.\n"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/file/hash","description":"\nThis <dfn>Robot</dfn> allows you to hash any file as part of the <dfn>Assembly</dfn> execution process. This can be useful for verifying the integrity of a file for example.\n","type":"string"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"artwork_center_color":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^#?[0-9a-fA-F]{6}([0-9a-fA-F]{2})?$","type":"string"}],"description":"\n  The color used in the center of the artwork's gradient.\n  "},"artwork_outer_color":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^#?[0-9a-fA-F]{6}([0-9a-fA-F]{2})?$","type":"string"}],"description":"\n  The color used in the outer parts of the artwork's gradient.\n  "},"background":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^#?[0-9a-fA-F]{6}([0-9a-fA-F]{2})?$","type":"string"}],"default":"#ffffffff","description":"\nThe hexadecimal code of the color used to fill the background (only used for the pad resize strategy). The format is `#rrggbb[aa]` (red, green, blue, alpha). Use `#00000000` for a transparent padding.\n"},"clip_duration":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":0,"type":"number"}],"default":5,"description":"\nThe duration in seconds of the generated video clip. Only used if the `clip` strategy for video files is applied. Be aware that a longer clip duration also results in a larger file size, which might be undesirable for previews.\n"},"clip_format":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["apng","avif","gif","webp"],"type":"string"}],"default":"webp","description":"\nThe animated image format for the generated video clip. Only used if the `clip` strategy for video files is applied.\n\nPlease consult the [MDN Web Docs](https://developer.mozilla.org/en-US/docs/Web/Media/Formats/Image_types) for detailed information about the image formats and their characteristics. GIF enjoys the broadest support in software, but only supports a limit color palette. APNG supports a variety of color depths, but its lossless compression produces large images for videos. AVIF is a modern image format that offers great compression, but proper support for animations is still lacking in some browsers. WebP on the other hand, enjoys broad support while offering a great balance between small file sizes and good visual quality, making it the default clip format.\n"},"clip_framerate":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"maximum":60,"minimum":1,"type":"integer"}],"default":5,"description":"\nThe framerate of the generated video clip. Only used if the `clip` strategy for video files is applied. Be aware that a higher framerate appears smoother but also results in a larger file size, which might be undesirable for previews.\n"},"clip_loop":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":true,"description":"\nSpecifies whether the generated animated image should loop forever (`true`) or stop after playing the animation once (`false`). Only used if the `clip` strategy for video files is applied.\n"},"clip_offset":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":0,"type":"number"}],"default":1,"description":"\nThe start position in seconds of where the clip is cut. Only used if the `clip` strategy for video files is applied. Be aware that for larger video only the first few MBs of the file may be imported to improve speed. Larger offsets may seek to a position outside of the imported part and thus fail to generate a clip.\n"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"format":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["avif","gif","jpeg","jpg","png","webp"],"type":"string"}],"default":"png","description":"\nThe output format for the generated thumbnail image. AVIF and WebP are also supported. If a short video clip is generated using the `clip` strategy, its format is defined by `clip_format`.\n"},"height":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"$ref":"#/components/schemas/Schema_ac7d8464107dcaba338b4b8bdc2db3b974790cf626fa64c3e036a3c7fd9cab49"}],"default":200,"description":"\nHeight of the thumbnail, in pixels.\n"},"icon_style":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["square","with-text"],"type":"string"}],"default":"with-text","description":"\nThe style of the icon generated if the `icon` strategy is applied. The default style, `with-text`, includes an icon showing the file type and a text box below it, whose content can be controlled by the `icon_text_content` parameter and defaults to the file extension (e.g. MP4, JPEG). The `square` style only includes a square variant of the icon showing the file type. Below are exemplary previews generated for a text file utilizing the different styles:\n\n<br /><br /> <strong>`with-text` style:</strong> <br />\n![Image with text style]({{site.asset_cdn}}/assets/images/file-preview/icon-with-text.png)\n<br /><br /> <strong>`square` style:</strong> <br />\n![Image with square style]({{site.asset_cdn}}/assets/images/file-preview/icon-square.png)\n"},"icon_text_color":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^#?[0-9a-fA-F]{6}([0-9a-fA-F]{2})?$","type":"string"}],"default":"#a2a2a2","description":"\nThe color of the text used in the icon. The format is `#rrggbb[aa]`. Only used if the `icon` strategy is applied.\n"},"icon_text_content":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["extension","none"],"type":"string"}],"default":"extension","description":"\nThe content of the text box in generated icons. Only used if the `icon_style` parameter is set to `with-text`. The default value, `extension`, adds the file extension (e.g. MP4, JPEG) to the icon. The value `none` can be used to render an empty text box, which is useful if no text should not be included in the raster image, but some place should be reserved in the image for later overlaying custom text over the image using HTML etc.\n"},"icon_text_font":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"default":"Roboto","description":"\nThe font family of the text used in the icon. Only used if the `icon` strategy is applied. [Here](/docs/supported-formats/fonts/) is a list of all supported fonts.\n"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"optimize":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":true,"description":"\nSpecifies whether the generated preview image should be optimized to reduce the image's file size while keeping their quaility. If enabled, the images will be optimized using [🤖/image/optimize](/docs/robots/image-optimize/).\n"},"optimize_priority":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["compression-ratio","conversion-speed"],"type":"string"}],"default":"conversion-speed","description":"\nSpecifies whether conversion speed or compression ratio is prioritized when optimizing images. Only used if `optimize` is enabled. Please see the [🤖/image/optimize documentation](/docs/robots/image-optimize/#priority) for more details.\n"},"optimize_progressive":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nSpecifies whether images should be interlaced, which makes the result image load progressively in browsers. Only used if `optimize` is enabled. Please see the [🤖/image/optimize documentation](/docs/robots/image-optimize/#progressive) for more details.\n"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"resize_strategy":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["crop","fillcrop","fit","min_fit","pad","stretch"],"type":"string"}],"default":"pad","description":"\nTo achieve the desired dimensions of the preview thumbnail, the <dfn>Robot</dfn> might have to resize the generated image. This happens, for example, when the dimensions of a frame extracted from a video do not match the chosen `width` and `height` parameters.\n\nSee the list of available [resize strategies](/docs/topics/resize-strategies/) for more details.\n"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/file/preview","description":"\nThis <dfn>Robot</dfn>'s purpose is to generate a meaningful preview image for any file, in such a way that the resulting thumbnail highlights the file's content. The goal is not to losslessly present the original media in a smaller way. Instead, it is to maximize the chance of a person recognizing the media at a glance, while being visually pleasing and consistent with other previews. The generation process depends on the file type. For example, the <dfn>Robot</dfn> can extract artwork from media files, frames from videos, generate a waveform for audio files, and preview the content of documents and images. The details of all available strategies are provided in the next section.\n\nIf no file-specific thumbnail can be generated because the file type is not supported, a generic icon containing the file extension will be generated.\n\nThe default parameters ensure that the <dfn>Robot</dfn> always generates a preview image with the predefined dimensions and formats, to allow an easy integration into your application's UI. In addition, the generated preview images are optimized by default to reduce their file size while keeping their quality.\n","type":"string"},"strategy":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"additionalProperties":true,"properties":{"archive":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"items":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"type":"array"}],"default":["icon"]},"audio":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"items":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"type":"array"}],"default":["artwork","waveform","icon"]},"document":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"items":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"type":"array"}],"default":["page","icon"]},"image":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"items":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"type":"array"}],"default":["image","icon"]},"unknown":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"items":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"type":"array"}],"default":["icon"]},"video":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"items":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"type":"array"}],"default":["artwork","frame","icon"]},"webpage":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"items":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"type":"array"}],"default":["render","icon"]}},"type":"object"}],"description":"\nDefinition of the thumbnail generation process per file category. The parameter must be an object whose keys can be one of the file categories: `audio`, `video`, `image`, `document`, `archive`, `webpage`, and `unknown`. The corresponding value is an array of strategies for the specific file category. See the above section for a list of all available strategies.\n\nFor each file, the <dfn>Robot</dfn> will attempt to use the first strategy to generate the thumbnail. If this process fails (e.g., because no artwork is available in a video file), the next strategy is attempted. This is repeated until either a thumbnail is generated or the list is exhausted. Selecting the `icon` strategy as the last entry provides a fallback mechanism to ensure that an appropriate strategy is always available.\n\nThe parameter defaults to the following definition:\n\n```json\n{\n  \"audio\": [\"artwork\", \"waveform\", \"icon\"],\n  \"video\": [\"artwork\", \"frame\", \"icon\"],\n  \"document\": [\"page\", \"icon\"],\n  \"image\": [\"image\", \"icon\"],\n  \"webpage\": [\"render\", \"icon\"],\n  \"archive\": [\"icon\"],\n  \"unknown\": [\"icon\"]\n}\n```\n"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"},"waveform_center_color":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^#?[0-9a-fA-F]{6}([0-9a-fA-F]{2})?$","type":"string"}],"default":"#000000ff","description":"\nThe color used in the center of the waveform's gradient. The format is `#rrggbb[aa]` (red, green, blue, alpha). Only used if the `waveform` strategy for audio files is applied.\n"},"waveform_height":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"maximum":5000,"minimum":1,"type":"integer"}],"default":100,"description":"\nHeight of the waveform, in pixels. Only used if the `waveform` strategy for audio files is applied. It can be utilized to ensure that the waveform only takes up a section of the preview thumbnail.\n"},"waveform_outer_color":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^#?[0-9a-fA-F]{6}([0-9a-fA-F]{2})?$","type":"string"}],"default":"#000000ff","description":"\nThe color used in the outer parts of the waveform's gradient. The format is `#rrggbb[aa]` (red, green, blue, alpha). Only used if the `waveform` strategy for audio files is applied.\n"},"waveform_width":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"maximum":5000,"minimum":1,"type":"integer"}],"default":300,"description":"\nWidth of the waveform, in pixels. Only used if the `waveform` strategy for audio files is applied. It can be utilized to ensure that the waveform only takes up a section of the preview thumbnail.\n"},"width":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"$ref":"#/components/schemas/Schema_ac7d8464107dcaba338b4b8bdc2db3b974790cf626fa64c3e036a3c7fd9cab49"}],"default":300,"description":"\nWidth of the thumbnail, in pixels.\n"},"zoom":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":true,"description":"\nIf set to `false`, smaller images will not be stretched to the desired `width` and `height`. This is useful if you want to retain the original image dimensions and only limit the output to a maximum size. For details about the impact of zooming for your preferred resize strategy, see the list of available [resize strategies](/docs/topics/resize-strategies/).\n\nNote that this parameter only affects strategies that produce a still image. Animated clips generated by the `clip` strategy are not affected.\n"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"cache_duration":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":0,"type":"integer"}],"description":"\nAn optional duration in seconds that the served file should be cached. When set, this value is used for both the `max-age` (browser cache) and `s-maxage` (shared/CDN cache) directives in the `Cache-Control` header, overriding the defaults. For example, setting `cache_duration` to `43200` would cache the file for 12 hours.\n\nThis is useful for controlling data retention in CDNs. For instance, if your temporary files are deleted after 24 hours, you can set `cache_duration` to `86400` to ensure cached copies also expire within that window.\n"},"download_name":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^[^/\\\\\u0000-\u001f-]{0,255}$","type":"string"}],"description":"Serve as an attachment using this Unicode filename. Empty or omitted keeps inline delivery. Overrides a Content-Disposition header without changing the bytes or Range support."},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"headers":{"additionalProperties":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"default":{"Accept-Ranges":"bytes","Access-Control-Allow-Headers":"X-Requested-With, Content-Type, Cache-Control, Accept, Content-Length, Transloadit-Client, Authorization, Range, If-Range","Access-Control-Allow-Methods":"POST, GET, PUT, DELETE, OPTIONS","Access-Control-Allow-Origin":"*","Access-Control-Expose-Headers":"Transloadit-Assembly-URL, Content-Range, Content-Length, Accept-Ranges","Cache-Control":"public, max-age=259200, s-maxage=86400","Content-Type":"${file.mime}; charset=utf-8","Transloadit-Assembly":"…","Transloadit-RequestID":"…"},"description":"\nAn object containing a list of headers to be set for a file as we serve it to a CDN/web browser, such as `{ FileURL: \"${file.url_name}\" }` which will be merged over the defaults, and can include any available [Assembly Variable](/docs/topics/assembly-instructions/#assembly-variables).\n\nThe `Accept-Ranges: bytes` header advertises that HTTP range requests are supported for seekable media playback. This relies on Transloadit's storage backends (S3, GCS, etc.) all honoring Range request headers. The CORS headers include `Range` and `If-Range` in `Access-Control-Allow-Headers` to permit cross-origin range requests, and expose `Content-Range`, `Content-Length`, and `Accept-Ranges` via `Access-Control-Expose-Headers` so browser JavaScript can read these values.\n","type":"object"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/file/serve","description":"\nWhen you want Transloadit to tranform files on the fly, you can use this <dfn>Robot</dfn> to determine which <dfn>Step</dfn> of a <dfn>Template</dfn> should be served to the end-user (via a CDN), as well as set extra information on the served files, such as headers. This way you can for instance suggest the CDN for how long to keep cached copies of the result around. By default, we instruct browsers to cache the result for 72h (`259200` seconds) and CDNs to cache the content for 24h (`86400` seconds). Use the `cache_duration` parameter to customize both values at once.\n\n🤖/file/serve merely acts as the glue layer between our <dfn>Assembly</dfn> engine and serving files over HTTP. It let's you pick the proper result of a series of <dfn>Steps</dfn> via the `use` parameter and configure headers on the original content. That is where its responsibilies end, and 🤖/tlcdn/deliver, then takes over to globally distribute this original content across the globe, and make sure that is cached close to your end-users, when they make requests such as <https://my-app.tlcdn.com/resize-img/canoe.jpg?w=500>, another. 🤖/tlcdn/deliver is not a part of your <dfn>Assembly Instructions</dfn>, but it may appear on your invoices as bandwidth charges incur when distributing the cached copies. 🤖/file/serve only charges when the CDN does not have a cached copy and requests to regenerate the original content, which depending on your caching settings could be just once a month, or year, per file/transformation.\n\nWhile theoretically possible, you could use [🤖/file/serve](/docs/robots/file-serve/) directly in HTML files, but we strongly recommend against this, because if your site gets popular and the media URL that /file/serve is handling gets hit one million times, that is one million new image resizes. Wrapping it with a CDN (and thanks to the caching that comes with it) makes sure encoding charges stay low, as well as latencies.\n\nAlso consider configuring caching headers and cache-control directives to control how content is cached and invalidated on the CDN edge servers, balancing between freshness and efficiency.\n\n## Smart CDN security with signed URLs\n\nYou can leverage [signed Smart CDN URLs](/docs/api/authentication/#smart-cdn) to avoid abuse of our encoding platform. Below is a quick Node.js example using our Node SDK, but there are [examples for other languages and SDKs](/docs/api/authentication/#example-code) as well.\n\n```javascript\n// yarn add @transloadit/node\n// or\n// npm install --save @transloadit/node\n\nimport { Transloadit } from '@transloadit/node'\n\nconst transloadit = new Transloadit({\n  authKey: 'YOUR_TRANSLOADIT_KEY',\n  authSecret: 'YOUR_TRANSLOADIT_SECRET',\n})\n\nconst url = transloadit.getSignedSmartCDNUrl({\n  workspace: 'YOUR_WORKSPACE',\n  template: 'YOUR_TEMPLATE',\n  input: 'image.png',\n  urlParams: { height: 100, width: 100 },\n})\n\nconsole.log(url)\n```\n\nThis will generate a signed Smart CDN URL that includes authentication parameters, preventing unauthorized access to your transformation endpoints.\n\nFor new integrations, use the modern `sig` + `exp` format. Legacy `s` signatures are deprecated. Also note that the expiration window is the practical cache window for signed results: shorter expirations tighten access control, while longer expirations improve cache reuse and lower encoding volume.\n\n## More information\n\n- [Content Delivery](/services/content-delivery/)\n- [🤖/file/serve](/docs/robots/file-serve/) pricing\n- [🤖/tlcdn/deliver](/docs/robots/tlcdn-deliver/) pricing\n- [File Preview Feature](/blog/2024/06/file-preview-with-smart-cdn/) blog post\n","type":"string"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"error_msg":{"$ref":"#/components/schemas/Schema_bf2046fbe6985102c38f69c30542d74796e31ca5b37925448ed8a9ac879d4c26"},"error_on_decline":{"$ref":"#/components/schemas/Schema_6e004c1fd5129d97457a92f4f20e65d0eebb689e98b3ca78a325ca39894070d4"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"repair_pdf":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nAttempt to repair invalid PDFs with `mutool clean`. This is best-effort and only applies when `verify_to_be` is `\"pdf\"`.\n"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/file/verify","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"},"verify_to_be":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"default":"pdf","description":"\nThe type that you want to match against to ensure your file is of this type. For example, `image` will verify whether uploaded files are images. This also works against file media types, in this case `image/png` would also work to match against specifically `png` files.\n"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"error_msg":{"$ref":"#/components/schemas/Schema_bf2046fbe6985102c38f69c30542d74796e31ca5b37925448ed8a9ac879d4c26"},"error_on_decline":{"$ref":"#/components/schemas/Schema_6e004c1fd5129d97457a92f4f20e65d0eebb689e98b3ca78a325ca39894070d4"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/file/virusscan","description":"\nThis <dfn>Robot</dfn> is built on top of [ClamAV](https://www.clamav.net/), the best open source antivirus engine available. We update its signatures on a daily basis.\n\nBy default, this <dfn>Robot</dfn> excludes all malicious files from further processing without any additional notification. This behavior can be changed by setting `error_on_decline` to `true`, which will stop <dfn>Assemblies</dfn> as soon as malicious files are found. Such <dfn>Assemblies</dfn> will then be marked with an error.\n\nWe allow the use of industry standard [EICAR files](https://www.eicar.org/download-anti-malware-testfile/) for integration testing without needing to use potentially dangerous live virus samples.\n","type":"string"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"credentials":{"$ref":"#/components/schemas/Schema_2ef8a6ef0566a139b8bf3bc13f536067802a8067f5e00428aa0b8d66372e2b61"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"force_name":{"$ref":"#/components/schemas/Schema_e2d753e6b6111506a4565bdb18eccafd67d2027839616974639f5565d695fafd"},"host":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"ignore_errors":{"$ref":"#/components/schemas/Schema_03e4961eba9e9b422ce714f9224b8d47a380c80d27b8342a78ba4e2702feb4db"},"import_on_errors":{"$ref":"#/components/schemas/Schema_61808f40a326596fd9674ebbd91184b0a2e04f8c67eb49fdf9f9449580271ab8"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"passive_mode":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":true,"description":"\nDetermines if passive mode should be used for the FTP connection.\n"},"password":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"path":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},{"$ref":"#/components/schemas/Schema_bc9fbfc32e2939087e1b877c2b51ce63f08c8cdfdcf7adca01505a0498ab5691"}],"description":"\nThe path on your FTP server where to search for files. Files are imported recursively from all sub-directories and sub-sub-directories (and so on) from this path.\n"},"port":{"$ref":"#/components/schemas/Schema_54b7efa14685483f18a4ce6218bf13b9d3acda9c88f6de43b469c7cae2b8ee42"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/ftp/import","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"user":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["path","robot"],"type":"object"},{"additionalProperties":false,"properties":{"credentials":{"$ref":"#/components/schemas/Schema_2ef8a6ef0566a139b8bf3bc13f536067802a8067f5e00428aa0b8d66372e2b61"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"host":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"password":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"path":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"default":"${unique_prefix}/${file.url_name}","description":"\nThe path at which the file is to be stored. This can contain any available [Assembly variables](/docs/topics/assembly-instructions/#assembly-variables).\n\nPlease note that you might need to include your homedir at the beginning of the path.\n"},"port":{"$ref":"#/components/schemas/Schema_54b7efa14685483f18a4ce6218bf13b9d3acda9c88f6de43b469c7cae2b8ee42"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/ftp/store","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"secure":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nDetermines whether to establish a secure connection to the FTP server using SSL.\n"},"ssl_url_template":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"default":"https://{HOST}/{PATH}","description":"\nThe SSL URL of the file in the result JSON. The following [Assembly variables](/docs/topics/assembly-instructions/#assembly-variables) are supported.\n"},"url_template":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"default":"https://{HOST}/{PATH}","description":"\nThe URL of the file in the result JSON. The following [Assembly variables](/docs/topics/assembly-instructions/#assembly-variables) are supported.\n"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"credentials":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nCreate a new [Google service account](https://cloud.google.com/storage/docs/authentication). Set its role to \"Storage Object Creator\". Choose \"JSON\" for the key file format and download it to your computer. You will need to upload this file when creating your <dfn>Template Credentials</dfn>.\n\nGo back to your Google credentials project and enable the \"Google Cloud Storage JSON API\" for it. Wait around ten minutes for the action to propagate through the Google network. Grab the project ID from the dropdown menu in the header bar on the Google site. You will also need it later on.\n\nNow you can set up the `storage.objects.create` and `storage.objects.delete` permissions. The latter is optional and only required if you intend to overwrite existing paths.\n\nTo do this from the Google Cloud console, navigate to \"IAM &amp; Admin\" and select \"Roles\". From here, click \"Create Role\", enter a name, set the role launch stage to _General availability,_ and set the permissions stated above.\n\nNext, go to Storage browser and select the ellipsis on your bucket to edit bucket permissions. From here, select \"Add Member\", enter your service account as a new member, and select your newly created role.\n\nThen, create your associated [Template Credentials](/c/template-credentials/) in your Transloadit account and use the name of your <dfn>Template Credentials</dfn> as this parameter's value.\n"},"files_per_page":{"$ref":"#/components/schemas/Schema_fb8110ac8e46afd357588fdb3f6e0487d14ea219ff23b237b83413793ce39f30"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"force_name":{"$ref":"#/components/schemas/Schema_e2d753e6b6111506a4565bdb18eccafd67d2027839616974639f5565d695fafd"},"ignore_errors":{"$ref":"#/components/schemas/Schema_03e4961eba9e9b422ce714f9224b8d47a380c80d27b8342a78ba4e2702feb4db"},"import_on_errors":{"$ref":"#/components/schemas/Schema_61808f40a326596fd9674ebbd91184b0a2e04f8c67eb49fdf9f9449580271ab8"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"next_page_token":{"$ref":"#/components/schemas/Schema_64187d2c5d197bbf686767819d827fe59b36816001ff849e7ed9a50ef83083d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"path":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},{"$ref":"#/components/schemas/Schema_bc9fbfc32e2939087e1b877c2b51ce63f08c8cdfdcf7adca01505a0498ab5691"}],"description":"\nThe path in your bucket to the specific file or directory. If the path points to a file, only this file will be imported. For example: `images/avatar.jpg`.\n\nIf it points to a directory, indicated by a trailing slash (`/`), then all files that are direct descendants of this directory will be imported. For example: `images/`.\n\nDirectories are **not** imported recursively. If you want to import files from subdirectories and sub-subdirectories, enable the `recursive` parameter.\n\nIf you want to import all files from the root directory, please use `/` as the value here. In this case, make sure all your objects belong to a path. If you have objects in the root of your bucket that aren't prefixed with `/`, you'll receive a 404 `GOOGLE_IMPORT_NOT_FOUND` error.\n\nYou can also use an array of path strings here to import multiple paths in the same <dfn>Robot</dfn>'s <dfn>Step</dfn>.\n"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"recursive":{"$ref":"#/components/schemas/Schema_0d5e623ef607f7e5a5d864341fe8b479821f0bbb4438d97a29e9da5ff1902f4e"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/google/import","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["path","robot"],"type":"object"},{"additionalProperties":false,"properties":{"acl":{"anyOf":[{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["authenticated-read","bucket-owner-full-control","private","project-private","public-read"],"type":"string"}]},{"type":"null"}],"default":"public-read","description":"\nThe permissions used for this file.\n"},"cache_control":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nThe `Cache-Control` header determines how long browsers are allowed to cache your object for. Values specified with this parameter will be added to the object's metadata under the `Cache-Control` header. For more information on valid values, take a look at the [official Google documentation](https://cloud.google.com/storage/docs/metadata#cache-control).\n"},"credentials":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"description":"\nCreate a new [Google service account](https://cloud.google.com/storage/docs/authentication). Set its role to \"Storage Object Creator\". Choose \"JSON\" for the key file format and download it to your computer. You will need to upload this file when creating your <dfn>Template Credentials</dfn>.\n\nGo back to your Google credentials project and enable the \"Google Cloud Storage JSON API\" for it. Wait around ten minutes for the action to propagate through the Google network. Grab the project ID from the dropdown menu in the header bar on the Google site. You will also need it later on.\n\nNow you can set up the `storage.objects.create` and `storage.objects.delete` permissions. The latter is optional and only required if you intend to overwrite existing paths.\n\nTo do this from the Google Cloud console, navigate to \"IAM &amp; Admin\" and select \"Roles\". From here, click \"Create Role\", enter a name, set the role launch stage to _General availability,_ and set the permissions stated above.\n\nNext, go to Storage browser and select the ellipsis on your bucket to edit bucket permissions. From here, select \"Add Member\", enter your service account as a new member, and select your newly created role.\n\nThen, create your associated [Template Credentials](/c/template-credentials/) in your Transloadit account and use the name of your <dfn>Template Credentials</dfn> as this parameter's value.\n","type":"string"}],"description":"\nCreate a new [Google service account](https://cloud.google.com/storage/docs/authentication). Set its role to \"Storage Object Creator\". Choose \"JSON\" for the key file format and download it to your computer. You will need to upload this file when creating your <dfn>Template Credentials</dfn>.\n\nGo back to your Google credentials project and enable the \"Google Cloud Storage JSON API\" for it. Wait around ten minutes for the action to propagate through the Google network. Grab the project ID from the dropdown menu in the header bar on the Google site. You will also need it later on.\n\nNow you can set up the `storage.objects.create` and `storage.objects.delete` permissions. The latter is optional and only required if you intend to overwrite existing paths.\n\nTo do this from the Google Cloud console, navigate to \"IAM &amp; Admin\" and select \"Roles\". From here, click \"Create Role\", enter a name, set the role launch stage to _General availability,_ and set the permissions stated above.\n\nNext, go to Storage browser and select the ellipsis on your bucket to edit bucket permissions. From here, select \"Add Member\", enter your service account as a new member, and select your newly created role.\n\nThen, create your associated [Template Credentials](/c/template-credentials/) in your Transloadit account and use the name of your <dfn>Template Credentials</dfn> as this parameter's value.\n"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"path":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"default":"${unique_prefix}/${file.url_name}","description":"\nThe path at which the file is to be stored. This may include any available [Assembly Variables](/docs/topics/assembly-instructions/#assembly-variables).\n"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_ca159bf04e5ff3004e76aa992115890f7a332c46f90913826648557e7fc86b82"},"robot":{"const":"/google/store","description":"\nThe URL to the exported file in your Google bucket will be presented in the Transloadit <dfn>Assembly Status</dfn> JSON. This <dfn>Robot</dfn> can also be used to export encoded files to Google's Firebase as demonstrated in [this blogpost](/blog/2018/12/2h-youtube-clone/).\n","type":"string"},"ssl_url_template":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"default":"https://{HOST}/{PATH}","description":"\nThe SSL URL of the file in the result JSON. The following [Assembly variables](/docs/topics/assembly-instructions/#assembly-variables) are supported.\n"},"url_template":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"default":"https://{HOST}/{PATH}","description":"\nThe URL of the file in the result JSON. This may include any of the following supported [Assembly variables](/docs/topics/assembly-instructions/#assembly-variables).\n"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["credentials","robot"],"type":"object"},{"additionalProperties":false,"properties":{"delay":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":0,"type":"integer"}],"default":0,"description":"\nThe delay (in milliseconds) applied to allow the page and all of its JavaScript to render before taking the screenshot.\n"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"format":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["jpeg","jpg","pdf","png"],"type":"string"}],"default":"png","description":"\nThe format of the resulting image.\n"},"fullpage":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":true,"description":"\nDetermines if a screenshot of the full page should be taken or not.\n\nIf set to `true`, the `height` parameter will not have any effect, as heights of websites vary. You can control the size of the resulting image somewhat, though, by setting the `width` parameter.\n\nIf set to `false`, an image will be cropped from the top of the webpage according to your `width` and `height` parameters.\n"},"headers":{"additionalProperties":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"description":"\nAn object containing optional headers that will be passed along with the original request to the website. For example, this parameter can be used to pass along an authorization token along with the request.\n","type":"object"},"height":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":1,"type":"integer"}],"description":"\nThe screen height that will be used, in pixels. By default this equals the length of the web page in pixels if `fullpage` is set to `true`. If `fullpage` is set to `false`, the height parameter takes effect and defaults to the value `768`.\n"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"omit_background":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nDetermines whether to preserve a transparent background in HTML pages. Useful if you're generating artwork in HTML that you want to overlay on e.g. a video.\n\nThe default of `false` fills transparent areas with a white background, for easier reading/printing.\n\nThis parameter is only used when `format` is not `pdf`.\n"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/html/convert","description":"\nA URL can be provided instead of an input HTML file, to capture a screenshot from the website referenced by the URL.\n\nUse [🤖/image/resize](/docs/robots/image-resize/) to resize or crop the screenshot as needed.\n","type":"string"},"url":{"anyOf":[{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},{"type":"null"}],"default":null,"description":"\nThe URL of the web page to be converted. Optional, as you can also upload/import HTML files and pass it to this <dfn>Robot</dfn>.\n"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"},"wait_until":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["commit","domcontentloaded","load","networkidle"],"type":"string"}],"default":"networkidle","description":"\nThe event to wait for before taking the screenshot. Used for loading Javascript, and images.\n\nSee [Playwright's documentation](https://playwright.dev/docs/api/class-page#page-wait-for-load-state) for more information.\n"},"width":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":1,"type":"integer"}],"default":1024,"description":"\nThe screen width that will be used, in pixels. Change this to change the  dimensions of the resulting image.\n"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"fail_fast":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nDisable the internal retry mechanism, and fail immediately if a resource can't be imported. This can be useful for performance critical applications.\n"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"force_name":{"$ref":"#/components/schemas/Schema_e2d753e6b6111506a4565bdb18eccafd67d2027839616974639f5565d695fafd"},"headers":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"$ref":"#/components/schemas/Schema_bc9fbfc32e2939087e1b877c2b51ce63f08c8cdfdcf7adca01505a0498ab5691"},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"items":{"additionalProperties":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"type":"object"},"type":"array"}]},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]}],"default":[],"description":"\nCustom headers to be sent for file import.\n\nThis is an empty array by default, such that no additional headers except the necessary ones (e.g. Host) are sent.\n\nHeaders can be specified as:\n- An array of strings in the format \"Header-Name: value\"\n- An array of objects with header names as keys and values as values\n- A JSON string that will be parsed into an object\n\nHeader names must be valid HTTP tokens. Header values may contain horizontal tabs, but other control characters, including carriage returns and line feeds, are rejected.\n\nIn an array of header strings, `\"Header-Name;\"` sends an empty header value. Each entry must be a literal header; reading headers from a file with `@filename` is not supported.\n\nThe same `headers` value is sent with every URL in this `/http/import` Step. If `url` is an\narray, `headers` is not matched to the URLs by array index. Use separate `/http/import` Steps\nwhen different URLs need different headers.\n"},"ignore_errors":{"$ref":"#/components/schemas/Schema_03e4961eba9e9b422ce714f9224b8d47a380c80d27b8342a78ba4e2702feb4db"},"import_on_errors":{"$ref":"#/components/schemas/Schema_61808f40a326596fd9674ebbd91184b0a2e04f8c67eb49fdf9f9449580271ab8"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"max_file_size":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"exclusiveMinimum":0,"type":"integer"}],"description":"\nMaximum allowed size in bytes for each imported file. If the remote server reports a larger file size, the import is rejected before the download starts. If the remote server does not report a size upfront, the download is aborted once this limit is exceeded.\n"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"range":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},{"$ref":"#/components/schemas/Schema_bc9fbfc32e2939087e1b877c2b51ce63f08c8cdfdcf7adca01505a0498ab5691"}],"description":"\nAllows you to specify one or more byte ranges to import from the file. The server must support range requests for this to work.\n\n**Single range**: Use a string like `\"0-99\"` to import bytes 0-99 (the first 100 bytes).\n\n**Multiple ranges**: Use an array like `[\"0-99\", \"200-299\"]` to import multiple separate ranges. The resulting file will contain all requested ranges concatenated together, with zero bytes (\\0) filling any gaps between non-contiguous ranges.\n\n**Range formats**:\n- `\"0-99\"`: Bytes 0 through 99 (inclusive)\n- `\"100-199\"`: Bytes 100 through 199 (inclusive)\n- `\"-100\"`: The last 100 bytes of the file\n\n**Important notes**:\n- The server must support HTTP range requests (respond with 206 Partial Content)\n- If the server doesn't support range requests, the entire file will be imported instead\n- Overlapping ranges are allowed and will be included as requested\n- The resulting file size will be the highest byte position requested, with gaps filled with zero bytes\n"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"return_file_stubs":{"$ref":"#/components/schemas/Schema_7d0953e667a4e84601b14c25ec998d74076b0afded4b1fe7182cba7b5a1062f7"},"robot":{"const":"/http/import","description":"\nThe result of this <dfn>Robot</dfn> will carry a field `import_url` in its metadata, which references the URL from which it was imported. Further conversion results that use this file will also carry this `import_url` field. This allows you to match conversion results with the original import URL that you used.\n\nThis <dfn>Robot</dfn> knows to interpret links to files on these services:\n\n- Dropbox\n- Google Drive\n- Google Docs\n- OneDrive\n\nInstead of downloading the HTML page previewing the file, the actual file itself will be imported.\n","type":"string"},"url":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^[Hh][Tt][Tt][Pp][Ss]?:\\/\\/(?:[^ ]|[ ])","type":"string","x-transloadit-input-fidelity":"conservative"}]},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"items":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^[Hh][Tt][Tt][Pp][Ss]?:\\/\\/(?:[^ ]|[ ])","type":"string","x-transloadit-input-fidelity":"conservative"}]},"type":"array"}]}],"description":"\nThe URL from which the file to be imported can be retrieved.\n\nHTTPS URLs must present a valid certificate trusted by Transloadit and matching the requested hostname. Self-signed, expired, or hostname-mismatched certificates cause `HTTP_IMPORT_FAILURE`.\n\nYou can also specify an array of URLs or a string of `|` delimited URLs to import several files at once. Please also check the `url_delimiter` parameter for that.\n"},"url_delimiter":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"default":"|","description":"\nProvides the delimiter that is used to split the URLs in your `url` parameter value.\n"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot","url"],"type":"object"},{"additionalProperties":false,"properties":{"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"headers":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"$ref":"#/components/schemas/Schema_bc9fbfc32e2939087e1b877c2b51ce63f08c8cdfdcf7adca01505a0498ab5691"},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"items":{"$ref":"#/components/schemas/Schema_8bef30e845687818c225b81030d97335d9454464b4970117e2538a5bf473186e"},"type":"array"}]},{"$ref":"#/components/schemas/Schema_8bef30e845687818c225b81030d97335d9454464b4970117e2538a5bf473186e"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]}],"default":[],"description":"\nCustom request headers.\n\nHeaders can be specified as an array of strings in the format `\"Header-Name: value\"`, an array\nof objects, an object map, or a JSON string that will be parsed into an object/array.\n\nHeader names must be valid HTTP tokens. Header values may contain horizontal tabs, but other control characters, including carriage returns and line feeds, are rejected.\n\nIn an array of header strings, `\"Header-Name;\"` sends an empty header value. Each entry must be a literal header; reading headers from a file with `@filename` is not supported.\n"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"max_response_size":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"exclusiveMinimum":0,"maximum":10485760,"type":"integer"}],"default":1048576,"description":"\nMaximum accepted response size in bytes. The response should normally be a small JSON document.\n"},"max_result_file_size":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"exclusiveMinimum":0,"maximum":5368709120,"type":"integer"}],"default":104857600,"description":"\nMaximum allowed size in bytes for each result file returned by URL. If the remote server reports a\nlarger file size, the result download is rejected before it starts. If the remote server does not\nreport a size upfront, the download is aborted once this limit is exceeded.\n"},"max_result_files":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"exclusiveMinimum":0,"maximum":100,"type":"integer"}],"default":10,"description":"\nMaximum number of files that the endpoint may return.\n"},"method":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["DELETE","GET","PATCH","POST","PUT"],"type":"string"}],"default":"POST","description":"\nHTTP method to use for the request.\n"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"payload":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["file","files","metadata","none"],"type":"string"}],"default":"none","description":"\nControls what is sent to your endpoint.\n\n- `none`: Send no request body.\n- `metadata`: Send a JSON body with Assembly metadata, fields, the previous Step, and file metadata.\n- `file`: Send multipart form data with a `payload` JSON field and the first input file as a\n  `file` part.\n- `files`: Send multipart form data with a `payload` JSON field and all input files as repeated\n  `files[]` parts. Useful with `bundle_steps`.\n\nThe `payload` JSON object contains `assembly`, `fields`, `previous_step`, `file`, and\n`files`. `file` is the first input file’s metadata or `null`; `files` is an array of input\nfile metadata.\n"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"result_download_timeout":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"exclusiveMinimum":0,"maximum":600,"type":"integer"}],"default":120,"description":"\nMaximum number of seconds to spend downloading each result file returned by URL.\n"},"robot":{"const":"/http/request","description":"\nCalls an HTTP endpoint during the Assembly and expects optional JSON describing zero or more input\nfiles or result-file URLs to emit from this Step.\n\nYour endpoint must return a 2xx response. An empty body, `[]`, or `{ \"files\": [] }` means this\nStep emits no files. You can also return one file object, an array of file objects, or\n`{ \"files\": [...] }` / `{ \"files\": { \"name\": {...} } }`. Returned file objects must include\neither a `path` that matches one of the input file paths sent to your endpoint, or an HTTP(S)\n`url` that Transloadit downloads and emits as a new result file.\n","type":"string"},"timeout":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"exclusiveMinimum":0,"maximum":300,"type":"integer"}],"default":60,"description":"\nMaximum number of seconds to wait for the HTTP request.\n\nThe effective timeout is the lower of this value and Transloadit’s server-side cap. The cap is 30\nseconds plus 1 second per MiB sent to your endpoint.\n"},"url":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"description":"\nThe HTTP or HTTPS endpoint to call.\n","pattern":"^[Hh][Tt][Tt][Pp][Ss]?:\\/\\/(?:[^ ]|[ ])","type":"string","x-transloadit-input-fidelity":"conservative"}],"description":"\nThe HTTP or HTTPS endpoint to call.\n"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot","url"],"type":"object"},{"additionalProperties":false,"properties":{"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"format":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["gif","png","webp"],"type":"string"}],"default":"png","description":"Format of the generated image. Defaults to PNG when not provided."},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"model":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"Provider-specific model to use for removing the background. Mostly intended for testing and evaluation."},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"provider":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["auto","fal","replicate","transloadit"],"type":"string"}],"default":"auto","description":"Chooses the best provider based on your request.\n\nSelect a specific provider to override automatic selection."},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/image/bgremove","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"select":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["background","foreground"],"type":"string"}],"description":"Region to select and keep in the image. The other region is removed."},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"categories":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"items":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["all","artwork","brand_logo","stock_photo","watermarked"],"type":"string"}]},"minItems":1,"type":"array"}],"default":["all"],"description":"\nWhich categories of copyrighted content to detect.\n\n- `\"stock_photo\"` — Known stock photography (Shutterstock, Getty, Adobe Stock, etc.)\n- `\"brand_logo\"` — Registered brand logos and trademarks\n- `\"artwork\"` — Famous artworks and illustrations\n- `\"watermarked\"` — Images containing visible watermarks\n- `\"all\"` — All categories\n"},"confidence_threshold":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"maximum":100,"minimum":0,"type":"number"}],"default":80,"description":"\nMinimum confidence percentage (0–100) for a match to be considered a copyright concern. Matches below this threshold are still returned in results but not flagged. Higher values reduce false positives but may miss some matches.\n"},"error_msg":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"default":"One of your files matched a known stock photo or copyrighted work","description":"\nThe error message shown to your users (such as by Uppy) when a file is declined and `error_on_decline` is set to `true`.\n"},"error_on_decline":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nIf set to `true` and one or more files match a known stock photo or copyrighted work (above the `confidence_threshold`), the <dfn>Assembly</dfn> will be stopped and marked with an error. Works the same way as `/file/virusscan`'s `error_on_decline`.\n"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"format":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["json","meta"],"type":"string"}],"default":"json","description":"\nIn what format to return the detection results.\n\n- `\"json\"` returns a JSON file with full match details including `licenses[]`, plus summary fields `flagged`, `max_confidence`, and `confidence_threshold`.\n- `\"meta\"` does not return a file, but stores the same data object (including `licenses[]`, `flagged`, `max_confidence`, and `confidence_threshold`) inside Transloadit's file object (under `${file.meta.copyright}`) that's passed around between encoding <dfn>Steps</dfn>, so that you can use the values to filter on them, etc.\n"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/image/copyrightdetect","description":"\nDetects known stock photos, brand logos, and watermarked images in uploaded files by performing reverse image lookups against web databases. This is best understood as \"stock photo detection\" — it identifies whether an uploaded image matches a known copyrighted work in indexed databases (Getty Images, Shutterstock, Adobe Stock, etc.).\n\nReturns a `licenses[]` array with match details including source collection, license type, confidence scores, and source URLs. Can optionally halt the <dfn>Assembly</dfn> when a known copyrighted work is detected, similar to how `/file/virusscan` handles malicious files.\n\nThis <dfn>Robot</dfn> provides a **risk signal**, not a legal determination. A match means the image was found in a stock photo or rights-managed database — it does not mean the user lacks a valid license.\n","type":"string"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"explicit_descriptions":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nWhether to return only explicit or only non-explicit descriptions of the provided image. Explicit descriptions include labels for NSFW content (nudity, violence, etc). If set to `false`, only non-explicit descriptions (such as human or chair) will be returned. If set to `true`, only explicit descriptions will be returned.\n\nThe possible descriptions depend on the chosen provider. The list of labels from AWS can be found [in their documentation](https://docs.aws.amazon.com/rekognition/latest/dg/moderation.html#moderation-api). GCP labels the image based on five categories, as described [in their documentation](https://cloud.google.com/vision/docs/detecting-safe-search).\n\nFor an example of how to automatically reject NSFW content and malware, please check out this [blog post](/blog/2022/07/deny-image-uploads/).\n"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"format":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["json","meta","text"],"type":"string"}],"default":"json","description":"\nIn what format to return the descriptions.\n\n- `\"json\"` returns a JSON file.\n- `\"meta\"` does not return a file, but stores the data inside Transloadit's file object (under `${file.meta.descriptions}`) that's passed around between encoding <dfn>Steps</dfn>, so that you can use the values to burn the data into videos, filter on them, etc.\n"},"granularity":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["full","list"],"type":"string"}],"default":"full","description":"\nWhether to return a full response (`\"full\"`) including confidence percentages for each found label, or just a flat list of labels (`\"list\"`).\n"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"provider":{"$ref":"#/components/schemas/Schema_ca72aa2ec7c776cc9d7892a1460fd032ef5b94b1d7c9ffa090d548e7d5360c4e"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/image/describe","description":"\nYou can use the labels that we return in your application to automatically classify images. You can also pass the labels down to other <dfn>Robots</dfn> to filter images that contain (or do not contain) certain content.\n","type":"string"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"ai_preset":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["face_restore","restore"],"type":"string"}],"default":"restore","description":"\nAI enhancement preset used when `engine` is set to `\"ai\"`:\n- `restore` — General image restoration.\n- `face_restore` — Portrait-focused face restoration.\n\nAI mode is not intended for image upscaling. For dedicated upscaling, use [🤖/image/upscale](/docs/robots/image-upscale/).\n"},"denoise":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"maximum":10,"minimum":0,"type":"number"}],"default":0,"description":"\nNoise reduction strength (`0` = none, `10` = maximum). Useful for high-ISO photos.\n"},"engine":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["ai","classic"],"type":"string"}],"default":"classic","description":"\nEnhancement engine to use.\n\n- `\"classic\"` uses ImageMagick-based adjustments and presets.\n- `\"ai\"` uses AI restoration models on Replicate (typically higher latency and cost than classic mode).\n"},"enhance":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["auto","auto_aggressive","auto_gentle","none"],"type":"string"}],"default":"auto","description":"\nThe auto-enhancement mode. `\"auto\"` applies balanced auto-levels, gamma correction, and subtle sharpening. `\"auto_gentle\"` is more conservative (good for already-decent photos). `\"auto_aggressive\"` applies stronger normalization and contrast. `\"none\"` skips auto-enhance (useful when only applying a preset filter).\n"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"imagemagick_stack":{"$ref":"#/components/schemas/Schema_56b30d86ea31500bf844b3c857e7e1087b090f38feb9275f6991048203c04727"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"preset":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["bw_classic","bw_dramatic","cinematic","cool","fade","golden_hour","matte","noir","none","pastel","teal_orange","vintage","vivid","warm"],"type":"string"}],"default":"none","description":"\nA named color grading preset to apply. Applied after auto-enhancement. Use `\"none\"` to skip preset application.\n\nAvailable presets:\n- `warm` — Warm golden tones\n- `cool` — Cool blue-shifted tones\n- `vintage` — Faded retro look with warm shadows\n- `vivid` — Boosted saturation and contrast\n- `matte` — Lifted blacks for a matte film look\n- `cinematic` — Teal-and-orange cinema grading\n- `golden_hour` — Warm sunset-like glow\n- `bw_dramatic` — High-contrast black and white\n- `bw_classic` — Classic film black and white\n- `noir` — Dark, moody black and white\n- `fade` — Washed-out faded look\n- `pastel` — Soft, desaturated pastel tones\n- `teal_orange` — Complementary teal shadows and orange highlights\n"},"quality":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"maximum":100,"minimum":1,"type":"integer"}],"default":92,"description":"\nQuality of the output image. A value between `1` and `100`. Defaults to `92`.\n"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/image/enhance","description":"\nWith this <dfn>Robot</dfn> you can automatically enhance images with one click — adjusting levels, contrast, saturation, sharpness, and white balance to produce an optimally balanced image. It also supports a library of named photo filter presets (e.g. `warm`, `cool`, `vintage`, `vivid`) that apply curated color grading and tone adjustments.\n\nIt works well together with [🤖/image/resize](/docs/robots/image-resize/) — you can enhance first, then resize, or vice versa.\n\nThis <dfn>Robot</dfn> accepts all image types supported by ImageMagick and passes unsupported types through unchanged. `engine: \"classic\"` uses `enhance`, `preset`, `sharpen`, and `denoise`, while `engine: \"ai\"` uses `ai_preset` and `quality`; classic controls are ignored in AI mode. Output keeps the original file extension when possible. In AI mode, if the target extension is not writable by the selected `imagemagick_stack`, the file is passed through unchanged.\n","type":"string"},"sharpen":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"maximum":10,"minimum":0,"type":"number"}],"default":0,"description":"\nAdditional sharpening amount (`0` = none, `10` = maximum). The `\"auto\"` enhance mode already applies subtle sharpening; this parameter adds more on top.\n"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"crop":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nDetermine if the detected faces should be extracted. If this option is set to `false`, then the <dfn>Robot</dfn> returns the input image again, but with the coordinates of all detected faces attached to `file.meta.faces` in the result JSON. If this parameter is set to `true`, the <dfn>Robot</dfn> will output all detected faces as images.\n"},"crop_padding":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^[0-9]+(px|%)$","type":"string"}],"default":"5px","description":"\nSpecifies how much padding is added to the extracted face images if `crop` is set to `true`. Values can be in `px` (pixels) or `%` (percentage of the width and height of the particular face image).\n"},"faces":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["each","group","max-confidence","max-size"],"type":"string"}]},{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"type":"integer"}]}],"default":"each","description":"\nDetermines which of the detected faces should be returned. Valid values are:\n\n- `\"each\"` — each face is returned individually.\n- `\"max-confidence\"` — only the face with the highest confidence value is returned.\n- `\"max-size\"` — only the face with the largest area is returned.\n- `\"group\"` — all detected faces are grouped together into one rectangle that contains all faces.\n- any integer — the faces are sorted by their top-left corner and the integer determines the index of the returned face. Be aware the values are zero-indexed, meaning that `faces: 0` will return the first face. If no face for a given index exists, no output is produced.\n\nFor the following examples, the input image is:\n\n![](/assets/images/abbas-malek-hosseini-22NnY93qaOk-unsplash.jpg)\n\n<br />\n\n`faces: \"each\"` applied:\n\n![](/assets/images/abbas-malek-hosseini-22NnY93qaOk-face-0.jpg)\n![](/assets/images/abbas-malek-hosseini-22NnY93qaOk-face-1.jpg)\n\n<br />\n\n`faces: \"max-confidence\"` applied:\n\n![](/assets/images/abbas-malek-hosseini-22NnY93qaOk-face-1.jpg)\n\n<br />\n\n`faces: \"max-size\"` applied:\n\n![](/assets/images/abbas-malek-hosseini-22NnY93qaOk-face-1.jpg)\n\n<br />\n\n`faces: \"group\"` applied:\n\n![](/assets/images/abbas-malek-hosseini-22NnY93qaOk-face-group.jpg)\n\n<br />\n\n`faces: 0` applied:\n\n![](/assets/images/abbas-malek-hosseini-22NnY93qaOk-face-0.jpg)\n"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"format":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["jpg","png","preserve","tiff"],"type":"string"}],"default":"preserve","description":"\nDetermines the output format of the extracted face images if `crop` is set to `true`.\n\nThe default value `\"preserve\"` means that the input image format is re-used.\n"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"min_confidence":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"maximum":100,"minimum":0,"type":"integer"}],"default":70,"description":"\nSpecifies the minimum confidence that a detected face must have. Only faces which have a higher confidence value than this threshold will be included in the result.\n"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"provider":{"$ref":"#/components/schemas/Schema_ca72aa2ec7c776cc9d7892a1460fd032ef5b94b1d7c9ffa090d548e7d5360c4e"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/image/facedetect","description":"\nYou can specify padding around the extracted faces, tailoring the output for your needs.\n\nThis <dfn>Robot</dfn> works well together with [🤖/image/resize](/docs/robots/image-resize/) to bring the full power of resized and optimized images to your website or app.\n\n<div class=\"alert alert-note\">\n\n**How to improve the accuracy:**\n\n- Ensure that your pictures have the correct orientation. This <dfn>Robot</dfn> achieves the best performance when the faces in the image are oriented upright and not rotated.\n- If the <dfn>Robot</dfn> detects objects other than a face, you can use `\"faces\": \"max-confidence\"` within your <dfn>Template</dfn> for selecting only the detection with the highest confidence.\n- The number of returned detections can also be controlled using the `min_confidence` parameter. Increasing its value will yield less results but each with a higher confidence. Decreasing the value, on the other hand, will provide more results but may also include objects other than faces.\n\n</div>\n","type":"string"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"aspect_ratio":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"Requested output aspect ratio. For Google models, width/height can also be used and orientation is derived automatically when aspect_ratio is omitted."},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"format":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["gif","jpeg","jpg","png","svg","webp"],"type":"string"}],"description":"Output format. Defaults depend on model: png for Google and OpenAI models, svg for recraft-v3, jpeg for others. Google models currently return PNG only."},"height":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"type":"number"}],"description":"Requested output height in pixels (mainly used by Google and OpenAI image models)."},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"model":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"The AI model to use. Defaults to `openai/gpt-image-2.5-flare`. Supported models include `flux-1.1-pro-ultra`, `flux-schnell`, `recraft-v3`, `google/nano-banana`, `google/nano-banana-2`, `google/nano-banana-pro`, `openai/gpt-image-2`, `openai/gpt-image-2.5-flare`, `openai/gpt-image-2.5-sunburst`, and `stability-ai/stable-diffusion-inpainting`. The legacy alias `gpt-image-2` is also accepted for backwards compatibility."},"num_outputs":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"maximum":10,"minimum":1,"type":"integer"}],"description":"Number of output variants to generate (1-10)."},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"prompt":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"description":"Prompt describing the desired image. For inpainting, describe what should appear in the masked/transparent region and that the rest should stay unchanged.","type":"string"}],"description":"Prompt describing the desired image. For inpainting, describe what should appear in the masked/transparent region and that the rest should stay unchanged."},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/image/generate","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"seed":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"type":"number"}],"description":"Seed for the random number generator. For Google models, use an integer from 0 to 2147483647. Each output increments the seed by 1, so the final output’s seed must also fit this range. A seed does not guarantee identical images."},"style":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"Style of the generated image."},"use":{"anyOf":[{"$ref":"#/components/schemas/Schema_dce1096fff6767b5f477f31f13c4e33289b9e9f3a0fd3df2000b731877c8d4bb"},{"$ref":"#/components/schemas/Schema_93f6798a65ce5f82f9f24e57970692d0637744d29ed7af56ed96d02c14a59f79"}],"description":"\nSpecifies which Step(s) to use as input.\n\nFor inpainting, provide both the source image and mask through `use`, typically with:\n\n```json\n{\n  \"use\": [\n    { \"name\": \":original\", \"as\": \"image\" },\n    { \"name\": \":original\", \"as\": \"mask\" }\n  ]\n}\n```\n\nBest practice:\n- Tag source and mask inputs explicitly using `as` (or semantic upload field names)\n- Keep the prompt focused on what should change in the masked/transparent region\n- Leave the model choice to the robot defaults unless you have a specific need\n"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"},"width":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"type":"number"}],"description":"Requested output width in pixels (mainly used by Google and OpenAI image models)."}},"required":["prompt","robot"],"type":"object"},{"additionalProperties":false,"properties":{"face_enhance":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"Enable face enhancement for better face restoration. Defaults to false."},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"model":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["nightmareai/real-esrgan","sczhou/codeformer","tencentarc/gfpgan"],"type":"string"}],"default":"nightmareai/real-esrgan","description":"The AI model to use for image upscaling. Defaults to nightmareai/real-esrgan."},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/image/upscale","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"scale":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":2,"type":"number"}]},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":4,"type":"number"}]}],"default":2,"description":"Upscale factor. Defaults to 2."},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"adaptive_filtering":{"$ref":"#/components/schemas/Schema_7259bfd3c73979776529646b342688ee35f3b84b7549790c20f4249298a7c9b9"},"background":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^#?[0-9a-fA-F]{3}([0-9a-fA-F]{3})?$","type":"string"}]},{"$ref":"#/components/schemas/Schema_894ca51bc217ffa7c8529a59e38dd1724955749efb7587c16084f133dcc1d688"}],"default":"#fff","description":"\nEither the hexadecimal code or [name](https://www.imagemagick.org/script/color.php#color_names) of the color used to fill the background (only shown with a border > 1).\n\nBy default, the background of transparent images is changed to white. Set to `none` or `transparent` for a transparent canvas — set `format` to `png` or `webp` to preserve alpha.\n\nFor details about how to preserve transparency across all image types, see [this demo](/demos/image-processing/properly-preserve-transparency-across-all-image-types/).\n"},"border":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"type":"integer"}],"default":0,"description":"\nAn integer value which defines the gap between images on the spritesheet.\n\nA value of `10` would cause the images to have the largest gap between them, while a value of `1` would place the images side-by-side.\n\nWhen `effect` is `polaroid-stack`, this value is instead used as canvas padding so the outermost photos keep that many pixels of distance from the edge.\n\nWhen `effect` is `mosaic`, this value is used both as the outer canvas padding and as the gutter width between neighboring tiles.\n"},"cell_height":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":1,"type":"integer"}],"description":"\nUniform height for each grid cell in pixels. Only applies when `direction` is `grid`.\n\nImages are resized to fit within the cell while preserving aspect ratio.\n"},"cell_width":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":1,"type":"integer"}],"description":"\nUniform width for each grid cell in pixels. Only applies when `direction` is `grid`.\n\nImages are resized to fit within the cell while preserving aspect ratio.\n"},"columns":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":1,"type":"integer"}],"description":"\nNumber of columns in the grid layout. Only applies when `direction` is `grid`.\n\nIf omitted, columns are calculated automatically from the number of inputs and requested rows.\n"},"coverage":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"maximum":3,"minimum":0.5,"type":"number"}],"description":"\nArea-coverage multiplier for the `polaroid-stack` effect. Controls how large each polaroid is relative to the canvas and consequently how much of the canvas is covered by photos.\n\nThe default of `1.5` leaves a subtle beige border along some edges. Use `2.0`–`2.5` for edge-to-edge coverage (photos overlap more). Values below `1.0` produce smaller, more widely spaced polaroids.\n\nHas no effect on the `mosaic` style or on plain spritesheets.\n"},"direction":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["grid","horizontal","vertical"],"type":"string"}],"default":"horizontal","description":"\nSpecifies the direction which the images are displayed.\n\nUse `grid` to arrange inputs left-to-right and top-to-bottom.\n\nOnly applies to the default spritesheet layout. Ignored when `effect` is set to `polaroid-stack` or `mosaic`, as those effects use their own layout algorithms.\n"},"effect":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["mosaic","polaroid-stack"],"type":"string"}],"description":"\nApplies a styled collage layout instead of a plain horizontal or vertical spritesheet.\n\nCurrently supports `polaroid-stack`, which renders the inputs as overlapping instant photos on a canvas, and `mosaic`, which builds a justified tiled collage.\n"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"format":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["jpg","png","webp"],"type":"string"}],"default":"png","description":"The output format for the modified image."},"height":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"exclusiveMinimum":0,"type":"integer"}],"description":"\nThe output canvas height in pixels.\n\nThis is mainly used by styled effects such as `polaroid-stack` and `mosaic`.\n"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"quality":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"maximum":100,"minimum":1,"type":"integer"}],"default":100,"description":"\nControls the image compression for JPG, PNG, and WebP images. Please also take a look at [🤖/image/optimize](/docs/robots/image-optimize/).\n"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/image/merge","description":"\nThe final result will be a spritesheet, with the images displayed horizontally, vertically, or in a grid layout.\n\nIt's recommended to use this Robot with\n[🤖/image/resize](/docs/robots/image-resize/) so your images are of a\nsimilar size before merging them.\n","type":"string"},"rows":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":1,"type":"integer"}],"description":"\nNumber of rows in the grid layout. Only applies when `direction` is `grid`.\n\nIf omitted, rows are calculated automatically from the number of inputs and requested columns.\n"},"seed":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"type":"integer"}],"description":"\nOptional deterministic seed used by styled effects such as `polaroid-stack` and `mosaic`.\n"},"shuffle":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nWhether styled effects such as `polaroid-stack` and `mosaic` may shuffle the input order before laying out the canvas.\n"},"sort_by":{"$ref":"#/components/schemas/Schema_a529048b2ed32b0125d678e158645220b42861e2c3e5bf89f766bec34234c3e6"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"},"width":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"exclusiveMinimum":0,"type":"integer"}],"description":"\nThe output canvas width in pixels.\n\nThis is mainly used by styled effects such as `polaroid-stack` and `mosaic`.\n"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"format":{"$ref":"#/components/schemas/Schema_446b14af1ebe5ec174a22cdaf673cc8a9d274ffbf3ec624c203ffd7addeaa9ea"},"granularity":{"$ref":"#/components/schemas/Schema_c242020da3b98956a79933f680e24b9f780508f9223377ee11ef1e890ba21ca0"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"provider":{"$ref":"#/components/schemas/Schema_9078af0c8fa2eacba340b713a60073b4ab7866926df6574f217706a3d1e36cfd"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/image/ocr","description":"\nWith this <dfn>Robot</dfn> you can detect and extract text from images using optical character recognition (OCR).\n\nFor example, you can use the results to obtain the content of traffic signs, name tags, package labels and many more. You can also pass the text down to other <dfn>Robots</dfn> to filter images that contain (or do not contain) certain phrases. For images of dense documents, results may vary and be less accurate than for small pieces of text in photos.\n","type":"string"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"fix_breaking_images":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":true,"description":"\nIf set to `true` this parameter tries to fix images that would otherwise make the underlying tool error out and thereby break your <dfn>Assemblies</dfn>. This can sometimes result in a larger file size, though.\n"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"lossy":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nWhen set to `false` (the default), only lossless PNG optimizers are used, disabling pngquant to preserve color accuracy.\n\nWhen set to `true`, both lossy and lossless PNG optimizers compete and the smallest result wins. This allows pngquant, a lossy compressor that reduces PNGs to a 256-color palette, which may cause noticeable color shifts in images with rich color palettes, subtle gradients, or brand-specific colors.\n\n> [!Note]\n> This parameter only affects PNG optimization. JPEG, GIF, WebP, and SVG optimization is unaffected.\n"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"preserve_meta_data":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":true,"description":"\nSpecifies if the image's metadata should be preserved during the optimization, or not. If it is not preserved, the file size is even further reduced. But be aware that this could strip a photographer's copyright information, which for obvious reasons can be frowned upon.\n"},"priority":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["compression-ratio","conversion-speed"],"type":"string"}],"default":"compression-ratio","description":"\nProvides different algorithms for better or worse compression for your images, but that run slower or faster. The value `\"conversion-speed\"` will result in an average compression ratio of 18%. `\"compression-ratio\"` will result in an average compression ratio of 31%.\n"},"progressive":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nInterlaces the image if set to `true`, which makes the result image load progressively in browsers. Instead of rendering the image from top to bottom, the browser will first show a low-res blurry version of the image which is then quickly replaced with the actual image as the data arrives. This greatly increases the user experience, but comes at a loss of about 10% of the file size reduction.\n"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/image/optimize","description":"\nWith this <dfn>Robot</dfn> it's possible to reduce the file size of your JPEG, PNG, GIF, WEBP and SVG images by up to 80% for big images and 65% for small to medium sized ones — while keeping their original quality!\n\nThis <dfn>Robot</dfn> enables you to lower your storage and bandwidth costs, and improves your user experience and monetization by reducing the load time of image-intensive web pages.\n\nIt works well together with [🤖/image/resize](/docs/robots/image-resize/) to bring the full power of resized and optimized images to your website or app.\n\n> [!Note]\n> This <dfn>Robot</dfn> accepts all image types and will just pass on unsupported image types unoptimized, including JPEG XL (`.jxl`) images when no smaller optimized result can be produced. Hence, there is no need to set up [🤖/file/filter](/docs/robots/file-filter/) workflows for this.\n\n> [!Note]\n> PNG optimization uses only lossless (optipng) compressors by default. To also enable lossy compression (pngquant), set `lossy: true`. When enabled, both lossy and lossless compressors compete and the smallest result wins, which may cause color shifts in some images.\n","type":"string"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"adaptive_filtering":{"$ref":"#/components/schemas/Schema_7259bfd3c73979776529646b342688ee35f3b84b7549790c20f4249298a7c9b9"},"alpha":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["Activate","Background","Copy","Deactivate","Extract","Off","On","Opaque","Remove","Set","Shape","Transparent"],"type":"string"}],"description":"\nGives control of the alpha/matte channel of an image.\n"},"background":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^#?[0-9a-fA-F]{3}([0-9a-fA-F]{3})?$","type":"string"}]},{"$ref":"#/components/schemas/Schema_894ca51bc217ffa7c8529a59e38dd1724955749efb7587c16084f133dcc1d688"}],"default":"#FFFFFF","description":"\nEither the hexadecimal code or [name](https://www.imagemagick.org/script/color.php#color_names) of the color used to fill the background (used for the `pad` resize strategy).\n\n**Note:** By default, the background of transparent images is changed to white. To preserve transparency, set `\"background\"` to `\"none\"`.\n"},"blur":{"anyOf":[{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^[0-9]+(\\.[0-9]+)?x[0-9]+(\\.[0-9]+)?$","type":"string"}]},{"type":"null"}],"default":null,"description":"\nSpecifies gaussian blur, using a value with the form `{radius}x{sigma}`. The radius value specifies the size of area the operator should look at when spreading pixels, and should typically be either `\"0\"` or at least two times the sigma value. The sigma value is an approximation of how many pixels the image is \"spread\"; think of it as the size of the brush used to blur the image. This number is a floating point value, enabling small values like `\"0.5\"` to be used.\n"},"blur_regions":{"anyOf":[{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"items":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"additionalProperties":true,"properties":{"height":{"$ref":"#/components/schemas/Schema_19320f624651bd3d89969ac7dee179d65c506ec5417870772e7486f7753c1d74"},"width":{"$ref":"#/components/schemas/Schema_19320f624651bd3d89969ac7dee179d65c506ec5417870772e7486f7753c1d74"},"x":{"$ref":"#/components/schemas/Schema_19320f624651bd3d89969ac7dee179d65c506ec5417870772e7486f7753c1d74"},"y":{"$ref":"#/components/schemas/Schema_19320f624651bd3d89969ac7dee179d65c506ec5417870772e7486f7753c1d74"}},"required":["height","width","x","y"],"type":"object"}]},"type":"array"}]},{"type":"null"}],"default":null,"description":"\nSpecifies an array of ellipse objects that should be blurred on the image. Each object has the following keys: `x`, `y`, `width`, `height`.  If `blur_regions` has a value, then the `blur` parameter is used as the strength of the blur for each region.\n"},"brightness":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":0,"type":"number"}],"default":1,"description":"\nIncreases or decreases the brightness of the image by using a multiplier. For example `1.5` would increase the brightness by 50%, and `0.75` would decrease the brightness by 25%.\n"},"clip":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},{"$ref":"#/components/schemas/Schema_a8213ce4c995e2d44b094b3ea909eddf983764d183e2903635e64aa32732520a"}],"default":false,"description":"\nApply the clipping path to other operations in the resize job, if one is present. If set to `true`, it will automatically take the first clipping path. If set to a String it finds a clipping path by that name.\n"},"clut":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nApplies a Color Look-Up Table (CLUT) image to remap the colors of the input image using ImageMagick's `-clut` operator. When enabled, a second input file must be supplied via the `use` parameter with `\"as\": \"clut\"`.\n\nThis operation currently runs via ImageMagick convert stack (not image-resizer daemon), even if `stack: \"daemon\"` is requested.\n\nWhen using multiple inputs, you should provide your primary image as `\"as\": \"base\"`. If no explicit `base` alias is set, Transloadit will use the first non-auxiliary input (a file that is not tagged as `watermark` or `clut`) as the primary image.\n\nThe CLUT image acts as a gradient map: each pixel's color channels in the input are replaced with the corresponding color from the CLUT image, based on channel intensity. This is a powerful color grading technique widely used in photography and design workflows.\n\nExample:\n\n```json\n{\n  \"steps\": {\n    \":original\": {\n      \"robot\": \"/upload/handle\"\n    },\n    \"lut_image\": {\n      \"robot\": \"/upload/handle\"\n    },\n    \"color_graded\": {\n      \"robot\": \"/image/resize\",\n      \"use\": {\n        \"steps\": [\n          { \"name\": \":original\", \"as\": \"base\" },\n          { \"name\": \"lut_image\", \"as\": \"clut\" }\n        ]\n      },\n      \"clut\": true\n    }\n  }\n}\n```\n"},"colorspace":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["CMY","CMYK","Gray","HCL","HCLp","HSB","HSI","HSL","HSV","HWB","Jzazbz","LCHab","LCHuv","LMS","Lab","Log","Luv","OHTA","OkLCH","OkLab","RGB","Rec601YCbCr","Rec709YCbCr","Transparent","Undefined","XYZ","YCC","YCbCr","YDbDr","YIQ","YPbPr","YUV","sRGB","scRGB","xyY"],"type":"string"}],"description":"\nSets the image colorspace. For details about the available values, see the [ImageMagick documentation](https://www.imagemagick.org/script/command-line-options.php#colorspace). Please note that if you were using `\"RGB\"`, we recommend using `\"sRGB\"` instead as of 2014-02-04. ImageMagick might try to find the most efficient `colorspace` based on the color of an image, and default to e.g. `\"Gray\"`. To force colors, you might have to use this parameter in combination with `type: \"TrueColor\"`.\n"},"compress":{"anyOf":[{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["BZip","Fax","Group4","JPEG","JPEG2000","LZW","Lossless","None","RLE","Zip"],"type":"string"}]},{"type":"null"}],"default":null,"description":"\nSpecifies pixel compression for when the image is written. Compression is disabled by default.\n\nPlease also take a look at [🤖/image/optimize](/docs/robots/image-optimize/).\n"},"contrast":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"maximum":2,"minimum":0,"type":"number"}],"default":1,"description":"\nAdjusts the contrast of the image. A value of `1` produces no change. Values below `1` decrease contrast (with `0` being minimum contrast), and values above `1` increase contrast (with `2` being maximum contrast). This works like the `brightness` parameter.\n"},"correct_gamma":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nPrevents gamma errors [common in many image scaling algorithms](https://www.4p8.com/eric.brasseur/gamma.html).\n"},"crop":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"$ref":"#/components/schemas/Schema_d10c75b8416036a412d719f3270a8e7c55c3e7241fea58efd7ba559263a2a8f6"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]}],"description":"\nSpecify an object containing coordinates for the top left and bottom right corners of the rectangle to be cropped from the original image(s). The coordinate system is rooted in the top left corner of the image. Values can be integers for absolute pixel values or strings for percentage based values.\n\nFor example:\n\n```json\n{\n  \"x1\": 80,\n  \"y1\": 100,\n  \"x2\": \"60%\",\n  \"y2\": \"80%\"\n}\n```\n\nThis will crop the area from `(80, 100)` to `(600, 800)` from a 1000×1000 pixels image, which is a square whose width is 520px and height is 700px. If `crop` is set, the width and height parameters are ignored, and the `resize_strategy` is set to `crop` automatically.\n\nYou can also use a JSON string of such an object with coordinates in similar fashion:\n\n```json\n\"{\\\"x1\\\": <Integer>, \\\"y1\\\": <Integer>, \\\"x2\\\": <Integer>, \\\"y2\\\": <Integer>}\"\n```\n\nTo crop around human faces, see [🤖/image/facedetect](/docs/robots/image-facedetect/).\n"},"density":{"anyOf":[{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^(?:0*[1-9][0-9]*(?:\\.[0-9]+)?|0+\\.[0-9]*[1-9][0-9]*)(?:x(?:0*[1-9][0-9]*(?:\\.[0-9]+)?|0+\\.[0-9]*[1-9][0-9]*))?$","type":"string"}]},{"type":"null"}],"default":null,"description":"\nWhile in-memory quality and file format depth specifies the color resolution, the density of an image is the spatial (space) resolution of the image. That is the density (in pixels per inch) of an image and defines how far apart (or how big) the individual pixels are. It defines the size of the image in real world terms when displayed on devices or printed.\n\nYou can set this value to a specific `width` or in the format `width`x`height`.\n\nIf your converted image is unsharp, please try increasing density.\n"},"flatten":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":true,"description":"\nFlattens all layers onto the specified background to achieve better results from transparent formats to non-transparent formats, as explained in the [ImageMagick documentation](https://www.imagemagick.org/script/command-line-options.php#layers).\n\nTo preserve animations, GIF files are not flattened when this is set to `true`. To flatten GIF animations, use the `frame` parameter.\n"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"format":{"anyOf":[{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},{"type":"null"}],"default":null,"description":"\nThe output format for the modified image.\n\nSome of the most important available formats are `\"jpg\"`, `\"png\"`, `\"gif\"`, `\"tiff\"`, and `\"jxl\"` for JPEG XL. For a complete list of all formats that we can write to, please check [our supported image formats list](/docs/supported-formats/image-formats/).\n\nIf `null` (default), then the input image's format will be used as the output format.\n\nIf you wish to convert to `\"pdf\"`, please consider [🤖/document/convert](/docs/robots/document-convert/) instead.\n"},"frame":{"anyOf":[{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":1,"type":"integer"}]},{"type":"null"}],"default":null,"description":"\nUse this parameter when dealing with animated GIF files to specify which frame of the GIF is used for the operation. Specify `1` to use the first frame, `2` to use the second, and so on. `null` means all frames.\n"},"gravity":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"$ref":"#/components/schemas/Schema_91ebf076951a09d46d134e429dae1060e4764ff23a9611174fcaac45893a5f52"},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["attention","entropy"],"type":"string"}]}],"default":"center","description":"\nSets crop direction for `crop` or `fillcrop` without explicit coordinates.\nContent-aware `attention` and `entropy` need libvips, `fillcrop`, `width` and `height`.\nEffects such as `sepia` or `text`, and inputs such as HEIC, can use ImageMagick.\nIt centers these crops and the Assembly reports a warning.\nCrop in a separate /image/resize Step before effects, or convert unsupported inputs to PNG first.\n"},"height":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"$ref":"#/components/schemas/Schema_ac7d8464107dcaba338b4b8bdc2db3b974790cf626fa64c3e036a3c7fd9cab49"}],"description":"\nHeight of the new image, in pixels. If not specified, will default to the height of the input image.\n"},"hue":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":0,"type":"number"}],"default":100,"description":"\nChanges the hue by rotating the color of the image. The value `100` would produce no change whereas `0` and `200` will negate the colors in the image.\n"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"imagemagick_stack":{"$ref":"#/components/schemas/Schema_56b30d86ea31500bf844b3c857e7e1087b090f38feb9275f6991048203c04727"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"monochrome":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nTransform the image to black and white. This is a shortcut for setting the colorspace to Gray and type to Bilevel.\n"},"negate":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nReplace each pixel with its complementary color, effectively negating the image. Especially useful when testing clipping.\n"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"preclip_alpha":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["Activate","Background","Copy","Deactivate","Extract","Off","On","Opaque","Remove","Set","Shape","Transparent"],"type":"string"}],"description":"\nGives control of the alpha/matte channel of an image before applying the clipping path via `clip: true`.\n"},"progressive":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nInterlaces the image if set to `true`, which makes the image load progressively in browsers. Instead of rendering the image from top to bottom, the browser will first show a low-res blurry version of the images which is then quickly replaced with the actual image as the data arrives. This greatly increases the user experience, but comes at a cost of a file size increase by around 10%.\n"},"quality":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"maximum":100,"minimum":1,"type":"integer"}],"default":92,"description":"\nControls the image compression for JPG and PNG images. Please also take a look at [🤖/image/optimize](/docs/robots/image-optimize/).\n"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"resize_strategy":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":"crop","description":"Cuts an area out of an image, discarding any overlapping parts. If the source image is smaller than the crop frame, it will be zoomed. This strategy is implied when you specify coordinates in the `crop` parameter, and cannot be used without it.\n\nTo crop around human faces, see [🤖/image/facedetect](https://transloadit.com/docs/robots/image-facedetect/) instead.","type":"string"}],"description":"Cuts an area out of an image, discarding any overlapping parts. If the source image is smaller than the crop frame, it will be zoomed. This strategy is implied when you specify coordinates in the `crop` parameter, and cannot be used without it.\n\nTo crop around human faces, see [🤖/image/facedetect](https://transloadit.com/docs/robots/image-facedetect/) instead."},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":"fillcrop","description":"Scales the image to fit into our 100×100 target while preserving aspect ratio, while trimming away any excess surface. This means both sides will become exactly 100 pixels, at the tradeoff of destroying parts of the image.\n\nBy default the resulting image is horizontally/vertically centered to fill the target rectangle. Use the `gravity` parameter to change where to crop the image, such as `\"bottom`\" or `\"left`\".","type":"string"}],"description":"Scales the image to fit into our 100×100 target while preserving aspect ratio, while trimming away any excess surface. This means both sides will become exactly 100 pixels, at the tradeoff of destroying parts of the image.\n\nBy default the resulting image is horizontally/vertically centered to fill the target rectangle. Use the `gravity` parameter to change where to crop the image, such as `\"bottom`\" or `\"left`\"."},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":"fit","description":"Uses the larger side of the original image as a base for the resize. Aspect ratio is preserved. Either side will become at most 100 pixels.\n\nFor example: resizing a 400×300 image into 100×100, would produce a 100×75 image.","type":"string"}],"description":"Uses the larger side of the original image as a base for the resize. Aspect ratio is preserved. Either side will become at most 100 pixels.\n\nFor example: resizing a 400×300 image into 100×100, would produce a 100×75 image."},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":"min_fit","description":"Uses the **smaller** side of the original image as a base for the resize. After resizing, the larger side will have a larger value than specified. Aspect ratio is preserved. Either side will become at least 100 pixels.\n\nFor example: resizing a 400×300 image into 100×100, would produce a 133×100 image.","type":"string"}],"description":"Uses the **smaller** side of the original image as a base for the resize. After resizing, the larger side will have a larger value than specified. Aspect ratio is preserved. Either side will become at least 100 pixels.\n\nFor example: resizing a 400×300 image into 100×100, would produce a 133×100 image."},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":"pad","description":"Scales the image to fit while preserving aspect ratio. Both sides of the resized image become exactly 100 pixels, and any remaining surface is filled with a background color.\n\nIn this example, the background color is determined by the [Assembly Variable](https://transloadit.com/docs/topics/assembly-instructions/#assembly-variables) `${file.meta.average_color}`. If you set `zoom` to `false` (default is `true`), smaller images will be centered horizontally and vertically, and have the background padding all around them.","type":"string"}],"description":"Scales the image to fit while preserving aspect ratio. Both sides of the resized image become exactly 100 pixels, and any remaining surface is filled with a background color.\n\nIn this example, the background color is determined by the [Assembly Variable](https://transloadit.com/docs/topics/assembly-instructions/#assembly-variables) `${file.meta.average_color}`. If you set `zoom` to `false` (default is `true`), smaller images will be centered horizontally and vertically, and have the background padding all around them."},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":"stretch","description":"Ignores aspect ratio, resizing the image to the exact width and height specified. This may result in a stretched or distorted image.","type":"string"}],"description":"Ignores aspect ratio, resizing the image to the exact width and height specified. This may result in a stretched or distorted image."}],"default":"fit","description":"\nSee the list of available [resize strategies](/docs/topics/resize-strategies/).\n"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/image/resize","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"rotation":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},{"$ref":"#/components/schemas/Schema_a8213ce4c995e2d44b094b3ea909eddf983764d183e2903635e64aa32732520a"},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":"auto","type":"string"}]}],"default":true,"description":"\nDetermines whether the image should be rotated. Use any number to specify the rotation angle in degrees (e.g., `90`, `180`, `270`, `360`, or precise values like `2.9`). Use the value `true` or `\"auto\"` to auto-rotate images that are rotated incorrectly or depend on EXIF rotation settings. Otherwise, use `false` to disable auto-fixing altogether.\n"},"saturation":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":0,"type":"number"}],"default":1,"description":"\nIncreases or decreases the saturation of the image by using a multiplier. For example `1.5` would increase the saturation by 50%, and `0.75` would decrease the saturation by 25%.\n"},"sepia":{"anyOf":[{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"maximum":99,"minimum":0,"type":"integer"}]},{"type":"null"}],"default":null,"description":"\nApplies a sepia tone effect in percent.\n"},"shave":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^[0-9]+(x[0-9]+)?$","type":"string"}]},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":0,"type":"integer"}]}],"description":"\nShave pixels from the image edges. The value should be in the format `width` or `width`x`height` to specify the number of pixels to remove from each side.\n"},"strip":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nStrips all metadata from the image. This is useful to keep thumbnails as small as possible.\n"},"text":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"$ref":"#/components/schemas/Schema_c438f8b930d263be20d542bba99a73157870c05b1502869f4c6c99bd1324cfa1"},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"items":{"$ref":"#/components/schemas/Schema_c438f8b930d263be20d542bba99a73157870c05b1502869f4c6c99bd1324cfa1"},"type":"array"}]}],"description":"\nText overlays to be applied to the image. Can be either a single text object or an array of text objects. Each text object contains text rules. The following text parameters are intended to be used as properties for your text overlays. Here is an example:\n\n```json\n\"watermarked\": {\n  \"use\": \"resized\",\n  \"robot\": \"/image/resize\",\n  \"text\": [\n    {\n      \"text\": \"© 2018 Transloadit.com\",\n      \"size\": 12,\n      \"font\": \"Ubuntu\",\n      \"color\": \"#eeeeee\",\n      \"valign\": \"bottom\",\n      \"align\": \"right\",\n      \"x_offset\": 16,\n      \"y_offset\": -10\n    }\n  ]\n}\n```"},"transparent":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^#?[0-9a-fA-F]{3}([0-9a-fA-F]{3})?$","type":"string"}]},{"$ref":"#/components/schemas/Schema_894ca51bc217ffa7c8529a59e38dd1724955749efb7587c16084f133dcc1d688"}]},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^[0-9]+,[0-9]+,[0-9]+$","type":"string"}]}],"description":"\nMake this color transparent within the image. Example: `\"255,255,255\"`.\n"},"trim_whitespace":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nThis determines if additional whitespace around the image should first be trimmed away. If you set this to `true` this parameter removes any edges that are exactly the same color as the corner pixels.\n"},"type":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["Bilevel","ColorSeparation","ColorSeparationAlpha","Grayscale","GrayscaleAlpha","Palette","PaletteAlpha","TrueColor","TrueColorAlpha"],"type":"string"}],"description":"\nSets the image color type. For details about the available values, see the [ImageMagick documentation](https://www.imagemagick.org/script/command-line-options.php#type). If you're using `colorspace`, ImageMagick might try to find the most efficient based on the color of an image, and default to e.g. `\"Gray\"`. To force colors, you could e.g. set this parameter to `\"TrueColor\"`\n"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"},"watermark_opacity":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"maximum":1,"minimum":0,"type":"number"}],"default":1,"description":"\nThe opacity of the watermark, where `0.0` is fully transparent and `1.0` is fully opaque.\n\nFor example, a value of `0.5` means the watermark will be 50% transparent, allowing the underlying image to show through. This is useful for subtle branding or when you want the watermark to be less obtrusive.\n"},"watermark_position":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"$ref":"#/components/schemas/Schema_91ebf076951a09d46d134e429dae1060e4764ff23a9611174fcaac45893a5f52"},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"items":{"$ref":"#/components/schemas/Schema_91ebf076951a09d46d134e429dae1060e4764ff23a9611174fcaac45893a5f52"},"type":"array"}]}],"default":"center","description":"\nThe position at which the watermark is placed. The available options are `\"center\"`, `\"top\"`, `\"bottom\"`, `\"left\"`, and `\"right\"`. You can also combine options, such as `\"bottom-right\"`.\n\nAn array of possible values can also be specified, in which case one value will be selected at random, such as `[ \"center\", \"left\", \"bottom-left\", \"bottom-right\" ]`.\n\nThis setting puts the watermark in the specified corner. To use a specific pixel offset for the watermark, you will need to add the padding to the image itself.\n"},"watermark_repeat_x":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nWhen set to `true`, the watermark will be repeated horizontally across the entire width of the image.\n\nThis is useful for creating tiled watermark patterns that cover the full image and make it more difficult to crop out the watermark.\n"},"watermark_repeat_y":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nWhen set to `true`, the watermark will be repeated vertically across the entire height of the image.\n\nThis is useful for creating tiled watermark patterns that cover the full image. Can be combined with `watermark_repeat_x` to tile in both directions.\n"},"watermark_resize_strategy":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["area","fit","min_fit","stretch"],"type":"string"}],"default":"fit","description":"\nAvailable values are `\"fit\"`, `\"min_fit\"`, `\"stretch\"` and `\"area\"`.\n\nTo explain how the resize strategies work, let's assume our target image size is 800×800 pixels and our watermark image is 400×300 pixels. Let's also assume, the `watermark_size` parameter is set to `\"25%\"`.\n\nFor the `\"fit\"` resize strategy, the watermark is scaled so that the longer side of the watermark takes up 25% of the corresponding image side. And the other side is scaled according to the aspect ratio of the watermark image. So with our watermark, the width is the longer side, and 25% of the image size would be 200px. Hence, the watermark would be resized to 200×150 pixels. If the `watermark_size` was set to `\"50%\"`, it would be resized to 400×300 pixels (so just left at its original size).\n\nFor the `\"min_fit\"` resize strategy, the watermark is scaled so that the shorter side of the watermark takes up 25% of the corresponding image side. And the other side is scaled according to the aspect ratio of the watermark image. So with our watermark, the height is the shorter side, and 25% of the image size would be 200px. Hence, the watermark would be resized to 267×200 pixels. If the `watermark_size` was set to `\"50%\"`, it would be resized to 533×400 pixels (so larger than its original size).\n\nFor the `\"stretch\"` resize strategy, the watermark is stretched (meaning, it is resized without keeping its aspect ratio in mind) so that both sides take up 25% of the corresponding image side. Since our image is 800×800 pixels, for a watermark size of 25% the watermark would be resized to 200×200 pixels. Its height would appear stretched, because keeping the aspect ratio in mind it would be resized to 200×150 pixels instead.\n\nFor the `\"area\"` resize strategy, the watermark is resized (keeping its aspect ratio in check) so that it covers `\"xx%\"` of the image's surface area. The value from `watermark_size` is used for the percentage area size.\n"},"watermark_size":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^[0-9]+%$","type":"string"}],"description":"\nThe size of the watermark, as a percentage.\n\nFor example, a value of `\"50%\"` means that size of the watermark will be 50% of the size of image on which it is placed. The exact sizing depends on `watermark_resize_strategy`, too.\n"},"watermark_url":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^[Hh][Tt][Tt][Pp][Ss]?:\\/\\/(?:[^ ]|[ ])","type":"string","x-transloadit-input-fidelity":"conservative"}],"description":"\nA URL indicating a PNG image to be overlaid above this image. Please note that you can also  [supply the watermark via another Assembly Step](/docs/topics/use-parameter/#supplying-the-watermark-via-an-assembly-step). With watermarking you can add an image onto another image. This is usually used for logos.\n"},"watermark_x_offset":{"$ref":"#/components/schemas/Schema_be8d9cf87fa19191b4ae7951e8157ec31b58525767399fe496cb8d58a86d78be"},"watermark_y_offset":{"$ref":"#/components/schemas/Schema_ef358dbff7b7953b7b59de1e6075793d2495500cab96f4aeba4005431dcf0481"},"width":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"$ref":"#/components/schemas/Schema_ac7d8464107dcaba338b4b8bdc2db3b974790cf626fa64c3e036a3c7fd9cab49"}],"description":"\nWidth of the result in pixels. If not specified, will default to the width of the original.\n"},"zoom":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":true,"description":"\nIf this is set to `false`, smaller images will not be stretched to the desired width and height. For details about the impact of zooming for your preferred resize strategy, see the list of available [resize strategies](/docs/topics/resize-strategies/).\n"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"data_to_write":{"additionalProperties":{},"default":{},"description":"\nA key/value map defining the metadata to write into the file.\n\nValid metadata keys can be found [here](https://exiftool.org/TagNames/EXIF.html). For example: `ProcessingSoftware`.\n","type":"object"},"ffmpeg":{"$ref":"#/components/schemas/Schema_15464c9d28640e7bf8903ba6d26df07ca6adbb8f0503e291180fa8a4647ec8e5"},"ffmpeg_stack":{"$ref":"#/components/schemas/Schema_2af3b38087bd992e9cae66535831de488ac05a86fd19619f5cfd998074675a28"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/meta/write","description":"\n**Note:** This <dfn>Robot</dfn> currently accepts images, videos and audio files.\n","type":"string"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"bucket":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"credentials":{"$ref":"#/components/schemas/Schema_0fc8e431f685c4ad9c8c57805059dc903176efb1f46c34985fbc737fec1d63af"},"files_per_page":{"$ref":"#/components/schemas/Schema_fb8110ac8e46afd357588fdb3f6e0487d14ea219ff23b237b83413793ce39f30"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"force_name":{"$ref":"#/components/schemas/Schema_e2d753e6b6111506a4565bdb18eccafd67d2027839616974639f5565d695fafd"},"host":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"ignore_errors":{"$ref":"#/components/schemas/Schema_03e4961eba9e9b422ce714f9224b8d47a380c80d27b8342a78ba4e2702feb4db"},"import_on_errors":{"$ref":"#/components/schemas/Schema_61808f40a326596fd9674ebbd91184b0a2e04f8c67eb49fdf9f9449580271ab8"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"key":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"page_number":{"$ref":"#/components/schemas/Schema_700ca6e236bc3ce29f7390532b108f5a864258e18588a743c9d63fff1d8ecf5d"},"path":{"$ref":"#/components/schemas/Schema_29b03e33e094714044bf936cf358f56ce8a49e8051c5e450b83befe9961c4ace"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"recursive":{"$ref":"#/components/schemas/Schema_2a04346246228d68b23baff4fd26615a3dabf4b0b635cea5e60d9c76cd4a0543"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"return_file_stubs":{"$ref":"#/components/schemas/Schema_7d0953e667a4e84601b14c25ec998d74076b0afded4b1fe7182cba7b5a1062f7"},"robot":{"const":"/minio/import","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"secret":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["path","robot"],"type":"object"},{"additionalProperties":false,"properties":{"acl":{"$ref":"#/components/schemas/Schema_6f76a4b1c0011fc02a130479c0a33b50ca4ff841292c0a355755296647ce796a"},"bucket":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"credentials":{"$ref":"#/components/schemas/Schema_0fc8e431f685c4ad9c8c57805059dc903176efb1f46c34985fbc737fec1d63af"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"headers":{"additionalProperties":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"default":{"Content-Type":"${file.mime}"},"description":"\nAn object containing a list of headers to be set for this file in your MinIO bucket, such as `{ FileURL: \"${file.url_name}\" }`. This can also include any available [Assembly Variables](/docs/topics/assembly-instructions/#assembly-variables).\n\nObject Metadata can be specified using `x-amz-meta-*` headers. Note that these headers [do not support non-ASCII metadata values](https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#UserMetadata).\n","type":"object"},"host":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"key":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"path":{"$ref":"#/components/schemas/Schema_9e32d2e043ddaf27be258da25a42fb43c4a65680e4582d53c4c0e1d0b76908cf"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/minio/store","description":"\nThe URL to the result file will be returned in the <dfn>Assembly Status JSON</dfn>.\n","type":"string"},"secret":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"sign_urls_for":{"$ref":"#/components/schemas/Schema_f9f059c6ff209141973277001e2fe4648f4c807fbffff7d8ff70e590dae4b4ad"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"bucket":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"bucket_region":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"credentials":{"$ref":"#/components/schemas/Schema_0b7b04f621f8efa57648a0e30bbaa6a7b8282ff61dbd25868fe21cadd873ba02"},"files_per_page":{"$ref":"#/components/schemas/Schema_fb8110ac8e46afd357588fdb3f6e0487d14ea219ff23b237b83413793ce39f30"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"force_name":{"$ref":"#/components/schemas/Schema_e2d753e6b6111506a4565bdb18eccafd67d2027839616974639f5565d695fafd"},"ignore_errors":{"$ref":"#/components/schemas/Schema_03e4961eba9e9b422ce714f9224b8d47a380c80d27b8342a78ba4e2702feb4db"},"import_on_errors":{"$ref":"#/components/schemas/Schema_61808f40a326596fd9674ebbd91184b0a2e04f8c67eb49fdf9f9449580271ab8"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"key":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"page_number":{"$ref":"#/components/schemas/Schema_700ca6e236bc3ce29f7390532b108f5a864258e18588a743c9d63fff1d8ecf5d"},"path":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},{"$ref":"#/components/schemas/Schema_bc9fbfc32e2939087e1b877c2b51ce63f08c8cdfdcf7adca01505a0498ab5691"}],"description":"\nThe path in your bucket to the specific file or directory. If the path points to a file, only this file will be imported. For example: `images/avatar.jpg`.\n\nIf it points to a directory, indicated by a trailing slash (`/`), then all files that are direct descendants to this directory will be imported. For example: `images/`.\n\nDirectories are **not** imported recursively. If you want to import files from subdirectories and sub-subdirectories, enable the `recursive` parameter.\n\nIf you want to import all files from the root directory, please use `/` as the value here. In this case, make sure all your objects belong to a path. If you have objects in the root of your bucket that aren't prefixed with `/`, you'll receive an error: `A client error (NoSuchKey) occurred when calling the GetObject operation: The specified key does not exist.`\n\nYou can also use an array of path strings here to import multiple paths in the same <dfn>Robot</dfn>'s <dfn>Step</dfn>.\n"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"range":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},{"$ref":"#/components/schemas/Schema_bc9fbfc32e2939087e1b877c2b51ce63f08c8cdfdcf7adca01505a0498ab5691"}],"description":"\nAllows you to specify one or more byte ranges to import from the file. S3 must support range requests for this to work.\n\n**Single range**: Use a string like `\"0-99\"` to import bytes 0-99 (the first 100 bytes).\n\n**Multiple ranges**: Use an array like `[\"0-99\", \"200-299\"]` to import multiple separate ranges. The resulting file will contain all requested ranges concatenated together, with zero bytes (\\0) filling any gaps between non-contiguous ranges.\n\n**Range formats**:\n- `\"0-99\"`: Bytes 0 through 99 (inclusive)\n- `\"100-199\"`: Bytes 100 through 199 (inclusive)\n- `\"-100\"`: The last 100 bytes of the file\n\n**Important notes**:\n- S3 supports range requests by default\n- Overlapping ranges are allowed and will be included as requested\n- The resulting file size will be the highest byte position requested, with gaps filled with zero bytes\n- Each range is fetched in a separate request to ensure compatibility with S3\n"},"recursive":{"$ref":"#/components/schemas/Schema_2a04346246228d68b23baff4fd26615a3dabf4b0b635cea5e60d9c76cd4a0543"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"return_file_stubs":{"$ref":"#/components/schemas/Schema_7d0953e667a4e84601b14c25ec998d74076b0afded4b1fe7182cba7b5a1062f7"},"robot":{"const":"/s3/import","description":"\nIf you are new to Amazon S3, see our tutorial on [using your own S3 bucket](/docs/faq/how-to-set-up-an-amazon-s3-bucket/).\n\nThe URL to the result file in your S3 bucket will be returned in the <dfn>Assembly Status JSON</dfn>.\n\n> [!Warning]\n> **Use DNS-compliant bucket names**. Your bucket name [must be DNS-compliant](https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html) and must not contain uppercase letters. Any non-alphanumeric characters in the file names will be replaced with an underscore, and spaces will be replaced with dashes. If your existing S3 bucket contains uppercase letters or is otherwise not DNS-compliant, rewrite the result URLs using the <dfn>Robot</dfn>’s `url_prefix` parameter.\n\n<span id=\"minimum-s3-iam-permissions\" aria-hidden=\"true\"></span>\n\n## Limit access\n\nYou will also need to add permissions to your bucket so that Transloadit can access it properly. Here is an example IAM policy that you can use. Following the [principle of least privilege](https://en.wikipedia.org/wiki/Principle_of_least_privilege), it contains the **minimum required permissions** to import a file from your S3 bucket using Transloadit. You may require more permissions (especially viewing permissions) depending on your application.\n\nPlease change `{BUCKET_NAME}` in the values for `Sid` and `Resource` accordingly. Also, this policy will grant the minimum required permissions to all your users. We advise you to create a separate Amazon IAM user, and use its User ARN (can be found in the \"Summary\" tab of a user [here](https://console.aws.amazon.com/iam/home#users)) for the `Principal` value. More information about this can be found [here](https://docs.aws.amazon.com/AmazonS3/latest/dev/AccessPolicyLanguage_UseCases_s3_a.html).\n\n```json\n{\n  \"Version\": \"2012-10-17\",\n  \"Statement\": [\n    {\n      \"Sid\": \"AllowTransloaditToImportFilesIn{BUCKET_NAME}Bucket\",\n      \"Effect\": \"Allow\",\n      \"Action\": [\"s3:GetBucketLocation\", \"s3:ListBucket\"],\n      \"Resource\": [\"arn:aws:s3:::{BUCKET_NAME}\", \"arn:aws:s3:::{BUCKET_NAME}/*\"]\n    }\n  ]\n}\n```\n\nThe `Sid` value is just an identifier for you to recognize the rule later. You can name it anything you like.\n\nThe policy needs to be separated into two parts, because the `ListBucket` action requires permissions on the bucket while the other actions require permissions on the objects in the bucket. When targeting the objects there's a trailing slash and an asterisk in the `Resource` parameter, whereas when the policy targets the bucket, the slash and the asterisk are omitted.\n\nIn order to build proper result URLs we need to know the region in which your S3 bucket resides. For this we require the `GetBucketLocation` permission. Figuring out your bucket's region this way will also slow down your Assemblies. To make this much faster and to also not require the `GetBucketLocation` permission, we have added the `bucket_region` parameter to the /s3/store and /s3/import Robots. We recommend using them at all times.\n\nPlease keep in mind that if you use bucket encryption you may also need to add `\"sts:*\"` and `\"kms:*\"` to the bucket policy. Please read [here](https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html) and [here](https://aws.amazon.com/blogs/security/how-to-restrict-amazon-s3-bucket-access-to-a-specific-iam-role/) in case you run into trouble with our example bucket policy.\n","type":"string"},"secret":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["path","robot"],"type":"object"},{"additionalProperties":false,"properties":{"acl":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["bucket-default","private","public","public-read"],"type":"string"}],"default":"public-read","description":"\nThe ACL used for this file. The default remains `\"public-read\"`, which can conflict with S3 Block Public Access and disabled ACLs. For modern private buckets, explicitly set `\"bucket-default\"` to omit the generated ACL header, and do not supply ACL/grant headers in `headers`. `\"private\"` still sends an ACL.\n"},"bucket":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"bucket_region":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"check_integrity":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nCalculate and submit the file's checksum in order for S3 to verify its integrity after uploading, which can help with occasional file corruption issues.\n\nEnabling this option adds to the overall execution time, as integrity checking can be CPU intensive, especially for larger files.\n"},"credentials":{"$ref":"#/components/schemas/Schema_0b7b04f621f8efa57648a0e30bbaa6a7b8282ff61dbd25868fe21cadd873ba02"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"headers":{"additionalProperties":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"default":{"Content-Type":"${file.mime}"},"description":"\nAn object containing a list of headers to be set for this file on S3, such as `{ FileURL: \"${file.url_name}\" }`. This can also include any available [Assembly Variables](/docs/topics/assembly-instructions/#assembly-variables). You can find a list of available headers [here](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectPUT.html).\n\nObject Metadata can be specified using `x-amz-meta-*` headers. Note that these headers [do not support non-ASCII metadata values](https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#UserMetadata).\n","type":"object"},"host":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"default":"s3.amazonaws.com","description":"\nThe host of the storage service used. This only needs to be set when the storage service used is not Amazon S3, but has a compatible API (such as hosteurope.de). The default protocol used is HTTP, for anything else the protocol needs to be explicitly specified. For example, prefix the host with `https://` or `s3://` to use either respective protocol.\n"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"key":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"no_vhost":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nSet to `true` if you use a custom host and run into access denied errors.\n"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"path":{"$ref":"#/components/schemas/Schema_9e32d2e043ddaf27be258da25a42fb43c4a65680e4582d53c4c0e1d0b76908cf"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/s3/store","description":"\nIf you are new to Amazon S3, see our tutorial on [using your own S3 bucket](/docs/faq/how-to-set-up-an-amazon-s3-bucket/).\n\nThe URL to the result file in your S3 bucket will be returned in the <dfn>Assembly Status JSON</dfn>. A returned URL does not make a private object public or grant read access. If your S3 bucket has versioning enabled, the version ID of the file will be returned within `meta.version_id`.\n\n> [!Warning]\n> **Configure private buckets explicitly.** The Robot’s default `acl` is still `\"public-read\"`. For a private bucket, set `acl: \"bucket-default\"` and do not supply ACL or grant headers. This omits the generated ACL header and works with [Bucket owner enforced Object Ownership](https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html), where ACLs are disabled. Keep S3 Block Public Access enabled. Setting `acl: \"private\"` still sends an ACL and is not equivalent to omitting it.\n\n> [!Warning]\n> **Use DNS-compliant bucket names.** Follow AWS’s [bucket naming rules](https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html). The `url_prefix` parameter changes returned URLs; it does not change the bucket or its access permissions.\n\n<span id=\"minimum-s3-iam-permissions\" aria-hidden=\"true\"></span>\n\n## Limit access\n\nUse a dedicated AWS identity with access limited to the destination bucket and object prefix. Do not use [AWS root access keys](https://docs.aws.amazon.com/IAM/latest/UserGuide/root-user-best-practices.html). Store its access key ID, secret access key, bucket name and region as `key`, `secret`, `bucket` and `bucket_region` in <dfn>Template Credentials</dfn>, then reference their name with `credentials`. Trusted backend integrations can instead supply those parameters directly; do not expose AWS secrets in browser instructions.\n\nThe following is an [identity-based IAM policy](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html), attached to that dedicated identity, not a bucket policy. It intentionally has no `Principal`. Replace `{BUCKET_NAME}` and use a Robot `path` beginning with `uploads/`, or adapt both the policy prefix and the path together.\n\nThis example covers uploads and failed multipart-upload cleanup with an explicit `bucket_region`, `acl: \"bucket-default\"`, no ACL/grant headers, no tags and S3-managed encryption (SSE-S3). Existing bucket policies, organization controls or endpoint policies can still deny access.\n\n```json\n{\n  \"Version\": \"2012-10-17\",\n  \"Statement\": [\n    {\n      \"Sid\": \"UploadAndAbortWithinPrefix\",\n      \"Effect\": \"Allow\",\n      \"Action\": [\"s3:PutObject\", \"s3:AbortMultipartUpload\"],\n      \"Resource\": \"arn:aws:s3:::{BUCKET_NAME}/uploads/*\"\n    }\n  ]\n}\n```\n\nThe uploader uses either `PutObject` or `CreateMultipartUpload`, `UploadPart` and `CompleteMultipartUpload`; failed multipart uploads can trigger `AbortMultipartUpload`. AWS maps the successful upload operations to `s3:PutObject`. Write access can **overwrite an existing object key**; it is not add-only. Choose unique object paths and consider versioning for recovery.\n\nAdd permissions only for features you use, following AWS’s [operation permission reference](https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-policy-actions.html):\n\n- Without an explicit `bucket_region`, region discovery can require `s3:GetBucketLocation` and fallback `s3:ListBucket` on the bucket ARN, `arn:aws:s3:::{BUCKET_NAME}`, without an object suffix. Supplying the correct region avoids these discovery requests.\n- ACL or grant headers require `s3:PutObjectAcl`; tags require `s3:PutObjectTagging` on the allowed object prefix. `bucket-default` does not remove ACL/grant headers you supply in `headers`.\n- Downloading private results requires separate read authorization. Even a URL generated with `sign_urls_for` needs the signing identity to have the appropriate read permissions.\n\nS3 applies its [bucket encryption configuration](https://docs.aws.amazon.com/AmazonS3/latest/userguide/default-bucket-encryption.html) when no encryption override is sent. You can request SSE-KMS through `headers`, using `x-amz-server-side-encryption: aws:kms` and `x-amz-server-side-encryption-aws-kms-key-id`. When either bucket default encryption or request headers select [SSE-KMS](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingKMSEncryption.html), the uploading identity needs `kms:GenerateDataKey` on the relevant key, plus `kms:Decrypt` for multipart uploads. For a customer-managed key, grant these permissions with a compatible KMS key policy; the base S3 policy above does not include them. Do not add blanket `kms:*` or `sts:*` grants.\n\nShort-lived AWS credentials are a matching set of `key`, `secret` and `session_token`. Have a trusted backend obtain and refresh all three, then supply them together when it creates the Assembly. It can pass them directly in Robot instructions or save and update them together through the [Template Credentials API](/docs/api/template-credentials-post/). Keep all three out of browser instructions; replacing only the session token does not refresh expired access keys. This Robot passes the supplied credentials to S3; it does not assume a role or refresh expired credentials. Keep temporary credentials valid for the upload.\n","type":"string"},"secret":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"session_token":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nThe session token belonging to the temporary AWS access key ID and secret access key supplied for this upload. The Robot does not assume a role or refresh these credentials; they must remain valid for the upload.\n"},"sign_urls_for":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":0,"type":"integer"}],"description":"\nThis parameter provides signed URLs in the result JSON (in the `signed_url` and `signed_ssl_url` properties). The number that you set this parameter to is the URL expiry time in seconds. If this parameter is not used, no URL signing is done.\n"},"tags":{"additionalProperties":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"default":{},"description":"\nObject tagging allows you to categorize storage. You can associate up to 10 tags with an object. Tags that are associated with an object must have unique tag keys.\n","type":"object"},"url_prefix":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"default":"http://{bucket}.s3.amazonaws.com/","description":"\nThe URL prefix used for the returned URL, such as `\"http://my.cdn.com/some/path/\"`.\n"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/script/run","description":"\nThis <dfn>Robot</dfn> allows you to run arbitrary `JavaScript` as part of the <dfn>Assembly</dfn>\nexecution process. The <dfn>Robot</dfn> is invoked automatically when there are <dfn>Assembly\nInstructions</dfn> containing `${...}`:\n\n```json\n{\n  \"robot\": \"/image/resize\",\n  \"width\": \"${Math.max(file.meta.width, file.meta.height)}\"\n}\n```\n\nYou can also invoke this <dfn>Robot</dfn> directly, leaving out the `${...}`:\n\n```json\n{\n  \"robot\": \"/script/run\",\n  \"script\": \"Math.max(file.meta.width, file.meta.height)\"\n}\n```\n\nWhen accessing arrays, the syntax is the same as in any JavaScript program:\n\n```json\n{\n  \"robot\": \"/image/resize\",\n  \"width\": \"${file.meta.faces[0].width * 2}\"\n}\n```\n\nCompared to only accessing an <dfn>Assembly Variable</dfn>:\n\n```json\n{\n  \"robot\": \"/image/resize\",\n  \"width\": \"${file.meta.faces[0].width}\"\n}\n```\n\nFor more information, see [Dynamic Evaluation](/docs/topics/dynamic-evaluation/).\n","type":"string"},"script":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"description":"\nA string of JavaScript to evaluate. It has access to all JavaScript features available in a modern browser environment.\n\nThe script is expected to return a `JSON.stringify`-able value in the same tick, so no `await` or callbacks are allowed (yet).\n\nIf the script does not finish within 1000ms it times out with an error. The return value or error is exported as `file.meta.result`. If there was an error, `file.meta.isError` is `true`. Note that the <dfn>Assembly</dfn> will not crash in this case. If you need it to crash, you can check this value with a [🤖/file/filter](/docs/robots/file-filter/) <dfn>Step</dfn>, setting `error_on_decline` to `true`.\n\nYou can check whether evaluating this script was free by inspecting `file.meta.isFree`. It is recommended to do this during development as to not see sudden unexpected costs in production.\n","type":"string"}],"description":"\nA string of JavaScript to evaluate. It has access to all JavaScript features available in a modern browser environment.\n\nThe script is expected to return a `JSON.stringify`-able value in the same tick, so no `await` or callbacks are allowed (yet).\n\nIf the script does not finish within 1000ms it times out with an error. The return value or error is exported as `file.meta.result`. If there was an error, `file.meta.isError` is `true`. Note that the <dfn>Assembly</dfn> will not crash in this case. If you need it to crash, you can check this value with a [🤖/file/filter](/docs/robots/file-filter/) <dfn>Step</dfn>, setting `error_on_decline` to `true`.\n\nYou can check whether evaluating this script was free by inspecting `file.meta.isFree`. It is recommended to do this during development as to not see sudden unexpected costs in production.\n"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot","script"],"type":"object"},{"additionalProperties":false,"properties":{"credentials":{"$ref":"#/components/schemas/Schema_e00528555b01ba9d12a79a7f6dd4925c61c1970776ac19f9311820ad362c38ad"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"force_name":{"$ref":"#/components/schemas/Schema_e2d753e6b6111506a4565bdb18eccafd67d2027839616974639f5565d695fafd"},"host":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"ignore_errors":{"$ref":"#/components/schemas/Schema_03e4961eba9e9b422ce714f9224b8d47a380c80d27b8342a78ba4e2702feb4db"},"import_on_errors":{"$ref":"#/components/schemas/Schema_61808f40a326596fd9674ebbd91184b0a2e04f8c67eb49fdf9f9449580271ab8"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"path":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"description":"\nThe path on your SFTP server where to search for files. If the path points to a directory, only direct descendants of this directory are imported by default.\n","type":"string"}],"description":"\nThe path on your SFTP server where to search for files. If the path points to a directory, only direct descendants of this directory are imported by default.\n"},"port":{"$ref":"#/components/schemas/Schema_54b7efa14685483f18a4ce6218bf13b9d3acda9c88f6de43b469c7cae2b8ee42"},"public_key":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"recursive":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nSetting this to `true` will enable importing files from subdirectories and sub-subdirectories (etc.) of the given path.\n"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/sftp/import","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"user":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["path","robot"],"type":"object"},{"additionalProperties":false,"properties":{"credentials":{"$ref":"#/components/schemas/Schema_e00528555b01ba9d12a79a7f6dd4925c61c1970776ac19f9311820ad362c38ad"},"file_chmod":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"([0-7]{3}|auto)","type":"string"}],"default":"auto","description":"\nThis optional parameter controls how an uploaded file's permission bits are set. You can use any string format that the `chmod` command would accept, such as `\"755\"`. If you don't specify this option, the file's permission bits aren't changed at all, meaning it's up to your server's configuration (e.g. umask).\n      "},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"host":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"path":{"$ref":"#/components/schemas/Schema_35cf890db619e90c290459ad1bb9111a20064bbab0881cc1ebedd82c75b6e871"},"port":{"$ref":"#/components/schemas/Schema_54b7efa14685483f18a4ce6218bf13b9d3acda9c88f6de43b469c7cae2b8ee42"},"public_key":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/sftp/store","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"ssl_url_template":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"default":"https://{HOST}/{PATH}","description":"\n  The SSL URL of the file in the result JSON. The following [Assembly variables](/docs/topics/assembly-instructions/#assembly-variables) are supported.\n"},"url_template":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"default":"http://host/path","description":"\nThe URL of the file in the result JSON. This may include any of the following supported [Assembly variables](/docs/topics/assembly-instructions/#assembly-variables).\n"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"format":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["json","meta","srt","text","webvtt"],"type":"string"}],"default":"json","description":"\nOutput format for the transcription.\n\n- `\"text\"` outputs a plain text file that you can store and process.\n- `\"json\"` outputs a JSON file containing timestamped words. When `speaker_labels` is enabled, words can include `speaker` labels and the JSON can also include grouped `segments` by speaker.\n- `\"srt\"` and `\"webvtt\"` output subtitle files of those respective file types, which can be stored separately or used in other encoding <dfn>Steps</dfn>.\n- `\"meta\"` does not return a file, but stores the data inside Transloadit's file object (under `${file.meta.transcription.text}`, `${file.meta.transcription.words}`, and, when speaker labels are available, `${file.meta.transcription.segments}`) that's passed around between encoding <dfn>Steps</dfn>, so that you can use the values to burn the data into videos, filter on them, etc.\n"},"granularity":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["full","list"],"type":"string"}],"default":"full","description":"\nBoth `\"full\"` and `\"list\"` currently return the same complete transcription response. `\"list\"` remains accepted for backward compatibility.\n"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"max_speakers":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"maximum":10,"minimum":1,"type":"integer"}],"default":10,"description":"\nThe maximum number of speakers to detect when `speaker_labels` is enabled.\n"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"provider":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["auto","aws","gcp","replicate"],"type":"string"}],"default":"auto","description":"\nChooses the best provider based on your request.\n\nSet this to `\"aws\"`, `\"gcp\"`, or `\"replicate\"` to force a specific provider.\nWhen set to `\"auto\"`, Transloadit uses `\"replicate\"` by default and uses `\"aws\"` when\n`speaker_labels` is enabled.\n"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/speech/transcribe","description":"\nYou can use the text that we return in your application, or you can pass the text down to other <dfn>Robots</dfn> to filter audio or video files that contain (or do not contain) certain content, or burn the text into images or video for example.\n\nAnother common use case is automatically subtitling videos, or making audio searchable.\n\nSet `speaker_labels` to `true` when you want JSON or meta transcription output to distinguish\nrecurring speakers:\n\n```json\n{\n  \"steps\": {\n    \"transcribed\": {\n      \"use\": \":original\",\n      \"robot\": \"/speech/transcribe\",\n      \"provider\": \"aws\",\n      \"format\": \"json\",\n      \"speaker_labels\": true,\n      \"max_speakers\": 3\n    }\n  }\n}\n```\n\nSpeaker labels are currently supported by the `aws` and `gcp` providers. If you enable\n`speaker_labels` without setting `provider`, Transloadit uses `aws` for that <dfn>Step</dfn>. Labels\nare normalized as `speaker_1`, `speaker_2`, and so on:\n\n```json\n{\n  \"text\": \"Hello there. Hi!\",\n  \"words\": [\n    { \"text\": \"Hello\", \"startTime\": 0, \"endTime\": 0.5, \"speaker\": \"speaker_1\" },\n    { \"text\": \"there\", \"startTime\": 0.6, \"endTime\": 1, \"speaker\": \"speaker_1\" },\n    { \"text\": \"Hi!\", \"startTime\": 1.2, \"endTime\": 1.8, \"speaker\": \"speaker_2\" }\n  ],\n  \"segments\": [\n    { \"text\": \"Hello there\", \"startTime\": 0, \"endTime\": 1, \"speaker\": \"speaker_1\" },\n    { \"text\": \"Hi!\", \"startTime\": 1.2, \"endTime\": 1.8, \"speaker\": \"speaker_2\" }\n  ]\n}\n```\n","type":"string"},"source_language":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"default":"en-US","description":"\nSets the spoken language for the `\"aws\"` and `\"gcp\"` providers. The transcription stays in the spoken language; this parameter does not translate speech.\n\nThe language should be specified in the [BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt) format, such as `\"en-GB\"`, `\"de-DE\"` or `\"fr-FR\"`. Please also consult the list of supported languages for [the `gcp` provider](https://cloud.google.com/speech-to-text/docs/languages) and [the `aws` provider](https://docs.aws.amazon.com/transcribe/latest/dg/what-is-transcribe.html).\n"},"speaker_labels":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nWhen enabled, Transloadit asks the transcription provider to distinguish different speakers. JSON and meta output can then include `speaker` labels such as `\"speaker_1\"` on individual words, plus grouped `segments` by speaker. Text, SRT, and WebVTT output behavior is unchanged.\n\nSpeaker labels identify recurring voices, not real person names. Accuracy depends on audio quality, background noise, overlapping speech, and the number of speakers.\n"},"target_language":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nSets the spoken language hint for the `\"replicate\"` provider. Omit this parameter to detect the spoken language automatically. Set it to the full lowercase English language name, such as `\"french\"`, when the spoken language is known. Despite its name, this parameter does not translate speech.\n\nFor the `\"aws\"` and `\"gcp\"` providers, use `source_language` instead.\n"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"bucket":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"bucket_region":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nThe region where the bucket is located.\n"},"credentials":{"$ref":"#/components/schemas/Schema_f01dfdccbdda8bceb4a464b16d4b008f08c1677f849c441face2bfbf1c91bf05"},"files_per_page":{"$ref":"#/components/schemas/Schema_fb8110ac8e46afd357588fdb3f6e0487d14ea219ff23b237b83413793ce39f30"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"force_name":{"$ref":"#/components/schemas/Schema_e2d753e6b6111506a4565bdb18eccafd67d2027839616974639f5565d695fafd"},"host":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"ignore_errors":{"$ref":"#/components/schemas/Schema_03e4961eba9e9b422ce714f9224b8d47a380c80d27b8342a78ba4e2702feb4db"},"import_on_errors":{"$ref":"#/components/schemas/Schema_61808f40a326596fd9674ebbd91184b0a2e04f8c67eb49fdf9f9449580271ab8"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"key":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"page_number":{"$ref":"#/components/schemas/Schema_700ca6e236bc3ce29f7390532b108f5a864258e18588a743c9d63fff1d8ecf5d"},"path":{"$ref":"#/components/schemas/Schema_29b03e33e094714044bf936cf358f56ce8a49e8051c5e450b83befe9961c4ace"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"recursive":{"$ref":"#/components/schemas/Schema_8305335b6eafa6a9a8c0e5d531016c79ff3ffd63f98546b464a7fd0b9473ba0f"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"return_file_stubs":{"$ref":"#/components/schemas/Schema_7d0953e667a4e84601b14c25ec998d74076b0afded4b1fe7182cba7b5a1062f7"},"robot":{"const":"/supabase/import","description":"\nThe URL to the result file will be returned in the <dfn>Assembly Status JSON</dfn>.\n","type":"string"},"secret":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["path","robot"],"type":"object"},{"additionalProperties":false,"properties":{"bucket":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"bucket_region":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nThe region where the bucket is located.\n"},"credentials":{"$ref":"#/components/schemas/Schema_f01dfdccbdda8bceb4a464b16d4b008f08c1677f849c441face2bfbf1c91bf05"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"headers":{"additionalProperties":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"default":{"Content-Type":"${file.mime}"},"description":"\nAn object containing a list of headers to be set for this file in your Supabase Storage bucket, such as `{ FileURL: \"${file.url_name}\" }`. This can also include any available [Assembly Variables](/docs/topics/assembly-instructions/#assembly-variables).\n\nObject Metadata can be specified using `x-amz-meta-*` headers. Note that these headers [do not support non-ASCII metadata values](https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#UserMetadata).\n","type":"object"},"host":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"key":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"path":{"$ref":"#/components/schemas/Schema_9e32d2e043ddaf27be258da25a42fb43c4a65680e4582d53c4c0e1d0b76908cf"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/supabase/store","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"secret":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"bucket":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"credentials":{"$ref":"#/components/schemas/Schema_479ba1b1c1b9832d49a7c2bed1726873de44fbe0e6095d87466df559303afcf5"},"files_per_page":{"$ref":"#/components/schemas/Schema_fb8110ac8e46afd357588fdb3f6e0487d14ea219ff23b237b83413793ce39f30"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"force_name":{"$ref":"#/components/schemas/Schema_e2d753e6b6111506a4565bdb18eccafd67d2027839616974639f5565d695fafd"},"host":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nThe S3-compatible object storage endpoint for the OpenStack Swift service. This is required when supplying dynamic credentials directly instead of using Template Credentials.\n"},"ignore_errors":{"$ref":"#/components/schemas/Schema_03e4961eba9e9b422ce714f9224b8d47a380c80d27b8342a78ba4e2702feb4db"},"import_on_errors":{"$ref":"#/components/schemas/Schema_61808f40a326596fd9674ebbd91184b0a2e04f8c67eb49fdf9f9449580271ab8"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"key":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"page_number":{"$ref":"#/components/schemas/Schema_700ca6e236bc3ce29f7390532b108f5a864258e18588a743c9d63fff1d8ecf5d"},"path":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},{"$ref":"#/components/schemas/Schema_bc9fbfc32e2939087e1b877c2b51ce63f08c8cdfdcf7adca01505a0498ab5691"}],"description":"\nThe path in your container to the specific file or directory. If the path points to a file, only this file will be imported. For example: `images/avatar.jpg`.\n\nIf it points to a directory, indicated by a trailing slash (`/`), then all files that are direct descendants of this directory will be imported. For example: `images/`.\n\nDirectories are **not** imported recursively. If you want to import files from subdirectories and sub-subdirectories, enable the `recursive` parameter.\n\nIf you want to import all files from the root directory, please use `/` as the value here. In this case, make sure all your objects belong to a path. If you have objects in the root of your container that aren't prefixed with `/`, you'll receive an error: `A client error (NoSuchKey) occurred when calling the GetObject operation: The specified key does not exist.`\n\nYou can also use an array of path strings here to import multiple paths in the same <dfn>Robot</dfn>'s <dfn>Step</dfn>.\n"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"recursive":{"$ref":"#/components/schemas/Schema_2a04346246228d68b23baff4fd26615a3dabf4b0b635cea5e60d9c76cd4a0543"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"return_file_stubs":{"$ref":"#/components/schemas/Schema_7d0953e667a4e84601b14c25ec998d74076b0afded4b1fe7182cba7b5a1062f7"},"robot":{"const":"/swift/import","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"secret":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["path","robot"],"type":"object"},{"additionalProperties":false,"properties":{"acl":{"$ref":"#/components/schemas/Schema_6f76a4b1c0011fc02a130479c0a33b50ca4ff841292c0a355755296647ce796a"},"bucket":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"credentials":{"$ref":"#/components/schemas/Schema_479ba1b1c1b9832d49a7c2bed1726873de44fbe0e6095d87466df559303afcf5"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"headers":{"additionalProperties":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"default":{"Content-Type":"${file.mime}"},"description":"\nAn object containing a list of headers to be set for this file in your OpenStack Swift container, such as `{ FileURL: \"${file.url_name}\" }`. This can also include any available [Assembly Variables](/docs/topics/assembly-instructions/#assembly-variables).\n\nObject Metadata can be specified using `x-amz-meta-*` headers. Note that these headers [do not support non-ASCII metadata values](https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#UserMetadata).\n","type":"object"},"host":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nThe S3-compatible object storage endpoint for the OpenStack Swift service. This is required when supplying dynamic credentials directly instead of using Template Credentials.\n"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"key":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"path":{"$ref":"#/components/schemas/Schema_9e32d2e043ddaf27be258da25a42fb43c4a65680e4582d53c4c0e1d0b76908cf"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/swift/store","description":"\nThe URL to the result file in your OpenStack Swift container will be returned in the <dfn>Assembly Status JSON</dfn>.","type":"string"},"secret":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"sign_urls_for":{"$ref":"#/components/schemas/Schema_6561742ad8531818ad835d63fdd348612b329189814a3953875b261e98fcb035"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"prompt":{"anyOf":[{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},{"type":"null"}],"description":"\nWhich text to speak. You can also set this to `null` and supply an input text file.\n"},"provider":{"$ref":"#/components/schemas/Schema_ca72aa2ec7c776cc9d7892a1460fd032ef5b94b1d7c9ffa090d548e7d5360c4e"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/text/speak","description":"\nYou can use the audio that we return in your application, or you can pass the audio down to other <dfn>Robots</dfn> to add a voice track to a video for example.\n\nAnother common use case is making your product accessible to people with a reading disability.\n","type":"string"},"ssml":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nSupply [Speech Synthesis Markup Language](https://en.wikipedia.org/wiki/Speech_Synthesis_Markup_Language) instead of raw text, in order to gain more control over how your text is voiced, including rests and pronounciations.\n\nPlease see the supported syntaxes for [AWS](https://docs.aws.amazon.com/polly/latest/dg/supportedtags.html) and [GCP](https://cloud.google.com/text-to-speech/docs/ssml).\n"},"target_language":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"default":"en-US","description":"\nThe written language of the document. This will also be the language of the spoken text.\n\nThe language should be specified in the [BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt) format, such as `\"en-GB\"`, `\"de-DE\"` or `\"fr-FR\"`. Please consult the list of supported languages and voices.\n"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"},"voice":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["female-1","female-2","female-3","female-child-1","male-1","male-child-1"],"type":"string"}],"default":"female-1","description":"\nThe gender to be used for voice synthesis. Please consult the list of supported languages and voices.\n"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"provider":{"$ref":"#/components/schemas/Schema_ca72aa2ec7c776cc9d7892a1460fd032ef5b94b1d7c9ffa090d548e7d5360c4e"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/text/translate","description":"\nYou can use the text that we return in your application, or you can pass the text down to other <dfn>Robots</dfn> to add a translated subtitle track to a video for example.\n\n> [!Note]\n> **This <dfn>Robot</dfn> accepts only files with a `text/*` MIME-type,** including plain text and Markdown. For documents in other formats, use [🤖/document/convert](/docs/robots/document-convert/) to first convert them into a compatible text format before proceeding.\n","type":"string"},"source_language":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"$ref":"#/components/schemas/Schema_48846cc3bf660fc66a1844289636009a40a68d2eae08d688bd0eaf2c75be7433"}],"default":"en","description":"\nThe desired language to translate from.\n\nBy default, both providers will detect this automatically, but there are cases where specifying the source language prevents ambiguities.\n\nIf the exact language can't be found, a generic variant can be fallen back to. For example, if you specify `\"en-US\"`, \"en\" will be used instead. Please consult the list of supported languages for each provider.\n"},"target_language":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"$ref":"#/components/schemas/Schema_48846cc3bf660fc66a1844289636009a40a68d2eae08d688bd0eaf2c75be7433"}],"default":"en","description":"\nThe desired language to translate to.\n\nIf the exact language can't be found, a generic variant can be fallen back to. For example, if you specify `\"en-US\"`, \"en\" will be used instead. Please consult the list of supported languages for each provider.\n"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"credentials":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},{"$ref":"#/components/schemas/Schema_bc9fbfc32e2939087e1b877c2b51ce63f08c8cdfdcf7adca01505a0498ab5691"}],"description":"Names of template credentials to make available to the robot. When using your own AI provider keys, Transloadit charges a 30% markup (minimum $0.0005 per request)."},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"format":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["json","meta","text"],"type":"string"}],"default":"json"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"mcp_servers":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"items":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"additionalProperties":true,"properties":{"allowed_tools":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"items":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"type":"array"}],"description":"Optional allowlist of tool names to expose from this MCP server. If omitted, all tools exposed by the server are available to the model."},"auth":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["transloadit"],"type":"string"}]},"headers":{"additionalProperties":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"type":"object"},"type":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["http","sse"],"type":"string"}]},"url":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]}},"required":["type","url"],"type":"object"}]},"type":"array"}],"description":"The MCP servers to use for tool calling. You can use any MCP server reachable from your environment. Use `headers` to pass server-specific auth (for example `Authorization: Bearer <token>`). For Transloadit's MCP server: Bearer tokens minted via `/token` satisfy Signature Authentication (signature checks apply only to key/secret requests). `auth: \"transloadit\"` is reserved for API2-managed auth to Transloadit-hosted MCP servers."},"messages":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"items":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"anyOf":[{"additionalProperties":true,"properties":{"content":{"type":"string"},"experimental_providerMetadata":{},"providerOptions":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"role":{"const":"system","type":"string"}},"required":["content","providerOptions","role"],"type":"object"},{"additionalProperties":true,"properties":{"content":{"type":"string"},"experimental_providerMetadata":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"providerOptions":{"not":{}},"role":{"const":"system","type":"string"}},"required":["content","role"],"type":"object"},{"additionalProperties":true,"properties":{"content":{"type":"string"},"experimental_providerMetadata":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"providerOptions":{"type":"null"},"role":{"const":"system","type":"string"}},"required":["content","providerOptions","role"],"type":"object"}]},{"anyOf":[{"additionalProperties":true,"properties":{"content":{"$ref":"#/components/schemas/Schema_31383ce8a17e7fd91b6ce6f73c717c5f1cc2566572a021956e9d19d8adcce115"},"experimental_providerMetadata":{},"providerOptions":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"role":{"const":"user","type":"string"}},"required":["content","providerOptions","role"],"type":"object"},{"additionalProperties":true,"properties":{"content":{"$ref":"#/components/schemas/Schema_31383ce8a17e7fd91b6ce6f73c717c5f1cc2566572a021956e9d19d8adcce115"},"experimental_providerMetadata":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"providerOptions":{"not":{}},"role":{"const":"user","type":"string"}},"required":["content","role"],"type":"object"},{"additionalProperties":true,"properties":{"content":{"$ref":"#/components/schemas/Schema_31383ce8a17e7fd91b6ce6f73c717c5f1cc2566572a021956e9d19d8adcce115"},"experimental_providerMetadata":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"providerOptions":{"type":"null"},"role":{"const":"user","type":"string"}},"required":["content","providerOptions","role"],"type":"object"}]},{"anyOf":[{"additionalProperties":true,"properties":{"content":{"$ref":"#/components/schemas/Schema_7dc4ae103441fca5fb76bc40a593999f65fb8afc1061010fdd2e79963d8703f6"},"experimental_providerMetadata":{},"providerOptions":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"role":{"const":"assistant","type":"string"}},"required":["content","providerOptions","role"],"type":"object"},{"additionalProperties":true,"properties":{"content":{"$ref":"#/components/schemas/Schema_7dc4ae103441fca5fb76bc40a593999f65fb8afc1061010fdd2e79963d8703f6"},"experimental_providerMetadata":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"providerOptions":{"not":{}},"role":{"const":"assistant","type":"string"}},"required":["content","role"],"type":"object"},{"additionalProperties":true,"properties":{"content":{"$ref":"#/components/schemas/Schema_7dc4ae103441fca5fb76bc40a593999f65fb8afc1061010fdd2e79963d8703f6"},"experimental_providerMetadata":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"providerOptions":{"type":"null"},"role":{"const":"assistant","type":"string"}},"required":["content","providerOptions","role"],"type":"object"}]},{"anyOf":[{"additionalProperties":true,"properties":{"content":{"$ref":"#/components/schemas/Schema_fabb2852b06e3649616f400bfad1a559c443979f014f42891783fee36fb0847b"},"experimental_providerMetadata":{},"providerOptions":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"role":{"const":"tool","type":"string"}},"required":["content","providerOptions","role"],"type":"object"},{"additionalProperties":true,"properties":{"content":{"$ref":"#/components/schemas/Schema_fabb2852b06e3649616f400bfad1a559c443979f014f42891783fee36fb0847b"},"experimental_providerMetadata":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"providerOptions":{"not":{}},"role":{"const":"tool","type":"string"}},"required":["content","role"],"type":"object"},{"additionalProperties":true,"properties":{"content":{"$ref":"#/components/schemas/Schema_fabb2852b06e3649616f400bfad1a559c443979f014f42891783fee36fb0847b"},"experimental_providerMetadata":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"providerOptions":{"type":"null"},"role":{"const":"tool","type":"string"}},"required":["content","providerOptions","role"],"type":"object"}]}]}]},"type":"array"}]}],"description":"The prompt, or message history to send to the LLM."},"model":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["anthropic/claude-4-opus-20250514","anthropic/claude-4-sonnet-20250514","anthropic/claude-fable-5","anthropic/claude-fable-5-1","anthropic/claude-opus-4-20250514","anthropic/claude-opus-4-5","anthropic/claude-opus-4-6","anthropic/claude-opus-4-7","anthropic/claude-opus-4-8","anthropic/claude-opus-5","anthropic/claude-opus-5-5","anthropic/claude-sonnet-4-20250514","anthropic/claude-sonnet-4-5","anthropic/claude-sonnet-4-6","anthropic/claude-sonnet-5","anthropic/claude-sonnet-5-5","google/gemini-2.5-pro","moonshot/kimi-k2","openai/chatgpt-4o-latest","openai/gpt-4.1-2025-04-14","openai/gpt-4o-audio-preview","openai/gpt-5.2","openai/gpt-5.2-2025-12-11","openai/gpt-5.2-chat-latest","openai/gpt-5.2-pro","openai/gpt-5.4","openai/gpt-5.4-mini","openai/gpt-5.4-nano","openai/gpt-5.5","openai/gpt-5.6-sol","openai/gpt-6-astra","openai/gpt-6.1-sol","openai/gpt-audio","openai/gpt-audio-2025-08-28","openai/o3-2025-04-16"],"type":"string"}]},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":"auto","type":"string"}]}],"default":"auto","description":"The model to use. Transloadit can pick the best model for the job if you set this to \"auto\"."},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"reasoning_effort":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["high","low","medium","xhigh"],"type":"string"}],"description":"Controls how much effort the model spends on reasoning. Higher values produce more thorough responses but cost more tokens. Applies to models that support extended thinking (OpenAI o-series, GPT-5.x, GPT-6, Anthropic Claude with thinking). If omitted, the model default is used."},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"return_messages":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["all","last"],"type":"string"}],"default":"last"},"robot":{"const":"/ai/chat","description":"## Analyze files with an LLM\n\nConnect an input Step explicitly with `use`. Text files are read into the conversation automatically. PDFs require a PDF-capable model; PNG and JPEG inputs require an image-capable model. Convert other document formats to PDF first, and transcribe audio or video to text before using the recording workflows. Provider capabilities alone do not establish support through this Robot.\n\nFor OCR or transcription pipelines, choose `format: \"text\"` on the upstream Step, then reference that Step with `use` on `/ai/chat`. You do not need to interpolate the file contents into `messages`.\n\nThe `schema` parameter must be a **string containing JSON Schema**, not an inline object. Use `format: \"json\"` with a serialized schema for structured fields, or `format: \"text\"` for an answer file. Set `result: true` to expose that file in Assembly Status and download its `ssl_url` to read the answer. Result URLs are temporary; add an export Step for durable storage.\n\nSupply a matching AI provider Template Credential with `credentials`, or use billed `test_credentials: true` for testing. These are separate from Transloadit request authentication. The example below uses a Template Credential named `my_anthropic_credentials` and exposes its JSON file with `result: true`. `model: \"auto\"` resolves to a configured default; select an explicitly supported PDF-capable model when passing a PDF.\n\nStart with the [complete file-processing examples](/guides/ai-file-processing-workflows/) for invoice JSON, PDF questions, recording summaries, and image descriptions. For a longer invoice application walkthrough, see the [document intelligence pipeline](/blog/2026/01/ai-document-intelligence-pipeline/).","type":"string"},"schema":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"The JSON Schema that the LLM should output"},"system_message":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"Set the system/developer prompt, if the model allows it. If this prompt contains literal documentation or code examples with `${...}` syntax, set `interpolate.system_message` to `false`."},"test_credentials":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"description":"Use Transloadit-provided credentials for testing. Usage is billed at provider cost plus a 30% markup (minimum $0.0005 per request)."},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["messages","robot"],"type":"object"},{"additionalProperties":false,"properties":{"bucket":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"bucket_region":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"The region of your Tigris bucket. This is optional as it can often be derived."},"credentials":{"$ref":"#/components/schemas/Schema_da4b2552b052756e5ae8eeb99dbf1e091e37dde4c980cbfaf0851697963fe691"},"files_per_page":{"$ref":"#/components/schemas/Schema_fb8110ac8e46afd357588fdb3f6e0487d14ea219ff23b237b83413793ce39f30"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"force_name":{"$ref":"#/components/schemas/Schema_e2d753e6b6111506a4565bdb18eccafd67d2027839616974639f5565d695fafd"},"host":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"ignore_errors":{"$ref":"#/components/schemas/Schema_03e4961eba9e9b422ce714f9224b8d47a380c80d27b8342a78ba4e2702feb4db"},"import_on_errors":{"$ref":"#/components/schemas/Schema_61808f40a326596fd9674ebbd91184b0a2e04f8c67eb49fdf9f9449580271ab8"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"key":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"page_number":{"$ref":"#/components/schemas/Schema_700ca6e236bc3ce29f7390532b108f5a864258e18588a743c9d63fff1d8ecf5d"},"path":{"$ref":"#/components/schemas/Schema_29b03e33e094714044bf936cf358f56ce8a49e8051c5e450b83befe9961c4ace"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"recursive":{"$ref":"#/components/schemas/Schema_2a04346246228d68b23baff4fd26615a3dabf4b0b635cea5e60d9c76cd4a0543"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"return_file_stubs":{"$ref":"#/components/schemas/Schema_7d0953e667a4e84601b14c25ec998d74076b0afded4b1fe7182cba7b5a1062f7"},"robot":{"const":"/tigris/import","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"secret":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["path","robot"],"type":"object"},{"additionalProperties":false,"properties":{"acl":{"$ref":"#/components/schemas/Schema_6f76a4b1c0011fc02a130479c0a33b50ca4ff841292c0a355755296647ce796a"},"bucket":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"bucket_region":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"The region of your Tigris bucket. This is optional as it can often be derived."},"credentials":{"$ref":"#/components/schemas/Schema_da4b2552b052756e5ae8eeb99dbf1e091e37dde4c980cbfaf0851697963fe691"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"headers":{"additionalProperties":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"default":{"Content-Type":"${file.mime}"},"description":"\nAn object containing a list of headers to be set for this file on Tigris, such as `{ FileURL: \"${file.url_name}\" }`. This can also include any available [Assembly Variables](/docs/topics/assembly-instructions/#assembly-variables).\n\nObject Metadata can be specified using `x-amz-meta-*` headers. Note that these headers [do not support non-ASCII metadata values](https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#UserMetadata).\n","type":"object"},"host":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"key":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"path":{"$ref":"#/components/schemas/Schema_9e32d2e043ddaf27be258da25a42fb43c4a65680e4582d53c4c0e1d0b76908cf"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/tigris/store","description":"\nThe URL to the result file will be returned in the <dfn>Assembly Status JSON</dfn>.\n","type":"string"},"secret":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"sign_urls_for":{"$ref":"#/components/schemas/Schema_f9f059c6ff209141973277001e2fe4648f4c807fbffff7d8ff70e590dae4b4ad"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"enable_hipaa_compliance":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"When enabled, use the HIPAA-compliant Smart CDN pricing profile for this delivery step (20% lower price factor). When disabled, the non-HIPAA baseline price factor applies."},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/tlcdn/deliver","description":"\nWhen you want Transloadit to transform files on the fly, this <dfn>Robot</dfn> can cache and deliver the results close to your end-user, saving on latency and encoding volume. The use of this <dfn>Robot</dfn> is implicit when you use the <code>tlcdn.com</code> domain.\n","type":"string"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"conflict_strategy":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["error","overwrite","rename"],"type":"string"}],"default":"error","description":"\nChooses how to handle an existing destination. By default, an occupied path fails. Select\n`rename` to allocate a different filename, or `overwrite` to create a new version of the\nexisting asset. Always save the returned asset identity, version and final path.\n"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"path":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"default":"${file.url_name}","description":"\nSets the destination path inside your Transloadit Storage workspace, relative to its root: a\nfilename, or folders and a filename such as `website/hero.jpg`. Folders that do not exist yet\nare created.\n"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/transloadit/store","description":"\nStores each input privately in Transloadit Storage.\n\nAfter `ASSEMBLY_COMPLETED`, save the stored result from `results[producingStep][i]` with\nyour application's owner or project record. Keep its `workspace`, `asset_id`, `version_id` and returned `path`.\nA Step storing `:original` reports in `results[':original']`.\n\nCollisions fail by default; explicit renaming can change the final path. Use the asset and version\nIDs with 🤖/transloadit/import to reuse exact retained bytes after a native catalog rename or overwrite.\nA path selects the current location; an asset ID without a version selects its current bytes.\nDeleting an asset or removing a retained version makes that reference unavailable.\n","type":"string"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"credentials":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nCreate <dfn>Template Credentials</dfn> for this <dfn>Robot</dfn> in your [Transloadit account](/c/template-credentials/) and use the name of the <dfn>Template Credentials</dfn> as this parameter's value. For this <dfn>Robot</dfn>, use the HTTP template, which allows request headers to be passed along to the destination server.\n"},"endpoint":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"description":"\nThe URL of the Tus-compatible server, which you're uploading files to.\n","pattern":"^[Hh][Tt][Tt][Pp][Ss]?:\\/\\/(?:[^ ]|[ ])","type":"string","x-transloadit-input-fidelity":"conservative"}],"description":"\nThe URL of the Tus-compatible server, which you're uploading files to.\n"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"headers":{"additionalProperties":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"default":{},"description":"\nOptional extra headers outside of the <dfn>Template Credentials</dfn> can be passed along within this parameter.\n\nAlthough, we recommend to exclusively use <dfn>Template Credentials</dfn>, this may be necessary if you're looking to use dynamic credentials, which isn't a feature supported by <dfn>Template Credentials</dfn>.\n","type":"object"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"metadata":{"additionalProperties":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"default":{"basename":"example","extension":"png","filename":"example.png"},"description":"\nMetadata to pass along to destination. Includes some file info by default.\n","type":"object"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/tus/store","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"ssl_url_template":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nThe SSL URL of the file in the <dfn>Assembly Status JSON</dfn>. The following [Assembly Variables](/docs/topics/assembly-instructions/#assembly-variables) are supported. If this is not specified, the upload URL specified by the destination server will be used instead, as long as it starts with `https`.\n"},"url_template":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nThe URL of the file in the <dfn>Assembly Status JSON</dfn>. The following [Assembly Variables](/docs/topics/assembly-instructions/#assembly-variables) are supported. If this is not specified, the upload URL specified by the destination server will be used instead.\n"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["endpoint","robot"],"type":"object"},{"additionalProperties":false,"properties":{"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/upload/handle","description":"\nTransloadit handles file uploads by default, so specifying this <dfn>Robot</dfn> is optional.\n\nIt can still be a good idea to define this <dfn>Robot</dfn>, though. It makes your <dfn>Assembly Instructions</dfn> explicit, and allows you to configure exactly how uploads should be handled. For example, you can extract specific metadata from the uploaded files.\n\nThere are **3 important constraints** when using this <dfn>Robot</dfn>:\n\n1. Don’t define a `use` parameter, unlike with other <dfn>Robots</dfn>.\n2. Use it only once in a single set of <dfn>Assembly Instructions</dfn>.\n3. Name the Step as `:original`.\n","type":"string"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"audio_group":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nWhen set to `true` and using the `\"hls\"` technique, audio-only input files are treated as alternate audio renditions instead of standalone stream variants. This enables players to offer audio track selection (e.g. for multiple languages). Audio-only files are listed as `#EXT-X-MEDIA:TYPE=AUDIO` entries in the multivariant playlist, and video variants reference them via the `AUDIO` attribute.\n\nWhen enabled, video inputs only include their video stream in the output segments (any muxed audio is excluded). Provide audio separately as audio-only input files.\n\nThis option is only supported for the `\"hls\"` technique and has no effect when using `\"dash\"`.\n"},"closed_captions":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":true,"description":"\nDetermines whether you want closed caption support when using the `\"hls\"` technique.\n"},"ffmpeg":{"$ref":"#/components/schemas/Schema_15464c9d28640e7bf8903ba6d26df07ca6adbb8f0503e291180fa8a4647ec8e5"},"ffmpeg_stack":{"$ref":"#/components/schemas/Schema_2af3b38087bd992e9cae66535831de488ac05a86fd19619f5cfd998074675a28"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"height":{"$ref":"#/components/schemas/Schema_1f5747f817d177d1a6318f567b28020a1c25097714b44829504283838cf33b39"},"hls_playlist_name":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nOnly used when `technique` is `\"cmaf\"`. Defines the filename for the generated HLS master playlist. The default is `\"playlist.m3u8\"`.\n"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"playlist_name":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nThe filename for the generated manifest/playlist file. The default is `\"playlist.mpd\"` if your `technique` is `\"dash\"`, and `\"playlist.m3u8\"` if your `technique` is `\"hls\"`.\nFor `\"cmaf\"`, this value names the MPEG-Dash manifest and defaults to `\"playlist.mpd\"`.\n"},"preset":{"$ref":"#/components/schemas/Schema_8ae0b8fbf79b68fb3deaf6da0348e39fc3fa033f61c4544fbb4b4e6cd48fb3b5"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/video/adaptive","description":"\nThis <dfn>Robot</dfn> accepts all types of video files and audio files. Do not forget to use <dfn>Step</dfn> bundling in your `use` parameter to make the <dfn>Robot</dfn> work on several input files at once.\n\nThis <dfn>Robot</dfn> is normally used in combination with [🤖/video/encode](/docs/robots/video-encode/). We have implemented video and audio encoding presets specifically for MPEG-Dash and HTTP Live Streaming support. These presets are prefixed with `\"dash/\"` and `\"hls/\"`. [View a HTTP Live Streaming demo here](/demos/video-encoding/implement-http-live-streaming/).\n\n### Required CORS settings for MPEG-Dash and HTTP Live Streaming\n\nPlaying back MPEG-Dash Manifest or HLS playlist files requires a proper CORS setup on the server-side. The file-serving server should be configured to add the following header fields to responses:\n\n```\nAccess-Control-Allow-Origin: *\nAccess-Control-Allow-Methods: GET\nAccess-Control-Allow-Headers: *\n```\n\nIf the files are stored in an Amazon S3 Bucket, you can use the following [CORS definition](https://docs.aws.amazon.com/AmazonS3/latest/userguide/ManageCorsUsing.html) to ensure the CORS header fields are set correctly:\n\n```json\n[\n  {\n    \"AllowedHeaders\": [\"*\"],\n    \"AllowedMethods\": [\"GET\"],\n    \"AllowedOrigins\": [\"*\"],\n    \"ExposeHeaders\": []\n  }\n]\n```\n\nTo set up CORS for your S3 bucket:\n\n1. Visit <https://s3.console.aws.amazon.com/s3/buckets/>\n1. Click on your bucket\n1. Click \"Permissions\"\n1. Edit \"Cross-origin resource sharing (CORS)\"\n\n### Storing Segments and Playlist files\n\nThe <dfn>Robot</dfn> gives its result files (segments, initialization segments, MPD manifest files and M3U8 playlist files) the right metadata property `relative_path`, so that you can store them easily using one of our storage <dfn>Robots</dfn>.\n\nIn the `path` parameter of the storage <dfn>Robot</dfn> of your choice, use the <dfn>Assembly Variable</dfn> `${file.meta.relative_path}` to store files in the proper paths to make the playlist files work.\n","type":"string"},"segment_duration":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"type":"integer"}],"default":10,"description":"\nThe duration for each segment in seconds.\n"},"technique":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["cmaf","dash","hls"],"type":"string"}],"default":"dash","description":"\nDetermines which streaming technique should be used. Supports `\"dash\"` for MPEG-Dash, `\"hls\"` for HTTP Live Streaming and `\"cmaf\"` for FFmpeg-based CMAF output with both MPEG-Dash and HLS manifests that reference the same fMP4 segments.\n"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"},"width":{"$ref":"#/components/schemas/Schema_3d1cd815592582c496b313ba416ab0870a5b847fedc48c1e411c39a5ef1d45f4"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"ffmpeg":{"$ref":"#/components/schemas/Schema_15464c9d28640e7bf8903ba6d26df07ca6adbb8f0503e291180fa8a4647ec8e5"},"ffmpeg_stack":{"$ref":"#/components/schemas/Schema_2af3b38087bd992e9cae66535831de488ac05a86fd19619f5cfd998074675a28"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"method":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["extract","insert"],"type":"string"}],"default":"extract","description":"\nWhat should be done with the video file. A value of `\"extract\"` means video artwork will be extracted. A value of `\"insert\"` means the provided image will be inserted as video artwork.\n"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"preset":{"$ref":"#/components/schemas/Schema_edecfbd5df4587f3777dedbf28e7de13ac7093ec263b82ed52f21f398e96aef1"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/video/artwork","description":"\nThis <dfn>Robot</dfn> extracts or inserts cover artwork in video files.\n\nFor extraction, it uses the image format embedded within the video file — most often, this is JPEG. If you need the image in a different format, pipe the result into [🤖/image/resize](/docs/robots/image-resize/).\n\nFor insertion, provide both a video file (as `\"video\"`) and an image file (as `\"image\"`) via the `use` parameter, and set `method` to `\"insert\"`. The image will be embedded as the cover artwork of the video file.\n","type":"string"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"audio_fade_seconds":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"type":"number"}],"default":1,"description":"\nWhen used this adds an audio fade in and out effect between each section of your concatenated video. The float value is used so if you want an audio delay effect of 500 milliseconds between each video section you would select `0.5`, however, integer values can also be represented.\n\nThis parameter does not add an audio fade effect at the beginning or end of your video. If you want to do so, create an additional [🤖/video/encode](/docs/robots/video-encode/) Step and use our `ffmpeg` parameter as shown in this [demo](/demos/audio-encoding/ffmpeg-fade-in-and-out/).\n\nPlease note this parameter is independent of adding video fades between sections.\n"},"chapter_markers":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nWhen set to `true`, the concatenated video will contain chapter markers at the positions where the input videos are joined. Each chapter will be titled with the basename of the corresponding input video file.\n\nThis is useful for navigation in video players that support chapter-based seeking.\n"},"ffmpeg":{"$ref":"#/components/schemas/Schema_15464c9d28640e7bf8903ba6d26df07ca6adbb8f0503e291180fa8a4647ec8e5"},"ffmpeg_stack":{"$ref":"#/components/schemas/Schema_2af3b38087bd992e9cae66535831de488ac05a86fd19619f5cfd998074675a28"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"height":{"$ref":"#/components/schemas/Schema_1f5747f817d177d1a6318f567b28020a1c25097714b44829504283838cf33b39"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"preset":{"$ref":"#/components/schemas/Schema_8ae0b8fbf79b68fb3deaf6da0348e39fc3fa033f61c4544fbb4b4e6cd48fb3b5"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/video/concat","description":"\n> [!Note]\n> Input videos may have differing dimensions and streams - the Robot can handle this fine. It will pre-transcode the input videos if necessary before concatenation at no additional cost.\n\nIt’s possible to concatenate a virtually infinite number of video files using [🤖/video/concat](/docs/robots/video-concat/).\n","type":"string"},"sort_by":{"$ref":"#/components/schemas/Schema_a529048b2ed32b0125d678e158645220b42861e2c3e5bf89f766bec34234c3e6"},"transition":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["crossfade","fade_to_black","none"],"type":"string"}],"default":"none","description":"\nSpecifies the transition effect to apply between concatenated video clips.\n\n- `\"none\"` (default): No transition effect. Videos are joined end-to-end.\n- `\"crossfade\"`: Applies a crossfade transition where the end of one clip gradually blends into the beginning of the next clip. Both video and audio are crossfaded.\n- `\"fade_to_black\"`: Applies a fade-to-black transition where each clip fades out to black before the next clip fades in from black.\n\nWhen using `\"crossfade\"` or `\"fade_to_black\"`, the `transition_duration` parameter controls how long the transition lasts. Note that crossfade transitions will reduce the total output duration since clips overlap during the transition.\n"},"transition_duration":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"type":"number"}],"default":1,"description":"\nThe duration of the transition effect in seconds. Only applies when `transition` is set to `\"crossfade\"` or `\"fade_to_black\"`.\n\nFor example, a value of `1.0` creates a 1-second transition between clips. The value can be a float for sub-second precision (e.g., `0.5` for 500 milliseconds) and must be greater than `0` whenever transitions are enabled.\n\nFor crossfade transitions, this is the overlap duration where both clips are visible. For fade_to_black transitions, this is the total time for the fade out and fade in (half for each). The applied transition is capped at half of the shorter clip in each transition pair.\n"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"},"video_fade_seconds":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"type":"number"}],"default":1,"description":"\nWhen used this adds a video fade in and out effect between each section of your concatenated video. The float value is used so if you want a video delay effect of 500 milliseconds between each video section you would select `0.5`, however, integer values can also be represented.\n\nThis parameter does not add a video fade effect at the beginning or end of your video. If you want to do so, create an additional [🤖/video/encode](/docs/robots/video-encode/) Step and use our `ffmpeg` parameter as shown in this [demo](/demos/video-encoding/concatenate-fade-effect/).\n\nPlease note this parameter is independent of adding audio fades between sections.\n"},"width":{"$ref":"#/components/schemas/Schema_3d1cd815592582c496b313ba416ab0870a5b847fedc48c1e411c39a5ef1d45f4"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"background":{"$ref":"#/components/schemas/Schema_ab6cb202a13202fba4568f38be6c2eb66d85fa4f009d0c2e5c0374caa3720092"},"chunk_duration":{"$ref":"#/components/schemas/Schema_61e4aff610f3824ac8dd05bda1b6369c1adee454f621b634fec0fc92e9d47fca"},"crop":{"$ref":"#/components/schemas/Schema_51c0c37ad30682e643ed8c42b6549dcdc58c0a40bc20a80edffd90f306774799"},"ffmpeg":{"$ref":"#/components/schemas/Schema_15464c9d28640e7bf8903ba6d26df07ca6adbb8f0503e291180fa8a4647ec8e5"},"ffmpeg_stack":{"$ref":"#/components/schemas/Schema_2af3b38087bd992e9cae66535831de488ac05a86fd19619f5cfd998074675a28"},"font_color":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"font_size":{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"height":{"$ref":"#/components/schemas/Schema_1f5747f817d177d1a6318f567b28020a1c25097714b44829504283838cf33b39"},"hint":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nEnables hinting for mp4 files, for RTP/RTSP streaming.\n"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"preset":{"$ref":"#/components/schemas/Schema_8ae0b8fbf79b68fb3deaf6da0348e39fc3fa033f61c4544fbb4b4e6cd48fb3b5"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"resize_strategy":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["crop","fillcrop","fit","min_fit","pad","stretch"],"type":"string"}],"default":"pad","description":"\nSee the [available resize strategies](/docs/topics/resize-strategies/).\n"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/video/encode","description":"\nThe /video/encode Robot is a versatile tool for video processing that handles transcoding, resizing, and watermarking. It supports various formats including modern standards like HEVC (H.265), and provides features such as presets for common devices, custom FFmpeg parameters for powerusers, watermark positioning, and more.\n\n## Adding text overlays with FFmpeg\n\nYou can add text overlays to videos using FFmpeg's `drawtext` filter through this <dfn>Robot</dfn>'s `ffmpeg` parameter. Here are two examples — one with the default font and one with a custom font family name:\n\n```json\n{\n  \"steps\": {\n    \":original\": {\n      \"robot\": \"/upload/handle\"\n    },\n    \"text_overlay_default\": {\n      \"use\": \":original\",\n      \"robot\": \"/video/encode\",\n      \"preset\": \"empty\",\n      \"ffmpeg_stack\": \"v7\",\n      \"ffmpeg\": {\n        \"codec:a\": \"copy\",\n        \"vf\": \"drawtext=text='My text overlay':fontcolor=white:fontsize=24:box=1:boxcolor=black@0.5:boxborderw=5:x=(w-text_w)/2:y=(h-text_h)/2\"\n      },\n      \"result\": true\n    },\n    \"text_overlay_custom\": {\n      \"use\": \":original\",\n      \"robot\": \"/video/encode\",\n      \"preset\": \"empty\",\n      \"ffmpeg_stack\": \"v7\",\n      \"ffmpeg\": {\n        \"codec:a\": \"copy\",\n        \"vf\": \"drawtext=font='Times New Roman':text='My text overlay':fontcolor=white:fontsize=24:box=1:boxcolor=black@0.5:boxborderw=5:x=(w-text_w)/2:y=(h-text_h)/2\"\n      },\n      \"result\": true\n    }\n  }\n}\n```\n\n**Notes:**\n\n- Use the `font` attribute to reference a font by family name with FFmpeg's `drawtext`\n- FFmpeg font family names typically do not contain dashes (e.g. `Times New Roman`), while\n  ImageMagick uses dashed names (e.g. `Times-New-Roman`).\n- File-loading `drawtext` options such as `textfile` and `fontfile` are not supported. Use\n  inline `text` and a font family name instead.\n- Preserve the source audio by setting `\"codec:a\": \"copy\"`.\n- Position text with the `x` and `y` expressions. The example above centers the text.\n\nSee the [live text overlay demo](/demos/video-encoding/add-text-overlay/).\n","type":"string"},"rotate":{"$ref":"#/components/schemas/Schema_1adc8fb22e78059aab386774d662e8df48ee3b04618a700b5c57c977233c2da2"},"segment":{"$ref":"#/components/schemas/Schema_5f01fb4b01d66fe04acae4dc72c06c3e596b90bfdb69032701207eeaf3b20dac"},"segment_duration":{"$ref":"#/components/schemas/Schema_770e432acf7b380989fa1175d6e236099b20eba3f78c8e91975f0754af64cece"},"segment_name":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"default":"","description":"\nThe name used for the final segment. Available variables are `${segment_prefix}`, `${segment_number}` and `${segment_id}` (which is a UUIDv4 without dashes).\n"},"segment_prefix":{"$ref":"#/components/schemas/Schema_25236cdbef40391d3c1398240835c11c3a6eb2794a27384c226f4c36b04fe3ac"},"segment_time_delta":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"type":"number"}],"description":"\nDelta to apply to segment duration. This is optional and allows fine-tuning of segment boundaries.\n"},"text_background_color":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"turbo":{"$ref":"#/components/schemas/Schema_5676da196f6b41f1c255b8817b30a3d853734c39f57c633f8d302e2f045e4774"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"},"watermark_duration":{"$ref":"#/components/schemas/Schema_67e7c93d5767738dbd2a81db5abd268abb0b8cf57ac4413d17abd2af92b33601"},"watermark_opacity":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"maximum":1,"minimum":0,"type":"number"}],"default":1,"description":"\nThe opacity of the watermark. Valid values are between `0` (invisible) and `1.0` (full visibility).\n"},"watermark_position":{"$ref":"#/components/schemas/Schema_34ea758dabb194a79bded7219bcc96870a03f1cc1f15c677263bc8b9fe6e21bc"},"watermark_resize_strategy":{"$ref":"#/components/schemas/Schema_bf85e496648760c51005fdb6400e54d4bcecbc6ac94262104cfe8dff90f6231c"},"watermark_size":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^[0-9]+%$","type":"string"}],"description":"\nThe size of the watermark, as a percentage, such as `\"50%\"`. How the watermark is resized greatly depends on the `watermark_resize_strategy`.\n"},"watermark_start_time":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"type":"number"}],"default":0,"description":"\nThe delay in seconds from the start of the video for the watermark to appear. By default the watermark is immediately shown.\n"},"watermark_url":{"$ref":"#/components/schemas/Schema_eb011f0e79199be8d971b4a81664e6348a59004fad86f313a1be55725503600d"},"watermark_x_offset":{"$ref":"#/components/schemas/Schema_be8d9cf87fa19191b4ae7951e8157ec31b58525767399fe496cb8d58a86d78be"},"watermark_y_offset":{"$ref":"#/components/schemas/Schema_ef358dbff7b7953b7b59de1e6075793d2495500cab96f4aeba4005431dcf0481"},"width":{"$ref":"#/components/schemas/Schema_3d1cd815592582c496b313ba416ab0870a5b847fedc48c1e411c39a5ef1d45f4"},"zoom":{"$ref":"#/components/schemas/Schema_91a0439dbbd92cd45383cfadc493423b2037036823521cb4160c86b270240132"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"aspect_ratio":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"Aspect ratio of the generated video."},"camera_motion":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"Camera movement type (e.g., pan-left, pan-right, zoom-in, zoom-out, orbit, static, dolly, crane)."},"duration":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"type":"number"}],"description":"Duration of the generated video in seconds."},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"format":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["gif","mp4"],"type":"string"}],"description":"Format of the generated video."},"fps":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"type":"number"}],"description":"Frames per second of the output video."},"height":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"type":"number"}],"description":"Height of the generated video."},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"model":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"The AI model to use for video generation. Defaults to minimax/video-01."},"motion_amount":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"type":"number"}],"description":"Controls the intensity of motion in the generated video."},"negative_prompt":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"Describes what should be avoided in the generated video."},"num_outputs":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"maximum":10,"minimum":1,"type":"integer"}],"description":"Number of video variants to generate."},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"prompt":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"description":"The prompt describing the desired video content.","type":"string"}],"description":"The prompt describing the desired video content."},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"reference_strength":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"type":"number"}],"description":"How closely the output should follow the reference input (0.0 - 1.0)."},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/video/generate","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"seed":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"type":"number"}],"description":"Seed for the random number generator."},"style":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"Style of the generated video."},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"},"width":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"type":"number"}],"description":"Width of the generated video."}},"required":["prompt","robot"],"type":"object"},{"additionalProperties":false,"properties":{"audio_delay":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"type":"number"}],"default":0,"description":"\nWhen merging a video and an audio file, and when merging images and an audio file to generate a video, this is the desired delay in seconds for the audio file to start playing. Imagine you merge a video file without sound and an audio file, but you wish the audio to start playing after 5 seconds and not immediately, then this is the parameter to use.\n"},"background":{"$ref":"#/components/schemas/Schema_ab6cb202a13202fba4568f38be6c2eb66d85fa4f009d0c2e5c0374caa3720092"},"duration":{"anyOf":[{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},{"type":"null"}],"default":null,"description":"\nWhen merging images to generate a video or when merging audio and video this is the desired target duration in seconds. The float value can take one decimal digit. If you want all images to be displayed exactly once, then you can set the duration according to this formula: `duration = numberOfImages / framerate`. This also works for the inverse framerate values like `1/5`.\n\nIf you set this value to `null` (default), then the duration of the input audio file will be used when merging images with an audio file.\n\nWhen merging audio files and video files, the duration of the longest video or audio file is used by default.\n"},"ffmpeg":{"$ref":"#/components/schemas/Schema_15464c9d28640e7bf8903ba6d26df07ca6adbb8f0503e291180fa8a4647ec8e5"},"ffmpeg_stack":{"$ref":"#/components/schemas/Schema_2af3b38087bd992e9cae66535831de488ac05a86fd19619f5cfd998074675a28"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"framerate":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":1,"type":"integer"}]},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^[0-9]+(?:\\/[0-9]+)?$","type":"string"}]}],"default":"1/5","description":"\nWhen merging images to generate a video this is the input framerate. A value of \"1/5\" means each image is given 5 seconds before the next frame appears (the inverse of a framerate of \"5\"). Likewise for \"1/10\", \"1/20\", etc. A value of \"5\" means there are 5 frames per second.\n"},"height":{"$ref":"#/components/schemas/Schema_1f5747f817d177d1a6318f567b28020a1c25097714b44829504283838cf33b39"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"image_durations":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"items":{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},"type":"array"}],"default":[],"description":"\nWhen merging images to generate a video this allows you to define how long (in seconds) each image will be shown inside of the video. So if you pass 3 images and define `[2.4, 5.6, 9]` the first image will be shown for 2.4s, the second image for 5.6s and the last one for 9s. The `duration` parameter will automatically be set to the sum of the image_durations, so `17` in our example. It can still be overwritten, though, in which case the last image will be shown until the defined duration is reached.\n"},"image_url":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^[Hh][Tt][Tt][Pp][Ss]?:\\/\\/(?:[^ ]|[ ])","type":"string","x-transloadit-input-fidelity":"conservative"}],"description":"\nThe URL of an image to be merged with the audio or video. When this parameter is provided, the robot will download the image from the URL and merge it with the other media.\n"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"loop":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nDetermines whether the shorter media file should be looped to match the duration of the longer one. For example, if you merge a 1-minute video with a 3-minute audio file and enable this option, the video will play three times in a row to match the audio length.\n"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"preset":{"$ref":"#/components/schemas/Schema_8ae0b8fbf79b68fb3deaf6da0348e39fc3fa033f61c4544fbb4b4e6cd48fb3b5"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"replace_audio":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nDetermines whether the audio of the video should be replaced with a provided audio file.\n"},"resize_strategy":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["crop","fillcrop","fit","min_fit","pad","stretch"],"type":"string"}],"default":"pad","description":"\nIf the given width/height parameters are bigger than the input image's dimensions, then the `resize_strategy` determines how the image will be resized to match the provided width/height. See the [available resize strategies](/docs/topics/resize-strategies/).\n"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/video/merge","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"sort_by":{"$ref":"#/components/schemas/Schema_a529048b2ed32b0125d678e158645220b42861e2c3e5bf89f766bec34234c3e6"},"transition":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["crossfade","fade_to_black","none"],"type":"string"}],"default":"none","description":"\nThe type of transition effect to apply between concatenated video clips. Only applies when concatenating multiple videos (using `video_1`, `video_2`, etc. or `pre_roll`/`post_roll` inputs).\n\n- `\"none\"` — No transition effect. Videos are joined end-to-end.\n- `\"crossfade\"` — A gradual blend from one clip to the next (both video and audio).\n- `\"fade_to_black\"` — The current clip fades out to black, then the next clip fades in from black.\n"},"transition_duration":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"type":"number"}],"default":1,"description":"\nThe duration of the transition effect in seconds. Only applies when `transition` is not `\"none\"`. Supports float values (e.g., `0.5` for a 500ms transition) and must be greater than `0` whenever transitions are enabled. The applied transition is automatically capped at half of the shorter clip in each transition pair to prevent overlapping transitions.\n"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"},"vstack":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nStacks the input media vertically. All streams need to have the same pixel format and width - so consider using a [/video/encode](/docs/robots/video-encode/) <dfn>Step</dfn> before using this parameter to enforce this.\n"},"width":{"$ref":"#/components/schemas/Schema_3d1cd815592582c496b313ba416ab0870a5b847fedc48c1e411c39a5ef1d45f4"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"asset":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"Controls which file is generated. For example, if the parameter is unset, a multivariant playlist referencing the variants is generated."},"asset_param_name":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"default":"asset","description":"Specifies from which URL parameter the asset parameter value is taken and which URL parameter to use when generating playlist files."},"enabled_variants":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},{"$ref":"#/components/schemas/Schema_bc9fbfc32e2939087e1b877c2b51ce63f08c8cdfdcf7adca01505a0498ab5691"}],"description":"Specifies which variants, defined in the variants parameter, are enabled. Non-enabled variants will not be included in the multivariant playlist."},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/video/ondemand","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"segment_duration":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"type":"number"}],"default":6,"description":"The duration of each segment in seconds."},"sign_urls_for":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"type":"number"}],"default":0,"description":"When signing URLs is enabled, the URLs in the generated playlist files will be signed. This parameter specifies the duration (in seconds) that the signed URLs will remain valid. Use the modern `sig` + `exp` format for new integrations. Legacy `s` signatures are deprecated. Shorter expirations reduce the replay window, but they also reduce cache reuse and can increase segment re-generation and latency."},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"},"variants":{"additionalProperties":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"additionalProperties":false,"properties":{"background":{"$ref":"#/components/schemas/Schema_ab6cb202a13202fba4568f38be6c2eb66d85fa4f009d0c2e5c0374caa3720092"},"chunk_duration":{"$ref":"#/components/schemas/Schema_61e4aff610f3824ac8dd05bda1b6369c1adee454f621b634fec0fc92e9d47fca"},"crop":{"$ref":"#/components/schemas/Schema_51c0c37ad30682e643ed8c42b6549dcdc58c0a40bc20a80edffd90f306774799"},"ffmpeg":{"$ref":"#/components/schemas/Schema_15464c9d28640e7bf8903ba6d26df07ca6adbb8f0503e291180fa8a4647ec8e5"},"ffmpeg_stack":{"$ref":"#/components/schemas/Schema_2af3b38087bd992e9cae66535831de488ac05a86fd19619f5cfd998074675a28"},"height":{"$ref":"#/components/schemas/Schema_1f5747f817d177d1a6318f567b28020a1c25097714b44829504283838cf33b39"},"hint":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nEnables hinting for mp4 files, for RTP/RTSP streaming.\n"},"preset":{"$ref":"#/components/schemas/Schema_8ae0b8fbf79b68fb3deaf6da0348e39fc3fa033f61c4544fbb4b4e6cd48fb3b5"},"resize_strategy":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["crop","fillcrop","fit","min_fit","pad","stretch"],"type":"string"}],"default":"pad","description":"\nSee the [available resize strategies](/docs/topics/resize-strategies/).\n"},"rotate":{"$ref":"#/components/schemas/Schema_1adc8fb22e78059aab386774d662e8df48ee3b04618a700b5c57c977233c2da2"},"segment":{"$ref":"#/components/schemas/Schema_5f01fb4b01d66fe04acae4dc72c06c3e596b90bfdb69032701207eeaf3b20dac"},"segment_duration":{"$ref":"#/components/schemas/Schema_770e432acf7b380989fa1175d6e236099b20eba3f78c8e91975f0754af64cece"},"segment_name":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"default":"","description":"\nThe name used for the final segment. Available variables are `${segment_prefix}`, `${segment_number}` and `${segment_id}` (which is a UUIDv4 without dashes).\n"},"segment_prefix":{"$ref":"#/components/schemas/Schema_25236cdbef40391d3c1398240835c11c3a6eb2794a27384c226f4c36b04fe3ac"},"segment_time_delta":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"type":"number"}],"description":"\nDelta to apply to segment duration. This is optional and allows fine-tuning of segment boundaries.\n"},"turbo":{"$ref":"#/components/schemas/Schema_5676da196f6b41f1c255b8817b30a3d853734c39f57c633f8d302e2f045e4774"},"watermark_duration":{"$ref":"#/components/schemas/Schema_67e7c93d5767738dbd2a81db5abd268abb0b8cf57ac4413d17abd2af92b33601"},"watermark_opacity":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"maximum":1,"minimum":0,"type":"number"}],"default":1,"description":"\nThe opacity of the watermark. Valid values are between `0` (invisible) and `1.0` (full visibility).\n"},"watermark_position":{"$ref":"#/components/schemas/Schema_34ea758dabb194a79bded7219bcc96870a03f1cc1f15c677263bc8b9fe6e21bc"},"watermark_resize_strategy":{"$ref":"#/components/schemas/Schema_bf85e496648760c51005fdb6400e54d4bcecbc6ac94262104cfe8dff90f6231c"},"watermark_size":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^[0-9]+%$","type":"string"}],"description":"\nThe size of the watermark, as a percentage, such as `\"50%\"`. How the watermark is resized greatly depends on the `watermark_resize_strategy`.\n"},"watermark_start_time":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"type":"number"}],"default":0,"description":"\nThe delay in seconds from the start of the video for the watermark to appear. By default the watermark is immediately shown.\n"},"watermark_url":{"$ref":"#/components/schemas/Schema_eb011f0e79199be8d971b4a81664e6348a59004fad86f313a1be55725503600d"},"watermark_x_offset":{"$ref":"#/components/schemas/Schema_be8d9cf87fa19191b4ae7951e8157ec31b58525767399fe496cb8d58a86d78be"},"watermark_y_offset":{"$ref":"#/components/schemas/Schema_ef358dbff7b7953b7b59de1e6075793d2495500cab96f4aeba4005431dcf0481"},"width":{"$ref":"#/components/schemas/Schema_3d1cd815592582c496b313ba416ab0870a5b847fedc48c1e411c39a5ef1d45f4"},"zoom":{"$ref":"#/components/schemas/Schema_91a0439dbbd92cd45383cfadc493423b2037036823521cb4160c86b270240132"}},"type":"object"}]},"description":"Defines the variants the video player can choose from. The keys are the names of the variant as they will appear in the generated playlists and URLs.","type":"object"}},"required":["robot","variants"],"type":"object"},{"additionalProperties":false,"properties":{"ffmpeg":{"$ref":"#/components/schemas/Schema_15464c9d28640e7bf8903ba6d26df07ca6adbb8f0503e291180fa8a4647ec8e5"},"ffmpeg_stack":{"$ref":"#/components/schemas/Schema_2af3b38087bd992e9cae66535831de488ac05a86fd19619f5cfd998074675a28"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"height":{"$ref":"#/components/schemas/Schema_1f5747f817d177d1a6318f567b28020a1c25097714b44829504283838cf33b39"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"preset":{"$ref":"#/components/schemas/Schema_8ae0b8fbf79b68fb3deaf6da0348e39fc3fa033f61c4544fbb4b4e6cd48fb3b5"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/video/split","description":"\nSplits a video into multiple segments based on an array of from/to durations. Each segment produces a separate output file. This is useful for cutting a video into parts, for example to insert ads later via [🤖/video/concat](/docs/robots/video-concat/).\n","type":"string"},"segments":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"description":"\nAn array of objects, each specifying a segment to extract from the input video. Each object must have a `from` and `to` key indicating the start and end time of the segment.\n\nTimes can be specified as numbers (seconds) or as timecode strings (e.g. `\"00:01:30.000\"`).\n","items":{"$ref":"#/components/schemas/Schema_9681caa0aa6542ed2a643b183b7c36d228a47074be0dabdc585931c16610f02c"},"minItems":1,"type":"array"}]},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"},"width":{"$ref":"#/components/schemas/Schema_3d1cd815592582c496b313ba416ab0870a5b847fedc48c1e411c39a5ef1d45f4"}},"required":["robot","segments"],"type":"object"},{"additionalProperties":false,"properties":{"bold":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nSpecifies whether the subtitle text should be bold. Only applies to burned subtitles.\n"},"border_color":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^#?[0-9a-fA-F]{6}([0-9a-fA-F]{2})?$","type":"string"}],"default":"40000000","description":"\nThe color for the subtitle border. The first two hex digits specify the alpha value of the color.\n"},"border_style":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["box","outline","shadow"],"type":"string"}],"default":"outline","description":"\nSpecifies the style of the subtitle. Use the `border_color` parameter to specify the color of the border.\n"},"ffmpeg":{"$ref":"#/components/schemas/Schema_15464c9d28640e7bf8903ba6d26df07ca6adbb8f0503e291180fa8a4647ec8e5"},"ffmpeg_stack":{"$ref":"#/components/schemas/Schema_2af3b38087bd992e9cae66535831de488ac05a86fd19619f5cfd998074675a28"},"font":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"default":"Arial","description":"\nThe font family to use. Also includes boldness and style of the font.\n\n[Here](/docs/supported-formats/fonts/) is a list of all supported fonts.\n"},"font_color":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^#?[0-9a-fA-F]{3}([0-9a-fA-F]{3})?$","type":"string"}]},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^#?[0-9a-fA-F]{6}([0-9a-fA-F]{2})?$","type":"string"}]}],"default":"FFFFFF","description":"\nThe color of the subtitle text in `\"rgb\"`, `\"rrggbb\"`, or `\"aarrggbb\"` format. If 8 hex digits are provided, the first two specify the alpha value of the color (`\"00\"` is fully opaque, `\"ff\"` is fully transparent).\n"},"font_size":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":1,"type":"integer"}],"default":16,"description":"\nSpecifies the size of the text.\n"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"height":{"$ref":"#/components/schemas/Schema_1f5747f817d177d1a6318f567b28020a1c25097714b44829504283838cf33b39"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"italic":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nSpecifies whether the subtitle text should be italic. Only applies to burned subtitles.\n"},"keep_subtitles":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nSpecifies if existing subtitles in the input file should be kept or be replaced by the new subtitle. Only used if the subtitles are external. Set this to `true` when chaining multiple `/video/subtitle` Steps to add several subtitle streams (e.g. different languages) to the same video.\n"},"language":{"anyOf":[{"anyOf":[{"not":{}},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]}]},{"type":"null"}],"description":"\nSpecifies the language of the subtitle stream using a three-letter language code (e.g. `\"eng\"`, `\"deu\"`, `\"spa\"`). Only used if the subtitles are external. When adding multiple subtitle streams, set a different language for each stream so that video players can offer language selection.\n"},"name":{"anyOf":[{"anyOf":[{"not":{}},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]}]},{"type":"null"}],"description":"\nSpecifies a human-readable name for the subtitle track (e.g. `\"English\"`, `\"Deutsch\"`, `\"Español\"`). Only used if the subtitles are external. This name is displayed in video player subtitle menus alongside the language.\n"},"outline_width":{"anyOf":[{"anyOf":[{"not":{}},{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"maximum":10,"minimum":0,"type":"integer"}]}]},{"type":"null"}],"description":"\nSpecifies the width of the text outline in pixels. Only applies to burned subtitles with `\"outline\"` or `\"box\"` border styles. If not specified, the default width is used.\n"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"position":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["bottom","bottom-left","bottom-right","center","left","right","top","top-left","top-right"],"type":"string"}],"default":"bottom","description":"\nSpecifies the position of the subtitles.\n"},"preset":{"$ref":"#/components/schemas/Schema_8ae0b8fbf79b68fb3deaf6da0348e39fc3fa033f61c4544fbb4b4e6cd48fb3b5"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/video/subtitle","description":"\nThis <dfn>Robot</dfn> supports both SRT and VTT subtitle files.\n","type":"string"},"subtitles_type":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["burn","burned","external"],"type":"string"}],"default":"external","description":"\nDetermines if subtitles are added as a separate stream to the video (value `\"external\"`) that then can be switched on and off in your video player, or if they should be burned directly into the video (value `\"burned\"` or `\"burn\"`) so that they become part of the video stream.\n"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"},"width":{"$ref":"#/components/schemas/Schema_3d1cd815592582c496b313ba416ab0870a5b847fedc48c1e411c39a5ef1d45f4"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"background":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^#?[0-9a-fA-F]{6}([0-9a-fA-F]{2})?$","type":"string"}],"default":"#00000000","description":"\nThe background color of the resulting thumbnails in the `\"rrggbbaa\"` format (red, green, blue, alpha) when used with the `\"pad\"` resize strategy. The default color is black.\n"},"count":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"maximum":999,"minimum":1,"type":"integer"}],"default":8,"description":"\nThe number of thumbnails to be extracted. As some videos have incorrect durations, the actual number of thumbnails generated may be less in rare cases. The maximum number of thumbnails we currently allow is 999.\n\nThe thumbnails are taken at regular intervals, determined by dividing the video duration by the count. For example, a count of 3 will produce thumbnails at 25%, 50% and 75% through the video.\n\nTo extract thumbnails for specific timestamps, use the `offsets` parameter.\n"},"ffmpeg":{"$ref":"#/components/schemas/Schema_15464c9d28640e7bf8903ba6d26df07ca6adbb8f0503e291180fa8a4647ec8e5"},"ffmpeg_stack":{"$ref":"#/components/schemas/Schema_2af3b38087bd992e9cae66535831de488ac05a86fd19619f5cfd998074675a28"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"format":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["jpeg","jpg","png"],"type":"string"}],"default":"jpeg","description":"\nThe format of the extracted thumbnail. Supported values are `\"jpg\"`, `\"jpeg\"` and `\"png\"`. Even if you specify the format to be `\"jpeg\"` the resulting thumbnails will have a `\"jpg\"` file extension.\n"},"height":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"maximum":1080,"minimum":1,"type":"integer"}],"description":"\nThe height of the thumbnail, in pixels. Defaults to the original height of the video.\n"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"input_codec":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nSpecifies the input codec to use when decoding the video. This is useful for videos with special codecs that require specific decoders.\n"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"offsets":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"items":{"$ref":"#/components/schemas/Schema_30573475089cec428fa966ac94d74114e316d676d5e62f4c710cb1a87589b4f0"},"type":"array"}]},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"items":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^[0-9]+%$","type":"string"}]},"type":"array"}]}],"default":[],"description":"\nAn array of offsets representing seconds of the file duration, such as `[ 2, 45, 120 ]`. Millisecond durations of a file can also be used by using decimal place values. For example, an offset from 1250 milliseconds would be represented with `1.25`. Offsets can also be percentage values such as `[ \"2%\", \"50%\", \"75%\" ]`.\n\nThis option cannot be used with the `count` parameter, and takes precedence if both are specified. Out-of-range offsets are silently ignored.\n\nWhen `smart` is `true`, smart selection ignores `offsets` and uses `count` to select from its own candidate timestamps. If no smart candidates can be extracted, the Robot falls back to standard extraction, where `offsets` takes precedence. Use `smart: false` to consistently extract the specified timestamps.\n"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"resize_strategy":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["crop","fillcrop","fit","min_fit","pad","stretch"],"type":"string"}],"default":"pad","description":"\nOne of the [available resize strategies](/docs/topics/resize-strategies/).\n"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/video/thumbs","description":"\nSet `smart: true` to select strong preview images with AI instead of taking frames only at regular intervals. The Robot scores candidate frames for clarity, brightness, composition, faces, expressions, action, and visual interest, then returns the best `count` frames in chronological order. Smart results include `file.meta.smart_score` and `file.meta.smart_reasons`. If AI scoring is unavailable, the Assembly continues with the candidate frames in fallback order and includes a warning. No AI credentials are required.\n\n## AI pricing\n\nRegular `/video/thumbs` processing charges still apply. AI frame analysis is billed separately at the underlying provider cost plus a 50% Transloadit markup. The exact AI charge varies with the number of candidate frames, the internally selected model and provider pricing, and the image payload size.\n\n`smart_max_candidates` is the main cost and latency control. The Robot analyzes up to three candidates per requested thumbnail, capped by `smart_max_candidates`, but never fewer than `count`. With the defaults of `count: 8` and `smart_max_candidates: 20`, it analyzes 20 frames and returns the best 8. Lower the candidate limit to reduce AI cost and latency; raise it to give the AI more frames to choose from.\n\n> [!Note]\n> Use `count` with smart selection. To consistently extract exact timestamps with `offsets`, set `smart: false`.\n\n> [!Note]\n> Even though thumbnails are extracted from videos in parallel, we sort the thumbnails before adding them to the Assembly results. So the order in which they appear there reflects the order in which they appear in the video. You can also make sure by checking the `thumb_index` meta key.\n\nFor an upload-to-poster Template, SDK usage, and publication checks, see the [HTML video workflow guide](/guides/html-video-production-checklist/#html-video-production-checklist-section-6). The [video and S3 demo](/demos/file-exporting/store-encoding-and-thumbnails-on-s3/) includes a recorded input and extracted frames.\n","type":"string"},"rotate":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":0,"type":"number"}]},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":90,"type":"number"}]},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":180,"type":"number"}]},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":270,"type":"number"}]},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":360,"type":"number"}]}],"default":0,"description":"\nForces the video to be rotated by the specified degree integer. Currently, only multiples of 90 are supported. We automatically correct the orientation of many videos when the orientation is provided by the camera. This option is only useful for videos requiring rotation because it was not detected by the camera.\n"},"smart":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nWhen set to `true`, enables AI-powered smart thumbnail selection. Instead of returning thumbnails at regular intervals, the Robot will analyze candidate frames and select the most visually appealing ones.\n\nThe AI evaluates frames based on:\n- Visual clarity (avoiding blurry or dark frames)\n- Composition quality\n- Face presence and expressions\n- Action and motion (avoiding transition frames)\n- Overall visual interest\n\nRegular `/video/thumbs` processing charges still apply. AI frame analysis is billed separately at the underlying provider cost plus a 50% Transloadit markup. You do not need to provide AI credentials.\n\nSmart mode generates its own regularly spaced candidate timestamps; use `smart: false` with `offsets` when you need specified timestamps. Selected smart thumbnails are returned in chronological order, not score order. Inspect `meta.thumb_offset`, `meta.smart_score`, and `meta.smart_reasons` when evaluating the selection.\n\nIf AI scoring fails, the Robot selects extracted candidates in chronological order and records a fallback reason. With no candidates, it attempts standard extraction. Both fallbacks add an Assembly warning. A completed Assembly does not guarantee a representative or publication-safe poster; check that outputs exist and apply your application’s review policy.\n"},"smart_max_candidates":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"maximum":100,"minimum":2,"type":"integer"}],"default":20,"description":"\nThe maximum size of the candidate pool when `smart` is `true`. The Robot analyzes up to three candidates per requested thumbnail, capped by this value, but it will never analyze fewer candidates than the requested `count`.\n\nA higher number may yield better results but increases processing time and AI cost. With the defaults of `count: 8` and `smart_max_candidates: 20`, the Robot analyzes 20 frames and returns the best 8 in chronological order.\n\nThis parameter is only used when `smart` is `true`.\n"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"},"width":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"maximum":1920,"minimum":1,"type":"integer"}],"description":"\nThe width of the thumbnail, in pixels. Defaults to the original width of the video.\n"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"credentials":{"$ref":"#/components/schemas/Schema_ff500423b78c329151c169aeb34426a68588363f1686c1a5d1c35c7b0c5437fa"},"files_per_page":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"exclusiveMinimum":0,"maximum":100,"type":"integer"}],"default":20,"description":"The number of files to import per page. Maximum is 100 as per Vimeo API limits."},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"force_name":{"$ref":"#/components/schemas/Schema_e2d753e6b6111506a4565bdb18eccafd67d2027839616974639f5565d695fafd"},"ignore_errors":{"$ref":"#/components/schemas/Schema_03e4961eba9e9b422ce714f9224b8d47a380c80d27b8342a78ba4e2702feb4db"},"import_on_errors":{"$ref":"#/components/schemas/Schema_61808f40a326596fd9674ebbd91184b0a2e04f8c67eb49fdf9f9449580271ab8"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"page_number":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"exclusiveMinimum":0,"type":"integer"}],"default":1,"description":"The page number to import from. Vimeo API uses pagination for large result sets."},"path":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},{"$ref":"#/components/schemas/Schema_bc9fbfc32e2939087e1b877c2b51ce63f08c8cdfdcf7adca01505a0498ab5691"}],"default":"me/videos","description":"\nThe Vimeo API path to import from. The most common paths are:\n- `me/videos`: Your own videos\n- `me/likes`: Videos you've liked\n- `me/albums/:album_id/videos`: Videos from a specific album\n- `me/channels/:channel_id/videos`: Videos from a specific channel\n- `me/groups/:group_id/videos`: Videos from a specific group\n- `me/portfolios/:portfolio_id/videos`: Videos from a specific portfolio\n- `me/watchlater`: Videos in your watch later queue\n\nYou can also use an array of path strings here to import multiple paths in the same <dfn>Robot</dfn>'s <dfn>Step</dfn>.\n"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"rendition":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["1080p","240p","360p","540p","720p","source"],"type":"string"}],"default":"720p","description":"The quality of the video to import."},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/vimeo/import","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"acl":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["anybody","contacts","disable","nobody","password","unlisted","users"],"type":"string"}],"default":"anybody","description":"\nControls access permissions for the video. Here are the valid values:\n\n- `\"anybody\"` — anyone can access the video.\n- `\"contacts\"` — only those who follow the owner on Vimeo can access the video.\n- `\"disable\"` — the video is embeddable, but it's hidden on Vimeo and can't be played.\n- `\"nobody\"` — no one except the owner can access the video.\n- `\"password\"` — only those with the password can access the video.\n- `\"unlisted\"` — only those with the private link can access the video.\n- `\"users\"` — only Vimeo members can access the video.\n"},"credentials":{"$ref":"#/components/schemas/Schema_ff500423b78c329151c169aeb34426a68588363f1686c1a5d1c35c7b0c5437fa"},"description":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"description":"\nThe description of the video to be displayed on Vimeo.\n","type":"string"}],"description":"\nThe description of the video to be displayed on Vimeo.\n"},"downloadable":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"\nWhether or not the video can be downloaded from the Vimeo website.\n\nOnly set this to `true` if you have unlocked this feature in your Vimeo accounting by upgrading to their \"Pro\" plan. If you use it while on their Freemium plan, the Vimeo API will return an `\"Invalid parameter supplied\"` error.\n"},"folder_id":{"anyOf":[{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},{"type":"null"}],"default":null,"description":"\nThe ID of the folder to which the video is uploaded.\n\nWhen visiting one of your folders, the URL is similar to `https://vimeo.com/manage/folders/xxxxxxxx`. The folder_id would be `\"xxxxxxxx\"`.\n"},"folder_uri":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nDeprecated. Please use `folder_id` instead. The URI of the folder to which the video is uploaded.\n"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"password":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nThe password to access the video if `acl` is `\"password\"`.\n"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/vimeo/store","description":"\n## Getting started\n\nSince Vimeo works with OAuth, you will need to generate [Template Credentials](https://transloadit.com/c/template-credentials/) to use this <dfn>Robot</dfn>.\n\nTo change the `title` or `description` per video, we recommend to [inject variables into your Template](/docs/topics/templates/).\n\n> [!Warning]\n> Vimeo's API limits the number of concurrent uploads per minute based on your Vimeo account plan. To see how many videos can be uploaded at once based on your plan, click the following [link](https://developer.vimeo.com/guidelines/rate-limiting#table-1).\n\nNote that this <dfn>Robot</dfn> only accepts videos.\n","type":"string"},"showcases":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"items":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"type":"array"}],"default":[],"description":"\nAn array of string IDs of showcases that you want to add the video to. The IDs can be found when browsing Vimeo. For example `https://vimeo.com/manage/showcases/[SHOWCASE_ID]/info`.\n"},"title":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"description":"\nThe title of the video to be displayed on Vimeo.\n","type":"string"}],"description":"\nThe title of the video to be displayed on Vimeo.\n"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["description","robot","title"],"type":"object"},{"additionalProperties":false,"properties":{"bucket":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"bucket_region":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nThe region where the bucket is located.\n"},"credentials":{"$ref":"#/components/schemas/Schema_e7f76bc0019770ddc43271041ddff4141f276907f477fc7d8e4823eaf41072cc"},"files_per_page":{"$ref":"#/components/schemas/Schema_fb8110ac8e46afd357588fdb3f6e0487d14ea219ff23b237b83413793ce39f30"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"force_name":{"$ref":"#/components/schemas/Schema_e2d753e6b6111506a4565bdb18eccafd67d2027839616974639f5565d695fafd"},"host":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"ignore_errors":{"$ref":"#/components/schemas/Schema_03e4961eba9e9b422ce714f9224b8d47a380c80d27b8342a78ba4e2702feb4db"},"import_on_errors":{"$ref":"#/components/schemas/Schema_61808f40a326596fd9674ebbd91184b0a2e04f8c67eb49fdf9f9449580271ab8"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"key":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"page_number":{"$ref":"#/components/schemas/Schema_700ca6e236bc3ce29f7390532b108f5a864258e18588a743c9d63fff1d8ecf5d"},"path":{"$ref":"#/components/schemas/Schema_29b03e33e094714044bf936cf358f56ce8a49e8051c5e450b83befe9961c4ace"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"recursive":{"$ref":"#/components/schemas/Schema_8305335b6eafa6a9a8c0e5d531016c79ff3ffd63f98546b464a7fd0b9473ba0f"},"result":{"$ref":"#/components/schemas/Schema_ca159bf04e5ff3004e76aa992115890f7a332c46f90913826648557e7fc86b82"},"return_file_stubs":{"$ref":"#/components/schemas/Schema_7d0953e667a4e84601b14c25ec998d74076b0afded4b1fe7182cba7b5a1062f7"},"robot":{"const":"/wasabi/import","description":"Identifier of the [robot](https://transloadit.com/docs/robots/) to execute","type":"string"},"secret":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["path","robot"],"type":"object"},{"additionalProperties":false,"properties":{"acl":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["private","public-read"],"type":"string"}],"default":"private","description":"\nThe permissions used for this file.\n"},"bucket":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"bucket_region":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nThe region where the bucket is located.\n"},"credentials":{"$ref":"#/components/schemas/Schema_e7f76bc0019770ddc43271041ddff4141f276907f477fc7d8e4823eaf41072cc"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"headers":{"additionalProperties":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"default":{"Content-Type":"${file.mime}"},"description":"\nAn object containing a list of headers to be set for this file in your Wasabi bucket, such as `{ FileURL: \"${file.url_name}\" }`. This can also include any available [Assembly Variables](/docs/topics/assembly-instructions/#assembly-variables).\n\nObject Metadata can be specified using `x-amz-meta-*` headers. Note that these headers [do not support non-ASCII metadata values](https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#UserMetadata).\n","type":"object"},"host":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"key":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"path":{"$ref":"#/components/schemas/Schema_9e32d2e043ddaf27be258da25a42fb43c4a65680e4582d53c4c0e1d0b76908cf"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/wasabi/store","description":"\nThe URL to the result file will be returned in the <dfn>Assembly Status JSON</dfn>.\n","type":"string"},"secret":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"sign_urls_for":{"$ref":"#/components/schemas/Schema_6561742ad8531818ad835d63fdd348612b329189814a3953875b261e98fcb035"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"}},"required":["robot"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"description":"\nThe category to which this video will be assigned.\n","pattern":"^(?:[aA][uU][tT][oO][sS] & [vV][eE][hH][iI][cC][lL][eE][sS]|[cC][oO][mM][eE][dD][yY]|[eE][dD][uU][cC][aA][tT][iI][oO][nN]|[eE][nN][tT][eE][rR][tT][aA][iI][nN][mM][eE][nN][tT]|[fF][iI][lL][mM] & [aA][nN][iI][mM][aA][tT][iI][oO][nN]|[gG][aA][mM][iI][nN][gG]|[hH][oO][wW][tT][oO] & [sS][tT][yY][lL][eE]|[mM][uU][sS][iI][cC]|[nN][eE][wW][sS] & [pP][oO][lL][iI][tT][iI][cC][sS]|[pP][eE][oO][pP][lL][eE] & [bB][lL][oO][gG][sS]|[pP][eE][tT][sS] & [aA][nN][iI][mM][aA][lL][sS]|[sS][cC][iI][eE][nN][cC][eE] & [tT][eE][cC][hH][nN][oO][lL][oO][gG][yY]|[sS][pP][oO][rR][tT][sS]|[tT][rR][aA][vV][eE][lL] & [eE][vV][eE][nN][tT][sS])$","type":"string"}],"description":"\nThe category to which this video will be assigned.\n"},"credentials":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"description":"\nThe authentication Template credentials used for your YouTube account. You can generate them on the [Template Credentials page](/c/template-credentials/). Simply add the name of your YouTube channel, and you will be redirected to a Google verification page. Accept the presented permissions and you will be good to go.\n","type":"string"}],"description":"\nThe authentication Template credentials used for your YouTube account. You can generate them on the [Template Credentials page](/c/template-credentials/). Simply add the name of your YouTube channel, and you will be redirected to a Google verification page. Accept the presented permissions and you will be good to go.\n"},"description":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"description":"\nThe description of the video to be displayed on YouTube. This can be up to 5000 characters, including `\\n` for new-lines.\n","type":"string"}],"description":"\nThe description of the video to be displayed on YouTube. This can be up to 5000 characters, including `\\n` for new-lines.\n"},"force_accept":{"$ref":"#/components/schemas/Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"ignore_errors":{"$ref":"#/components/schemas/Schema_866196eee82a663b71c0a383fdfb2f39a777749440b227619ea17fc8101eb5f4"},"interpolate":{"$ref":"#/components/schemas/Schema_210bc4cac49d5a8403766e579b22242786bad39b0b9ff4753e56b678e29f38d4"},"keywords":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"description":"\nTags used to describe the video, separated by commas. These tags will also be displayed on YouTube.\n","type":"string"}],"description":"\nTags used to describe the video, separated by commas. These tags will also be displayed on YouTube.\n"},"output_meta":{"$ref":"#/components/schemas/Schema_60f6dcc23a68fee86135afddfdf2d63c170b886a6deb46563e7193f688ef4e6e"},"queue":{"$ref":"#/components/schemas/Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"result":{"$ref":"#/components/schemas/Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"robot":{"const":"/youtube/store","description":"\n## Getting started\n\nSince YouTube works with OAuth, you will need to generate [Template Credentials](/c/template-credentials/) to use this <dfn>Robot</dfn>.\n\nTo change the `title`, `description`, `category`, or `keywords` per video, we recommend to [inject variables into your Template](/docs/topics/templates/).\n\nNote that this <dfn>Robot</dfn> only accepts videos.\n\n## Adding a thumbnail image to your video\n\nYou can add a custom thumbnail to your video on YouTube by using our `\"as\"` syntax for the `\"use\"` parameter to supply both a video and an image to the step:\n\n```json\n\"exported\": {\n  \"use\": [\n    { \"name\": \"video_encode_step\", \"as\": \"video\" },\n    { \"name\": \"image_resize_step\", \"as\": \"image\" },\n  ],\n  ...\n},\n```\n\nIf you encounter an error such as \"The authenticated user doesn’t have permissions to upload and set custom video thumbnails\", you should go to your YouTube account and try adding a custom thumbnail to one of your existing videos. You’ll be prompted to add your phone number. Once you’ve added it, the error should go away.\n","type":"string"},"title":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"description":"\nThe title of the video to be displayed on YouTube.\n\nNote that since the YouTube API requires titles to be within 80 characters, longer titles may be truncated.\n","maxLength":80,"type":"string"}],"description":"\nThe title of the video to be displayed on YouTube.\n\nNote that since the YouTube API requires titles to be within 80 characters, longer titles may be truncated.\n"},"use":{"$ref":"#/components/schemas/Schema_47b2fd205d779e1de6bc4fd78c788d8393756436c48ec6f785f30dc6e16238aa"},"user_meta":{"$ref":"#/components/schemas/Schema_070d50917dd042191e4290744649be38025190ee43499886e5481a7d5627241d"},"visibility":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"description":"\nDefines the visibility of the uploaded video.\n","enum":["private","public","unlisted"],"type":"string"}],"description":"\nDefines the visibility of the uploaded video.\n"}},"required":["category","credentials","description","keywords","robot","title","visibility"],"type":"object"}]},"description":"Contains Assembly Instructions.","type":"object","x-transloadit-description-id":"assemblyInstructions","x-transloadit-schema-id":"sha256:97aad3d37f5046edcb335db4458316ce19e3edbaf9c9f74754f078aae9e99450"},"Schema_98821d3fb80b8da19ecd734f66fdce4852dd42c3933f85148896f6e4b1232881":{"anyOf":[{"description":"Elapsed delivery time in seconds, including automatic retry attempts and the delays between them.","type":"number","x-transloadit-description-id":"assemblyNotificationDuration"},{"type":"null"}],"description":"Elapsed delivery time in seconds, including automatic retry attempts and the delays between them.","x-transloadit-description-id":"assemblyNotificationDuration","x-transloadit-schema-id":"sha256:98821d3fb80b8da19ecd734f66fdce4852dd42c3933f85148896f6e4b1232881"},"Schema_995e384a38585760bf60a96e9933b8db3ca61882b133cf6952963495d3926235":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nPlease create your associated <dfn>Template Credentials</dfn> in your Transloadit account and use the name of your <dfn>Template Credentials</dfn> as this parameter's value. They will contain the values for your Dropbox access token.\n","x-transloadit-schema-id":"sha256:995e384a38585760bf60a96e9933b8db3ca61882b133cf6952963495d3926235"},"Schema_996716d855dbed98c66aed68a18187ca6af0a3239d643c4c607922f044569190":{"additionalProperties":true,"properties":{"credentials":{"items":{"additionalProperties":false,"properties":{"account_id":{"type":"string"},"content":{"anyOf":[{"additionalProperties":{},"type":"object"},{"items":{},"type":"array"},{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"}]},"created":{"anyOf":[{"anyOf":[{"type":"number"},{"type":"string"}]},{"type":"null"}]},"deleted":{"anyOf":[{"anyOf":[{"type":"number"},{"type":"string"}]},{"type":"null"}]},"id":{"type":"string"},"modified":{"anyOf":[{"anyOf":[{"type":"number"},{"type":"string"}]},{"type":"null"}]},"name":{"type":"string"},"stringified":{"type":"string"},"type":{"type":"string"}},"required":["account_id","content","created","deleted","id","modified","name","stringified","type"],"type":"object"},"type":"array"},"message":{"minLength":1,"type":"string"},"ok":{"const":"TEMPLATE_CREDENTIALS_FOUND","type":"string"}},"required":["credentials","message","ok"],"type":"object","x-transloadit-schema-id":"sha256:996716d855dbed98c66aed68a18187ca6af0a3239d643c4c607922f044569190"},"Schema_99943d2e7b4618d495632120f0b3afd3ff05ace6e91949c68286cce98ebd441d":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The total number of bytes that this Assembly processed that count towards your usage\nbill. The sum of `bytes_usage` of all of your Assemblies equal your total monthly\nusage.","x-transloadit-description-id":"assemblyStatusResponseBytesUsage","x-transloadit-schema-id":"sha256:99943d2e7b4618d495632120f0b3afd3ff05ace6e91949c68286cce98ebd441d"},"Schema_999c9f288a40aadd242801a55205a4b03aee8015882cc2ddfb32f6c82d917cb9":{"description":"Not to be confused with dominant color, that counts a single most occurring pixel color and has\nlimited use cases. The average color is calculated by first scaling the input image to 1 pixel.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusMetaAverageColor","x-transloadit-schema-id":"sha256:999c9f288a40aadd242801a55205a4b03aee8015882cc2ddfb32f6c82d917cb9"},"Schema_9a0a76f0af9f4fb579969fc5942e87b2ef0569e89b34cfa832137b2dd9a6b07e":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nPlease create your associated <dfn>Template Credentials</dfn> in your Transloadit account and use the name of your [Template Credentials](/c/template-credentials/) as this parameter's value. They will contain the values for your DigitalOcean Space, Key, Secret and Region.\n\nWhile we recommend to use <dfn>Template Credentials</dfn> at all times, some use cases demand dynamic credentials for which using <dfn>Template Credentials</dfn> is too unwieldy because of their static nature. If you have this requirement, feel free to use the following parameters instead: `\"space\"`, `\"region\"` (for example: `\"fra1\"` or `\"nyc3\"`), `\"key\"`, `\"secret\"`.\n","x-transloadit-schema-id":"sha256:9a0a76f0af9f4fb579969fc5942e87b2ef0569e89b34cfa832137b2dd9a6b07e"},"Schema_9a564b45babfab238f659d4b00dce08c3beff7bec4004a2b3e88d3d04dc499c4":{"anyOf":[{"additionalProperties":true,"description":"The requested DAM resource was not found.","properties":{"error":{"const":"DAM_RESOURCE_NOT_FOUND","type":"string"},"http_code":{"const":404,"type":"number"},"message":{"description":"Human-readable explanation of the error. Its wording can vary; use the `error` code when handling a specific failure.","type":"string","x-transloadit-description-id":"api2ErrorMessage"}},"required":["error"],"type":"object","x-transloadit-description-id":"api2ErrorDamResourceNotFound"},{"allOf":[{"$ref":"#/components/schemas/Schema_cb07bdaec8a57b18babcb0842531069c047ea76747de30cb3433ec3ab53763cb"}]}],"x-transloadit-schema-id":"sha256:9a564b45babfab238f659d4b00dce08c3beff7bec4004a2b3e88d3d04dc499c4"},"Schema_9b86f9302aa0a4c52f7a64bcdae9a755b8e4199db9c3272c5552aaf0026fcd93":{"additionalProperties":false,"properties":{"message":{"minLength":1,"type":"string"},"ok":{"const":"DAM_ENTRY_MOVED","type":"string"},"path":{"minLength":1,"type":"string"}},"required":["message","ok","path"],"type":"object","x-transloadit-schema-id":"sha256:9b86f9302aa0a4c52f7a64bcdae9a755b8e4199db9c3272c5552aaf0026fcd93"},"Schema_9c510c8b82d350f15a96c981172e9e157a9d62193e3ddf9a410bf1f489b03a64":{"additionalProperties":true,"properties":{"content-disposition":{"minLength":1,"type":"string"},"content-type":{"pattern":"^[a-z]+\\/[a-z0-9+.-]+$","type":"string"},"last-modified":{"minLength":1,"type":"string"},"tus-resumable":{"const":"1.0.0","type":"string"},"x-content-type-options":{"const":"nosniff","type":"string"}},"required":["content-disposition","content-type","last-modified","tus-resumable","x-content-type-options"],"type":"object","x-transloadit-schema-id":"sha256:9c510c8b82d350f15a96c981172e9e157a9d62193e3ddf9a410bf1f489b03a64"},"Schema_9c58bf823764e09502b1738a56fe64b3da52850f52ccd3f76e632a0f835ad405":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"},{"additionalProperties":true,"properties":{"confidence_threshold":{"type":"number"},"flagged":{"type":"boolean"},"licenses":{"items":{},"type":"array"},"max_confidence":{"type":"number"}},"required":["confidence_threshold","flagged","licenses","max_confidence"],"type":"object"}]},{"type":"null"}],"description":"The copyright metadata field.","x-transloadit-description-id":"assemblyStatusMetaCopyright","x-transloadit-schema-id":"sha256:9c58bf823764e09502b1738a56fe64b3da52850f52ccd3f76e632a0f835ad405"},"Schema_9d51ab8cf7b7d84e4e24a4efb39e4d2d6358671a251b1cc544c6007f6fa55960":{"additionalProperties":true,"properties":{"message":{"minLength":1,"type":"string"},"ok":{"const":"TEMPLATE_CREDENTIALS_TYPES_FOUND","type":"string"},"types":{"additionalProperties":{"additionalProperties":true,"properties":{"fields":{"additionalProperties":{"additionalProperties":true,"properties":{"requiredOnCreate":{"type":"boolean"},"requiredOnUpdate":{"type":"boolean"}},"type":"object"},"type":"object"},"providers":{"items":{"type":"string"},"type":"array"}},"required":["fields"],"type":"object"},"type":"object"}},"required":["message","ok","types"],"type":"object","x-transloadit-schema-id":"sha256:9d51ab8cf7b7d84e4e24a4efb39e4d2d6358671a251b1cc544c6007f6fa55960"},"Schema_9e32d2e043ddaf27be258da25a42fb43c4a65680e4582d53c4c0e1d0b76908cf":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"default":"${unique_prefix}/${file.url_name}","description":"\nThe path at which the file is to be stored. This may include any available [Assembly variables](/docs/topics/assembly-instructions/#assembly-variables). The path must not be a directory.\n","x-transloadit-schema-id":"sha256:9e32d2e043ddaf27be258da25a42fb43c4a65680e4582d53c4c0e1d0b76908cf"},"Schema_9e6cbcbaa4b94736822983983a33d21b68b5dc374cb5a1d5c778cc9477a9fa5e":{"anyOf":[{"additionalProperties":true,"description":"Could not load Assembly statistics.","properties":{"error":{"const":"ASSEMBLY_STATS_ERROR","type":"string"},"http_code":{"const":500,"type":"number"},"message":{"description":"Human-readable explanation of the error. Its wording can vary; use the `error` code when handling a specific failure.","type":"string","x-transloadit-description-id":"api2ErrorMessage"}},"required":["error"],"type":"object","x-transloadit-description-id":"api2ErrorAssemblyStatsError"},{"allOf":[{"$ref":"#/components/schemas/Schema_cb07bdaec8a57b18babcb0842531069c047ea76747de30cb3433ec3ab53763cb"}]}],"x-transloadit-schema-id":"sha256:9e6cbcbaa4b94736822983983a33d21b68b5dc374cb5a1d5c778cc9477a9fa5e"},"Schema_a433d309f81e26af9c0fca8fd57913f2795e553cf098114cf41d088d28b07169":{"additionalProperties":false,"properties":{"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for an Assembly replay.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"required":["expires","key"],"type":"object","x-transloadit-description-id":"assemblyReplayAuth"},"fields":{"additionalProperties":{},"description":"Values merged on top of the original Assembly fields and made available as Assembly Variables in the replay.","type":"object","x-transloadit-description-id":"assemblyReplayFields"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"},"notify_url":{"description":"Overrides the notification URL for the replayed Assembly. An omitted, null, or empty value does not override the inherited URL. By default, or when the original Assembly has no Template, the URL from the original merged Assembly Instructions is reevaluated using the replay’s fields and Assembly Variables. With `reparse_template: 1` and an original Template, the URL comes from the original Assembly Status instead of the Template’s current `notify_url`. Supply an explicit URL to choose the destination.","type":["null","string"],"x-transloadit-description-id":"assemblyReplayNotifyUrl"},"reparse_template":{"description":"Specify `1` to fetch and reparse the Template used by the original Assembly, which is useful if the Template changed in the meantime. Specify `0`, or omit this property, to reuse the original merged Assembly Instructions.","enum":[0,1],"type":"number","x-transloadit-description-id":"reparseTemplate"},"steps":{"anyOf":[{"additionalProperties":{"$ref":"#/components/schemas/Schema_e9cd789e59923ef8186b2a620d3348a856461f1009b5cd69551d1a25f47eb029"},"type":"object"},{"items":{"$ref":"#/components/schemas/Schema_e9cd789e59923ef8186b2a620d3348a856461f1009b5cd69551d1a25f47eb029"},"type":"array"}],"description":"Replay step overrides. Object-form steps are the normal Assembly shape; array-form steps are accepted for legacy replay compatibility and normalized before execution.","x-transloadit-description-id":"replaySteps"}},"required":["auth"],"type":"object","x-transloadit-schema-id":"sha256:a433d309f81e26af9c0fca8fd57913f2795e553cf098114cf41d088d28b07169"},"Schema_a529048b2ed32b0125d678e158645220b42861e2c3e5bf89f766bec34234c3e6":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["auto","basename","import_order"],"type":"string"}],"default":"basename","description":"\nControls how bundled inputs are ordered when no explicit numbered alias for the input type is used. Numbered aliases end with a numeric suffix such as `_1`.\n\nThe default `\"basename\"` keeps the legacy natural basename sorting behavior.\n\nSet this to `\"import_order\"` to preserve the order of array-based import steps when all input files carry complete import order metadata. `\"auto\"` has the same import-order preference with natural basename sorting as fallback.\n","x-transloadit-schema-id":"sha256:a529048b2ed32b0125d678e158645220b42861e2c3e5bf89f766bec34234c3e6"},"Schema_a5345e8de1c4a63908fa71e0ea4cfbff275562b82e222c7a389606e16db872ce":{"additionalProperties":false,"properties":{"assembly_status_expiry":{"description":"Controls how long the Assembly Status is retained for Assemblies created from this Template.","enum":["1day","30days","7days","90days","NoSave"],"type":"string","x-transloadit-description-id":"templateAssemblyStatusExpiry"},"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for a Template request.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"required":["expires","key"],"type":"object","x-transloadit-description-id":"templateAuth"},"name":{"description":"Name of this Template. Use 3–200 lowercase Latin letters, numbers, or dashes. The name `tmp` and service-reserved names are unavailable.","maxLength":200,"minLength":3,"pattern":"^(?:[a-su-z0-9-][a-z0-9-]{2,199}|t[a-ln-z0-9-][a-z0-9-]{1,198}|tm[a-oq-z0-9-][a-z0-9-]{0,197}|tmp[a-z0-9-]{1,197})$","type":"string","x-transloadit-description-id":"templateName"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"},"require_signature_auth":{"default":0,"description":"Use `1` to require a valid signature when creating Assemblies from this Template with an Auth Key. Valid bearer tokens bypass this signature requirement; their scopes and audience still apply. This setting does not add authentication to Assembly status, cancellation or upload capability URLs. See [Signature Authentication](/docs/api/authentication/).","enum":[0,1],"type":"number","x-transloadit-description-id":"requireSignatureAuth"},"template":{"anyOf":[{"additionalProperties":false,"description":"Structured Assembly Instructions stored in this Template.","properties":{"allow_steps_override":{"description":"Set this to false in a stored Template to disallow overriding its Steps at runtime. The Template may then be used with `template_id`, or direct `steps` may be supplied without it, but not both. A value supplied only while creating an Assembly does not control this policy.","type":"boolean","x-transloadit-description-id":"allowStepsOverride"},"auth":{"additionalProperties":false,"description":"Optional authentication and upload constraints for an Assembly. The API key may be omitted for bearer-authenticated requests or when only upload constraints are stored in a Template.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"},"max_number_of_files":{"description":"Maximum number of input files allowed per Assembly. If the number of uploaded or imported files exceeds this limit, the Assembly will be stopped with an error. This is useful for preventing abuse when Signature Authentication credentials are exposed.","minimum":1,"type":"integer","x-transloadit-description-id":"signatureAuthMaxNumberOfFiles"},"max_size":{"description":"Maximum total expected upload size in bytes for the Assembly, including request-body overhead. This is not a per-file limit and does not guarantee rejection before a resumable transfer starts.","type":"number","x-transloadit-description-id":"signatureAuthMaxSize"},"referer":{"description":"Regular expression matched against a supplied HTTP Referer. Invalid expressions and expressions that exceed the evaluation time limit are rejected. Missing Referer headers pass this check; use Signature Authentication to authenticate requests.","type":"string","x-transloadit-description-id":"signatureAuthReferer"}},"type":"object","x-transloadit-description-id":"assemblyOptionalAuth"},"emit_execution_progress":{"description":"Set to true to publish real-time Assembly execution-progress events. This is ignored for URL Transform Assemblies.","type":"boolean","x-transloadit-description-id":"assemblyEmitExecutionProgress"},"exiftool_stack":{"description":"Ignored when stored in a Template. To select the ExifTool stack for metadata extraction, set `exiftool_stack` in the top-level Assembly request params instead.","type":"string","x-transloadit-description-id":"storedTemplateExifToolStack"},"ffmpeg_stack":{"description":"Ignored when stored in a Template. To select the FFmpeg stack for metadata extraction, set `ffmpeg_stack` in the top-level Assembly request params instead.","type":"string","x-transloadit-description-id":"storedTemplateFfmpegStack"},"fields":{"additionalProperties":{},"description":"An object of string keyed values (name -> value) that can be used as Assembly Variables, just like additional form fields can. You can use anything that is JSON stringifyable as a value","type":"object","x-transloadit-description-id":"fields"},"imagemagick_stack":{"description":"Ignored when stored in a Template. To select the ImageMagick stack for metadata extraction, set `imagemagick_stack` in the top-level Assembly request params instead.","type":"string","x-transloadit-description-id":"storedTemplateImageMagickStack"},"mediainfo_stack":{"description":"Ignored when stored in a Template. To select the MediaInfo stack for metadata extraction, set `mediainfo_stack` in the top-level Assembly request params instead.","type":"string","x-transloadit-description-id":"storedTemplateMediaInfoStack"},"mplayer_stack":{"description":"Ignored when stored in a Template. To select the MPlayer stack for metadata extraction, set `mplayer_stack` in the top-level Assembly request params instead.","type":"string","x-transloadit-description-id":"storedTemplateMplayerStack"},"notification_payload":{"description":"Controls the size of the payload sent in Assembly notifications. Notification replays reuse filters supplied in the original Assembly request; filters defined only in a Template are not preserved on replay. An empty array (default) sends the complete Assembly Status. Add `\"without_params\"` so the top-level raw Assembly instruction fields `params`, `template`, and `merged_params` are omitted. Add `\"without_result_meta_data\"` so `meta` is omitted from each file in `results`. Add `\"without_results\"` so the top-level `results` object is omitted. Add `\"without_upload_meta_data\"` so `meta` is omitted from each file in `uploads`. Add `\"without_uploads\"` so the top-level `uploads` array is omitted. Filtering is applied before serialization, so using these options reduces memory use and helps avoid oversized-payload or OOM failures on large Assemblies.","items":{"enum":["without_params","without_result_meta_data","without_results","without_upload_meta_data","without_uploads"],"type":"string"},"type":"array","x-transloadit-description-id":"notificationPayload"},"notify_url":{"description":"Transloadit can send a Pingback to your server when the Assembly is completed. We’ll send the Assembly Status as a JSON string in the `transloadit` field of an `application/x-www-form-urlencoded` POST request to the URL supplied here. Use `notification_payload` to reduce the payload size (e.g. `without_uploads`, `without_results`, `without_params`). Notification replays reuse only filters supplied in the original Assembly request, not filters defined only in a Template.","type":["null","string"],"x-transloadit-description-id":"notifyUrl"},"quiet":{"description":"Set this to true to minimize the initial Assembly-creation response. A successful response includes only ok and assembly_id; an error response retains error, http_code, message, reason and assembly_id when available. This is response minimization, not access control: anyone with the returned Assembly ID can still retrieve the full Assembly Status, including fields and results, without additional authentication. Treat Assembly IDs and status URLs as secret capabilities. The full Assembly Status is still sent to notify_url when configured.","type":"boolean","x-transloadit-description-id":"quiet"},"redirect_url":{"description":"URL to redirect a browser upload to after the upload completes. The Assembly ID and status URL are appended as query parameters while preserving any existing query parameters and fragment.","type":"string","x-transloadit-description-id":"assemblyRedirectUrl"},"response_headers":{"additionalProperties":true,"description":"Custom response headers emitted by an Assembly. CORS overrides belong in `cors`; other top-level keys are emitted as custom headers.","properties":{"cors":{"additionalProperties":true,"properties":{"Access-Control-Allow-Credentials":{"type":"boolean"},"Access-Control-Allow-Headers":{"type":"string"},"Access-Control-Allow-Methods":{"type":"string"},"Access-Control-Allow-Origin":{"type":"string"},"Access-Control-Allow-Private-Network":{"type":"boolean"},"Access-Control-Allow-Public-Network":{"type":"boolean"},"Access-Control-Expose-Headers":{"type":"string"},"Access-Control-Max-Age":{"type":"number"}},"type":"object"}},"type":"object","x-transloadit-description-id":"assemblyResponseHeaders"},"steps":{"allOf":[{"$ref":"#/components/schemas/Schema_97aad3d37f5046edcb335db4458316ce19e3edbaf9c9f74754f078aae9e99450"}],"description":"Contains Assembly Instructions.","x-transloadit-description-id":"assemblyInstructions"},"template_id":{"description":"Ignored when stored in a Template. Templates do not inherit Instructions from another Template. Put the Steps directly in this Template and select it using `template_id` in the top-level Assembly request params.","type":"string","x-transloadit-description-id":"storedTemplateId"},"usage_tags":{"description":"Usage tags recorded on an Assembly.","type":"string","x-transloadit-description-id":"assemblyUsageTags"}},"type":"object","x-transloadit-description-id":"templateContentObject"},{"description":"JSON-encoded Assembly Instructions retained for client compatibility.","pattern":"^[\\x09-\\x0D\\x20\\xA0                　﻿]*\\{(?:[^\\x00]|\\x00)*\\}[\\x09-\\x0D\\x20\\xA0                　﻿]*$","type":"string","x-transloadit-description-id":"templateContentJson","x-transloadit-input-fidelity":"conservative"}],"description":"Assembly Instructions stored in this Template. Prefer the structured JSON object; a JSON-encoded string remains accepted for compatibility.","x-transloadit-description-id":"template"},"transcoding_result_expiry":{"description":"Controls how long transcoding results are retained for Assemblies created from this Template.","enum":["1day","NoSave"],"type":"string","x-transloadit-description-id":"templateTranscodingResultExpiry"}},"required":["auth","name","template"],"type":"object","x-transloadit-schema-id":"sha256:a5345e8de1c4a63908fa71e0ea4cfbff275562b82e222c7a389606e16db872ce"},"Schema_a6d783a32061a00331d38b029a83933e29f4362644da01b15aee18c3de5ec710":{"anyOf":[{"additionalProperties":false,"properties":{"additional_gb":{"minimum":0,"type":"number"},"additional_gb_fee":{"type":"number"},"address_1":{"type":["null","string"]},"address_2":{"type":["null","string"]},"bill_limit":{"type":"number"},"city":{"type":["null","string"]},"company":{"type":["null","string"]},"country":{"type":["null","string"]},"country_id":{"type":["null","string"]},"coupon_discount":{"anyOf":[{"anyOf":[{"type":"number"},{"pattern":"^-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?$","type":"string"}]},{"type":"null"}]},"coupon_discount_percent":{"anyOf":[{"anyOf":[{"type":"number"},{"pattern":"^-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?$","type":"string"}]},{"type":"null"}]},"created":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]},"credit":{"anyOf":[{"anyOf":[{"type":"number"},{"pattern":"^-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?$","type":"string"}]},{"type":"null"}]},"currency":{"type":["null","string"]},"email":{"type":["null","string"]},"final_sub_total":{"type":"number"},"invoice_id":{"type":"null"},"is_prorated":{"type":"boolean"},"month":{"pattern":"^[0-9]{4}-(?:0[1-9]|1[0-2])$","type":"string"},"ok":{"const":"BILL_FOUND","type":"string"},"plan":{"$ref":"#/components/schemas/Schema_41f6da0544dc3df7613439ed2ec7eb539b34ef6992e411749dd9672b2899f525"},"po_number":{"type":["null","string"]},"reverse_charge_vat":{"type":"boolean"},"reward_discount":{"anyOf":[{"anyOf":[{"type":"number"},{"pattern":"^-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?$","type":"string"}]},{"type":"null"}]},"reward_discount_percent":{"anyOf":[{"anyOf":[{"type":"number"},{"pattern":"^-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?$","type":"string"}]},{"type":"null"}]},"robots":{"additionalProperties":{"additionalProperties":true,"properties":{"gb":{"minimum":0,"type":"number"}},"required":["gb"],"type":"object"},"type":"object"},"signup_discount":{"anyOf":[{"anyOf":[{"type":"number"},{"pattern":"^-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?$","type":"string"}]},{"type":"null"}]},"signup_discount_percent":{"anyOf":[{"anyOf":[{"type":"number"},{"pattern":"^-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?$","type":"string"}]},{"type":"null"}]},"state":{"type":["null","string"]},"sub_total":{"type":"number"},"tiers":{},"to":{"type":["null","string"]},"to_contact_email_address":{"type":["null","string"]},"total":{"type":"number"},"used_gb":{"minimum":0,"type":"number"},"vat":{"type":"number"},"vat_id":{"type":["null","string"]},"vat_rate":{"type":"number"},"zip":{"type":["null","string"]}},"required":["created","credit","invoice_id","is_prorated","month","ok","plan","robots","sub_total","total"],"type":"object"},{"additionalProperties":false,"properties":{"additional_gb":{"minimum":0,"type":"number"},"additional_gb_fee":{"type":"number"},"address_1":{"type":["null","string"]},"address_2":{"type":["null","string"]},"bill_limit":{"type":"number"},"city":{"type":["null","string"]},"company":{"type":["null","string"]},"country":{"type":["null","string"]},"country_id":{"type":["null","string"]},"coupon_discount":{"anyOf":[{"anyOf":[{"type":"number"},{"pattern":"^-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?$","type":"string"}]},{"type":"null"}]},"coupon_discount_percent":{"anyOf":[{"anyOf":[{"type":"number"},{"pattern":"^-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?$","type":"string"}]},{"type":"null"}]},"created":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]},"credit":{"anyOf":[{"anyOf":[{"type":"number"},{"pattern":"^-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?$","type":"string"}]},{"type":"null"}]},"currency":{"type":["null","string"]},"custom_expenses":{},"email":{"type":["null","string"]},"final_sub_total":{"type":"number"},"invoice_id":{"anyOf":[{"type":"string"},{"type":"number"}]},"is_prorated":{"type":"boolean"},"month":{"pattern":"^[0-9]{4}-(?:0[1-9]|1[0-2])$","type":"string"},"ok":{"const":"BILL_FOUND","type":"string"},"plan":{"$ref":"#/components/schemas/Schema_41f6da0544dc3df7613439ed2ec7eb539b34ef6992e411749dd9672b2899f525"},"po_number":{"type":["null","string"]},"reverse_charge_vat":{"type":"boolean"},"reward_discount":{"anyOf":[{"anyOf":[{"type":"number"},{"pattern":"^-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?$","type":"string"}]},{"type":"null"}]},"reward_discount_percent":{"anyOf":[{"anyOf":[{"type":"number"},{"pattern":"^-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?$","type":"string"}]},{"type":"null"}]},"robots":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{},"type":"array"},{"additionalProperties":{},"type":"object"}]},"signup_discount":{"anyOf":[{"anyOf":[{"type":"number"},{"pattern":"^-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?$","type":"string"}]},{"type":"null"}]},"signup_discount_percent":{"anyOf":[{"anyOf":[{"type":"number"},{"pattern":"^-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?$","type":"string"}]},{"type":"null"}]},"state":{"type":["null","string"]},"sub_total":{"type":"number"},"tiers":{},"to":{"type":["null","string"]},"to_contact_email_address":{"type":["null","string"]},"total":{"type":"number"},"used_gb":{"minimum":0,"type":"number"},"vat":{"type":"number"},"vat_id":{"type":["null","string"]},"vat_rate":{"type":"number"},"zip":{"type":["null","string"]}},"required":["created","credit","invoice_id","is_prorated","month","ok","plan","robots","sub_total","total"],"type":"object"},{"additionalProperties":false,"properties":{"error":{"const":"BILL_NOT_FOUND","type":"string"},"http_code":{"const":200,"type":"number"},"message":{"type":"string"},"reason":{"type":"string"}},"required":["error","http_code","message","reason"],"type":"object"}],"x-transloadit-schema-id":"sha256:a6d783a32061a00331d38b029a83933e29f4362644da01b15aee18c3de5ec710"},"Schema_a742cc0d1951a03f84d05d6e8333f208b82c4a8a18f977adbc62aa0e8a1cc30b":{"anyOf":[{"additionalProperties":true,"description":"The DAM mutation conflicts with an existing resource.","properties":{"error":{"const":"DAM_MUTATION_CONFLICT","type":"string"},"http_code":{"const":409,"type":"number"},"message":{"description":"Human-readable explanation of the error. Its wording can vary; use the `error` code when handling a specific failure.","type":"string","x-transloadit-description-id":"api2ErrorMessage"}},"required":["error"],"type":"object","x-transloadit-description-id":"api2ErrorDamMutationConflict"},{"allOf":[{"$ref":"#/components/schemas/Schema_cb07bdaec8a57b18babcb0842531069c047ea76747de30cb3433ec3ab53763cb"}]}],"x-transloadit-schema-id":"sha256:a742cc0d1951a03f84d05d6e8333f208b82c4a8a18f977adbc62aa0e8a1cc30b"},"Schema_a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"Force a Robot to accept a file type it would have ignored.\n\nBy default, Robots ignore files they are not familiar with.\n[🤖/video/encode](/docs/robots/video-encode/), for\nexample, will happily ignore input images.\n\nWith the `force_accept` parameter set to `true`, you can force Robots to accept all files thrown at them.\nThis will typically lead to errors and should only be used for debugging or combatting edge cases.\n","x-transloadit-schema-id":"sha256:a7b463c184f2431703a1692b1402307bb6bb726278c59f7075fd0b8d6eb2be3c"},"Schema_a8213ce4c995e2d44b094b3ea909eddf983764d183e2903635e64aa32732520a":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"x-transloadit-schema-id":"sha256:a8213ce4c995e2d44b094b3ea909eddf983764d183e2903635e64aa32732520a"},"Schema_a8973c25bd6af940d3d33b4cf66cd5e99c7c3d30e99223ce51cc0fd830d9ee3d":{"pattern":"^0*(?:0|(?:[1-9][0-9]{0,14}|[1-8][0-9]{15}|900[0-6][0-9]{12}|9007[0-0][0-9]{11}|90071[0-8][0-9]{10}|900719[0-8][0-9]{9}|9007199[0-1][0-9]{8}|90071992[0-4][0-9]{7}|900719925[0-3][0-9]{6}|9007199254[0-6][0-9]{5}|90071992547[0-3][0-9]{4}|9007199254740[0-8][0-9]{2}|90071992547409[0-8][0-9]{1}|900719925474099[0-0]|9007199254740991))$","type":"string","x-transloadit-schema-id":"sha256:a8973c25bd6af940d3d33b4cf66cd5e99c7c3d30e99223ce51cc0fd830d9ee3d"},"Schema_a8ae24f9c8d680e21e0004af41cfda5b0a653f81098f242606641ef844a3080b":{"additionalProperties":true,"properties":{"count":{"minimum":0,"type":"integer"},"items":{"items":{"additionalProperties":true,"properties":{"account_id":{"type":["null","string"]},"bytes_expected":{"description":"The number of bytes that this Assembly expects to be uploaded.","type":"number","x-transloadit-description-id":"assemblyStatusResponseBytesExpected"},"bytes_received":{"description":"The number of bytes that have been uploaded to this Assembly so far. This is\nprimarily used by clients to display upload progress.","type":"number","x-transloadit-description-id":"assemblyStatusResponseBytesReceived"},"bytes_usage":{"anyOf":[{"type":"number"},{"type":"null"}]},"created":{"type":"string"},"created_ts":{"type":"number"},"error":{"type":["null","string"]},"execution_duration":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The time taken by Transloadit to execute this Assembly, in seconds.","x-transloadit-description-id":"assemblyStatusResponseExecutionDuration"},"execution_start":{"type":["null","string"]},"files":{"type":["null","string"]},"id":{"type":"string"},"instance":{"type":["null","string"]},"notify_url":{"type":["null","string"]},"num_input_files":{"anyOf":[{"type":"number"},{"type":"null"}]},"ok":{"type":["null","string"]},"parent_id":{"type":["null","string"]},"redirect_url":{"type":["null","string"]},"region":{"type":["null","string"]},"template_id":{"type":["null","string"]},"template_name":{"type":["null","string"]},"upload_duration":{"description":"The time taken by the uploader to upload files, in seconds.","type":"number","x-transloadit-description-id":"assemblyStatusResponseUploadDuration"},"warning_count":{"anyOf":[{"type":"number"},{"type":"null"}]}},"required":["created","id"],"type":"object"},"type":"array"}},"required":["count","items"],"type":"object","x-transloadit-schema-id":"sha256:a8ae24f9c8d680e21e0004af41cfda5b0a653f81098f242606641ef844a3080b"},"Schema_aaffd6133c1b02e4a7843e6e815412ab247da8c154d4f13cd0267992d2a8dea9":{"additionalProperties":false,"properties":{"assembly_id":{"description":"Restricts results to one Assembly ID.","pattern":"^[a-z0-9]{32}$","type":"string","x-transloadit-description-id":"assembliesAssemblyId"},"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for an Assembly list request.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"required":["expires","key"],"type":"object","x-transloadit-description-id":"assembliesListAuth"},"fromdate":{"description":"Specifies the minimum Assembly UTC creation date/time. Only Assemblies after this time are returned. Use the format `Y-m-d H:i:s`. Defaults to seven days before the request. Exact Assembly ID lookups have no default lower bound.","type":"string","x-transloadit-description-id":"assembliesFromDate"},"keywords":{"anyOf":[{"pattern":"^(?:[\\x09-\\x0D\\x20\\xA0                　﻿]*|[\\x09-\\x0D\\x20\\xA0                　﻿]*[^\\x09-\\x0D\\x20\\xA0                　﻿](?:[\\x09-\\x0D\\x20\\xA0                　﻿]|[^\\x09-\\x0D\\x20\\xA0                　﻿])+[^\\x09-\\x0D\\x20\\xA0                　﻿][\\x09-\\x0D\\x20\\xA0                　﻿]*)$","type":"string"},{"items":{"type":"string"},"type":"array"}],"description":"Specifies one search expression directly or as a string array whose items are joined with commas. Nonblank rendered expressions must contain at least three characters after trimming. It matches an Assembly ID or six-character ID prefix, a recognized error code, or (when Assembly field search is enabled for the Workspace) an exact custom field name or value. If a recognized error code also matches a custom field name or value, only Assemblies matching both are returned. Defaults to no keyword filter.","x-transloadit-description-id":"assemblyKeywords"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"},"order":{"description":"Specifies the sort direction. Defaults to `desc`.","enum":["asc","desc"],"type":"string","x-transloadit-description-id":"assembliesOrder"},"page":{"default":1,"description":"Specifies the current page within the current pagination. Defaults to `1`. The derived offset `(page - 1) * pagesize` must remain a safe integer.","maximum":9007199254740991,"minimum":1,"type":"integer","x-transloadit-description-id":"assembliesPage"},"pagesize":{"default":50,"description":"Specifies how many Assemblies to return per API request. Defaults to `50`.","maximum":5000,"minimum":1,"type":"integer","x-transloadit-description-id":"assembliesPageSize"},"region":{"anyOf":[{"pattern":"^[\\x09-\\x0D\\x20\\xA0                　﻿]*$","type":"string"},{"pattern":"^[\\x09-\\x0D\\x20\\xA0                　﻿]*[A-Za-z0-9._-]{1,30}[\\x09-\\x0D\\x20\\xA0                　﻿]*$","type":"string"}],"description":"Restricts results to a region. Omission, a whitespace-only value, or `all` includes every region.","x-transloadit-description-id":"assembliesRegion"},"sort":{"description":"Specifies the field used to sort results. Defaults to `created_ts`.","enum":["created","created_ts","updated"],"type":"string","x-transloadit-description-id":"assembliesSort"},"template_id":{"description":"Restricts results to a Template ID or name. Use `no_template` for Assemblies without a Template. Omission or `all` includes every Template.","type":"string","x-transloadit-description-id":"assembliesTemplateId"},"todate":{"description":"Specifies the maximum Assembly UTC creation date/time. Only Assemblies before this time are returned. Use the format `Y-m-d H:i:s`.","type":"string","x-transloadit-description-id":"assembliesToDate"},"type":{"description":"Specifies the types of Assemblies to retrieve. Defaults to `all`.","enum":["all","canceled","completed","executing","expired","failed","fixable","problematic","request_aborted","uploading"],"type":"string","x-transloadit-description-id":"assembliesType"}},"required":["auth"],"type":"object","x-transloadit-schema-id":"sha256:aaffd6133c1b02e4a7843e6e815412ab247da8c154d4f13cd0267992d2a8dea9"},"Schema_ab455aff2816601f4986e12cb640981fed0db3bd1b22cfc53195f7d94d6293df":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/components/schemas/Schema_ab455aff2816601f4986e12cb640981fed0db3bd1b22cfc53195f7d94d6293df"},"type":"array"},{"additionalProperties":{"$ref":"#/components/schemas/Schema_ab455aff2816601f4986e12cb640981fed0db3bd1b22cfc53195f7d94d6293df"},"type":"object"}],"x-transloadit-schema-id":"sha256:ab455aff2816601f4986e12cb640981fed0db3bd1b22cfc53195f7d94d6293df"},"Schema_ab6cb202a13202fba4568f38be6c2eb66d85fa4f009d0c2e5c0374caa3720092":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^#?[0-9a-fA-F]{6}([0-9a-fA-F]{2})?$","type":"string"}],"default":"#00000000","description":"\nThe background color of the resulting video in the `\"rrggbbaa\"` format (red, green, blue, alpha) when used with the `\"pad\"` resize strategy. The default color is black.\n","x-transloadit-schema-id":"sha256:ab6cb202a13202fba4568f38be6c2eb66d85fa4f009d0c2e5c0374caa3720092"},"Schema_ac7d8464107dcaba338b4b8bdc2db3b974790cf626fa64c3e036a3c7fd9cab49":{"anyOf":[{"maximum":25000,"minimum":1,"type":"integer"},{"pattern":"^[\\x09-\\x0D\\x20\\xA0                　﻿]*\\+?0*(?:[1-9][0-9]{0,3}|1[0-9]{4}|2[0-4][0-9]{3}|25000)(?:[^0-9x][^x]*)?$","type":"string"}],"x-transloadit-schema-id":"sha256:ac7d8464107dcaba338b4b8bdc2db3b974790cf626fa64c3e036a3c7fd9cab49"},"Schema_acdda8455918771eb5b7d58d00e895c1326672fa85d67ad42497973e3292f5b8":{"additionalProperties":{"items":{"additionalProperties":true,"properties":{"as":{"anyOf":[{"anyOf":[{"type":"string"},{"items":{"type":"string"},"type":"array"}]},{"type":"null"}]},"asset_id":{"$ref":"#/components/schemas/Schema_ea4fbaa6b619d555b449bce20f35f0d31fdbffec9451bb442e1f8fafe5d53aa4"},"asset_version":{"description":"Numeric revision of the stored asset. Use `version_id`, not this number, to select exact retained bytes.","type":"number","x-transloadit-description-id":"assemblyStatusFileAssetVersion"},"basename":{"description":"The name of the file without the extension.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusFileBasename"},"cost":{"anyOf":[{"type":"number"},{"type":"null"}]},"duration":{"anyOf":[{"type":"number"},{"type":"null"}]},"duration_human":{"type":["null","string"]},"execTime":{"anyOf":[{"type":"number"},{"type":"null"}]},"exec_time":{"anyOf":[{"type":"number"},{"type":"null"}]},"ext":{"$ref":"#/components/schemas/Schema_20714a1e88ff0ab94e9cc51f51d49cf13c83b2aff23f6f8cf7cb83bbee003d89"},"field":{"description":"The name of the form field used to submit this file.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusFileField"},"filepath":{"type":["null","string"]},"forcedFileExt":{"type":"string"},"from_batch_import":{"type":"boolean"},"has_alpha":{"description":"Whether this stored image version has an alpha channel, when known.","type":"boolean","x-transloadit-description-id":"assemblyStatusFileHasAlpha"},"height":{"anyOf":[{"type":"number"},{"type":"null"}]},"hls_url":{"type":"string"},"id":{"description":"A random and unique ID used internally by Transloadit to track the file.","type":"string","x-transloadit-description-id":"assemblyStatusFileId"},"import_url":{"type":"string"},"ios_url":{"type":"string"},"is_temp_url":{"type":"boolean"},"is_tus_file":{"type":"boolean"},"md5hash":{"type":["null","string"]},"meta":{"anyOf":[{"additionalProperties":true,"properties":{"album":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"type":"null"}]},"aperture":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The aperture setting for this image, such as `5.7`.","x-transloadit-description-id":"assemblyStatusMetaAperture"},"archive_directory":{"type":["null","string"]},"artist":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"type":"null"}],"description":"Many applications that produce audio write additional information into the audio file such as\n`artist`, `year`, `album`, `genre`.","x-transloadit-description-id":"assemblyStatusMetaArtist"},"aspect_ratio":{"anyOf":[{"type":"number"},{"type":"string"},{"type":"null"}],"description":"The aspect ratio of the image, which is its width divided by its height. Will be 0 if for some\nreason the image height is 0.","x-transloadit-description-id":"assemblyStatusMetaAspectRatio"},"audio_bitrate":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The audio bit rate in bits per second across all channels, such as `128000`.","x-transloadit-description-id":"assemblyStatusMetaAudioBitrate"},"audio_channel_layout":{"type":["null","string"]},"audio_channels":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The number of audio channels, typically `2` for stereo.","x-transloadit-description-id":"assemblyStatusMetaAudioChannels"},"audio_codec":{"description":"The audio codec, such as `\"faad\"`. See the [supported audio codecs](/docs/supported-formats/).","type":["null","string"],"x-transloadit-description-id":"assemblyStatusMetaAudioCodec"},"audio_profile":{"type":["null","string"]},"audio_sample_format":{"type":["null","string"]},"audio_samplerate":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The audio sample rate in hertz, such as `44100`.","x-transloadit-description-id":"assemblyStatusMetaAudioSamplerate"},"author":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"type":"null"}],"description":"The author that took the image. Some cameras populate this field as opposed to `creator`.","x-transloadit-description-id":"assemblyStatusMetaAuthor"},"average_color":{"$ref":"#/components/schemas/Schema_999c9f288a40aadd242801a55205a4b03aee8015882cc2ddfb32f6c82d917cb9"},"band":{"type":["null","string"]},"bandwidth":{"anyOf":[{"type":"number"},{"type":"null"}]},"beats_per_minute":{"anyOf":[{"type":"number"},{"type":"null"}]},"bit_depth":{"anyOf":[{"type":"number"},{"type":"null"}]},"character_count":{"anyOf":[{"type":"number"},{"type":"null"}]},"character_count_with_spaces":{"anyOf":[{"type":"number"},{"type":"null"}]},"city":{"description":"The city in which this image was taken, such as `\"Berlin\"`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusMetaCity"},"closed_captions":{"type":["boolean","null"]},"cmd":{"anyOf":[{"type":"string"},{"items":{"anyOf":[{"type":"string"},{"type":"number"}]},"type":"array"}]},"codecs":{"type":["null","string"]},"colorprimaries":{"type":["null","string"]},"colorspace":{"$ref":"#/components/schemas/Schema_59548aeadc018a947ea5f8baf2a1739106845dba53418f042e990d0da44a8dfc"},"colortransfer":{"type":["null","string"]},"comment":{"type":["null","string"]},"copyright":{"$ref":"#/components/schemas/Schema_9c58bf823764e09502b1738a56fe64b3da52850f52ccd3f76e632a0f835ad405"},"copyright_notice":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"type":"null"}],"description":"The copyright notice metadata field.","x-transloadit-description-id":"assemblyStatusMetaCopyrightNotice"},"country":{"description":"The country in which this image was taken, such as `\"Germany\"`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusMetaCountry"},"country_code":{"description":"The country code of the country in which this image was taken, such as `\"de\"`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusMetaCountryCode"},"create_date":{"anyOf":[{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"items":{"anyOf":[{"type":"string"},{"type":"number"}]},"type":"array"}]},{"type":"null"}]},"creator":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"},{"items":{"type":"string"},"type":"array"}]},{"type":"null"}],"description":"The creator that took the image.","x-transloadit-description-id":"assemblyStatusMetaCreator"},"date_file_created":{"$ref":"#/components/schemas/Schema_28e9d3e97c829700b536a22ac3e94af53ba589a7f0483ae66053586b445e3e67"},"date_file_modified":{"$ref":"#/components/schemas/Schema_e84930fb947da4a6250522f526ec7fb3a9f2af15d6f5e9387deb1ef4464760c5"},"date_recorded":{"$ref":"#/components/schemas/Schema_221f591ba5aa2bd8b2234b296a6f47ecfadad32831f932564981de37ddbb8d64"},"description":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"type":"null"}],"description":"A description of this image, such as `\"This tree is very old.\"`.","x-transloadit-description-id":"assemblyStatusMetaDescription"},"descriptions":{"items":{"anyOf":[{"type":"string"},{"additionalProperties":true,"properties":{"confidence":{"type":"number"},"name":{"type":"string"}},"required":["confidence","name"],"type":"object"}]},"type":"array"},"device_name":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"type":"null"}],"description":"The name of the device that recorded the media, such as `\"iPhone 3GS\"`.","x-transloadit-description-id":"assemblyStatusMetaDeviceName"},"device_software":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"type":"null"}],"description":"The software version of the device that recorded the media, such as `\"3.1.2\"`.","x-transloadit-description-id":"assemblyStatusMetaDeviceSoftware"},"device_vendor":{"description":"The manufacturer of the device that recorded the media, such as `\"Apple\"`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusMetaDeviceVendor"},"disc":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"type":"null"}]},"dominant_colors":{"$ref":"#/components/schemas/Schema_72ccb0a44b1e565ea5e2fe4c78d74b1ff0ed2e77b02c8ea011f4822b52e7bd1c"},"duration":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The length of the audio file in seconds.","x-transloadit-description-id":"assemblyStatusMetaDuration"},"encoder":{"type":["null","string"]},"encoding_level":{"type":["null","string"]},"encoding_profile":{"type":["null","string"]},"ends_at":{"type":["null","string"]},"exitCode":{"anyOf":[{"type":"number"},{"type":"null"}]},"exitSignal":{"type":["null","string"]},"exposure_compensation":{"anyOf":[{"anyOf":[{"type":"number"},{"type":"string"}]},{"type":"null"}],"description":"The exposure compensation for this image, such as `\"+4/3\"`.","x-transloadit-description-id":"assemblyStatusMetaExposureCompensation"},"exposure_mode":{"description":"The exposure mode for this image, such as `\"Auto\"`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusMetaExposureMode"},"exposure_time":{"anyOf":[{"anyOf":[{"type":"number"},{"type":"string"}]},{"type":"null"}],"description":"The exposure time for this image, such as `\"1/30\"`.","x-transloadit-description-id":"assemblyStatusMetaExposureTime"},"f_number":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The f-number for this image, such as `5.6`.","x-transloadit-description-id":"assemblyStatusMetaFNumber"},"faces":{"$ref":"#/components/schemas/Schema_8487d0e12453112ed39e75778476ded0f3ed8d298232989948a2717cd876b510"},"field_order":{"$ref":"#/components/schemas/Schema_c70424852e520d7cdce5aae55902166f4b14ea27ea9c9ba9a5386e9fa82cc1d6"},"flash":{"description":"The flash settings for this image, such as `\"Off, Did not fire\"`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusMetaFlash"},"focal_length":{"description":"The focal length for this image, such as `\"55.0 mm\"`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusMetaFocalLength"},"frame_count":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The number of frames in an animated GIF file. This is `1` by default for all other image types.","x-transloadit-description-id":"assemblyStatusMetaFrameCount"},"framerate":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The frame rate of the video, such as `29.5`.","x-transloadit-description-id":"assemblyStatusMetaFramerate"},"genre":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"type":"null"}]},"has_alpha":{"description":"Whether the original image has an alpha channel, including fully opaque alpha-channel images. Returned together with thumbhash; absence means unknown.","type":"boolean","x-transloadit-description-id":"assemblyStatusMetaHasAlpha"},"has_alpha_channel":{"type":["boolean","null"]},"has_artwork":{"type":["boolean","null"]},"has_clipping_path":{"description":"Is `true` if the image contains a clipping path, `false` otherwise.","type":"boolean","x-transloadit-description-id":"assemblyStatusMetaHasClippingPath"},"has_transparency":{"$ref":"#/components/schemas/Schema_4fdf6ef1979b9cbe0906cc3ce47c7ed08a7edfc1a03e0d8fed2e57d8649ddaf1"},"height":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The height of the media in pixels.","x-transloadit-description-id":"assemblyStatusMetaHeight"},"interlace_detection":{"$ref":"#/components/schemas/Schema_49686d9490285d08562b73ccfe3d4dee8a00389586ed4b6122c24a4111c6c22d"},"interlaced":{"$ref":"#/components/schemas/Schema_fbf959fa885d3246a26d6969bd942cd608e858932256050cf4e1efb4ba5763ce"},"iso":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The ISO value for this image, such as `800`.","x-transloadit-description-id":"assemblyStatusMetaIso"},"keywords":{"$ref":"#/components/schemas/Schema_39173f453da53f30ce065784b2c78eb4a8ab20ab6257e736f3309b038272507f"},"latitude":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The latitude at which the media was recorded, such as `52.5374`.","x-transloadit-description-id":"assemblyStatusMetaLatitude"},"light_value":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The light value for this image, such as `6.9`.","x-transloadit-description-id":"assemblyStatusMetaLightValue"},"line_count":{"anyOf":[{"type":"number"},{"type":"null"}]},"location":{"description":"The location at which this image was taken, which is usually the street, such as `\"Zingster Str.\n32\"`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusMetaLocation"},"longitude":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The longitude at which the media was recorded, such as `13.4034`.","x-transloadit-description-id":"assemblyStatusMetaLongitude"},"lyrics":{"type":["null","string"]},"mean_volume":{"$ref":"#/components/schemas/Schema_2bddcc7bb0567b6ae92d65cc2888d8c51615a44366a5d51022f8dabcbc7130e8"},"metering_mode":{"description":"The metering mode for this image, such as `\"Multi-segment\"`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusMetaMeteringMode"},"modify_date":{"anyOf":[{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"items":{"anyOf":[{"type":"string"},{"type":"number"}]},"type":"array"}]},{"type":"null"}]},"num_audio_streams":{"anyOf":[{"type":"number"},{"type":"null"}]},"num_subtitles":{"anyOf":[{"type":"number"},{"type":"null"}]},"num_video_streams":{"anyOf":[{"type":"number"},{"type":"null"}]},"orientation":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"type":"null"}]},"overall_bitrate":{"anyOf":[{"type":"number"},{"type":"null"}]},"page_count":{"anyOf":[{"type":"number"},{"type":"null"}]},"page_size":{"type":["null","string"]},"paragraph_count":{"anyOf":[{"type":"number"},{"type":"null"}]},"performer":{"type":["null","string"]},"pixel_format":{"type":["null","string"]},"previousStep":{"type":"string"},"producer":{"type":["null","string"]},"reason":{"type":"string"},"recognized_text":{"$ref":"#/components/schemas/Schema_0862c00c4e0751b789b855a35c3ce6c8bf90839f7e0e0cfd9bd5654e297de97b"},"reference_count":{"anyOf":[{"type":"number"},{"type":"null"}]},"relative_path":{"type":["null","string"]},"resolution":{"type":["null","string"]},"rights":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"type":"null"}]},"rotation":{"anyOf":[{"type":"number"},{"type":"null"}]},"seekable":{"description":"Whether the format of the video supports seeking, such as `true`.","type":["boolean","null"],"x-transloadit-description-id":"assemblyStatusMetaSeekable"},"segment_index":{"anyOf":[{"type":"number"},{"type":"null"}]},"shutter_speed":{"anyOf":[{"anyOf":[{"type":"number"},{"type":"string"}]},{"type":"null"}],"description":"The shutter speed for this image, such as `\"1/32\"`.","x-transloadit-description-id":"assemblyStatusMetaShutterSpeed"},"starts_at":{"type":["null","string"]},"state":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"type":"null"}],"description":"The state in which this image was taken, such as `\"Berlin\"`.","x-transloadit-description-id":"assemblyStatusMetaState"},"stderr":{"type":"string"},"stdout":{"type":"string"},"step":{"type":"string"},"storage_url":{"type":"string"},"streams":{"anyOf":[{"additionalProperties":true,"properties":{"audio":{"items":{},"type":"array"},"subtitle":{"items":{},"type":"array"},"video":{"items":{},"type":"array"}},"type":"object"},{"type":"null"}]},"svgViewBoxHeight":{"anyOf":[{"type":"number"},{"type":"null"}]},"svgViewBoxWidth":{"anyOf":[{"type":"number"},{"type":"null"}]},"thumb_index":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The index of the current thumbnail starting at 0. This key is only present for results of\n[🤖/video/thumbs](/docs/robots/video-thumbs/).","x-transloadit-description-id":"assemblyStatusMetaThumbIndex"},"thumb_offset":{"$ref":"#/components/schemas/Schema_bc749a53a25fc1063924427ed7f3e031f7f91a7427f838180b47c745582d0e83"},"thumbhash":{"$ref":"#/components/schemas/Schema_0ea4eb8d6377702d52ca8099d657558fcd9648b5abd6568717b4d994ba4a6fca"},"time_base":{"type":["null","string"]},"title":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"type":"null"}],"description":"The title of this image, such as `\"Tree\"`.","x-transloadit-description-id":"assemblyStatusMetaTitle"},"track":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"type":"null"}]},"turbo":{"type":["boolean","null"]},"version_id":{"type":"string"},"video_bitrate":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The video bit rate of the video, such as `500000`.","x-transloadit-description-id":"assemblyStatusMetaVideoBitrate"},"video_codec":{"description":"The video codec of the video, such as `\"ffh264\"`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusMetaVideoCodec"},"white_balance":{"description":"The white balance setting for this image, such as `\"Manual\"`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusMetaWhiteBalance"},"width":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The width of the media in pixels. For video whose display ratio differs from its pixel ratio, this is the intended display width.","x-transloadit-description-id":"assemblyStatusMetaWidth"},"word_count":{"anyOf":[{"type":"number"},{"type":"null"}]},"xp_comment":{"type":["null","string"]},"xp_keywords":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"type":"null"}]},"xp_subject":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"type":"null"}]},"xp_title":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"type":"null"}]},"year":{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"type":"null"}]}},"type":"object"},{"type":"null"}],"description":"An object containing additional metadata extracted from the file, as shown below. Repeated date tags can be returned as lists of their original values. Check the value’s type before using it as a single timestamp.","x-transloadit-description-id":"assemblyStatusFileMeta"},"mime":{"description":"The determined MIME type for this file.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusFileMime"},"name":{"$ref":"#/components/schemas/Schema_cf34f340bc7bf6960489f12206fdbc8accd247b62ebb50a691e7366d14e1641a"},"original_basename":{"type":["null","string"]},"original_id":{"$ref":"#/components/schemas/Schema_82b82f844a9d0f4274a6d334e8aba4f914533926796eb96a51dcba18915e4a8e"},"original_md5hash":{"type":["null","string"]},"original_name":{"type":["null","string"]},"original_path":{"type":["null","string"]},"path":{"type":["null","string"]},"playlists":{"items":{"additionalProperties":true,"properties":{"content":{"type":"string"},"meta":{"additionalProperties":true,"properties":{"aspect_ratio":{"type":"number"},"audio_channels":{"type":"number"},"audio_codec":{"type":"string"},"audio_samplerate":{"type":"number"},"date_file_modified":{"type":"string"},"duration":{"type":"number"},"encoding_level":{"type":"string"},"encoding_profile":{"type":"string"},"framerate":{"type":"number"},"has_alpha_channel":{"type":"boolean"},"has_artwork":{"type":"boolean"},"height":{"type":"number"},"num_audio_streams":{"type":"number"},"overall_bitrate":{"type":"number"},"relative_path":{"type":"string"},"seekable":{"type":"boolean"},"version_id":{"type":"string"},"video_codec":{"type":"string"},"width":{"type":"number"}},"type":"object"},"name":{"anyOf":[{"type":"string"},{"type":"number"}]},"relative_path":{"type":"string"},"stream":{"type":"string"}},"type":"object"},"type":"array"},"preview":{"type":["null","string"]},"queue":{"type":["null","string"]},"queueTime":{"anyOf":[{"type":"number"},{"type":"null"}]},"queue_time":{"anyOf":[{"type":"number"},{"type":"null"}]},"remote_path":{"type":"string"},"sha256":{"description":"Lowercase SHA-256 checksum of the stored bytes, when available.","pattern":"^[a-f0-9]{64}$","type":"string","x-transloadit-description-id":"assemblyStatusFileSha256"},"signed_ssl_url":{"type":"string"},"signed_url":{"type":"string"},"size":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The size of the file, in bytes.","x-transloadit-description-id":"assemblyStatusFileSize"},"size_human":{"type":["null","string"]},"ssl_url":{"type":["null","string"]},"streaming_url":{"type":"string"},"thumbhash":{"$ref":"#/components/schemas/Schema_07e3c7f49387418d6c2cde66ece62087468146d49408a766b5866535f24bcbf1"},"tus_upload_url":{"type":["null","string"]},"type":{"$ref":"#/components/schemas/Schema_eba2b8ae2c68e14f5f8503411ddbf6762207bcdf4d42d8ea33764d7202e26386"},"url":{"$ref":"#/components/schemas/Schema_ef0161cd21eec2fe3d980b6a024a464fd5ba8da86e5eaf9f91bbc29f68545e3f"},"user_meta":{"anyOf":[{"additionalProperties":{},"type":"object"},{"type":"null"}]},"version_id":{"$ref":"#/components/schemas/Schema_76209e57578923a608782b4d21f58198393f30d2e11f67fd09fc8f84977ed260"},"vimeo":{"additionalProperties":true,"properties":{"title":{"type":"string"},"uri":{"type":"string"}},"required":["title","uri"],"type":"object"},"width":{"anyOf":[{"type":"number"},{"type":"null"}]},"workspace":{"$ref":"#/components/schemas/Schema_1866cd4f41bfae6407385f271b41fb4a50547222f99d79fbc854e92054beaff1"}},"type":"object"},"type":"array"},"description":"The result files that Transloadit has produced so far. Each key is the name of the Step that produced a file. Storage Robots do not produce files, so their Step names are omitted. When an `error` occurs, this object may contain partial results.","type":"object","x-transloadit-description-id":"assemblyStatusResponseResults","x-transloadit-schema-id":"sha256:acdda8455918771eb5b7d58d00e895c1326672fa85d67ad42497973e3292f5b8"},"Schema_ad51c2302b6f6e6b4a5a4f89e2eb8ec6b1439d2931ec56ee670bcf0231502e1a":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nPlease create your associated <dfn>Template Credentials</dfn> in your Transloadit account and use the name of your [Template Credentials](/c/template-credentials/) as this parameter's value. They will contain the values for your Azure Container, Account and Key.\n\nWhile we recommend to use <dfn>Template Credentials</dfn> at all times, some use cases demand dynamic credentials for which using <dfn>Template Credentials</dfn> is too unwieldy because of their static nature. If you have this requirement, feel free to use the following parameters instead: `\"account\"`, `\"key\"`, `\"container\"`.\n","x-transloadit-schema-id":"sha256:ad51c2302b6f6e6b4a5a4f89e2eb8ec6b1439d2931ec56ee670bcf0231502e1a"},"Schema_ade574c727e61bf4212a7bab355c2e9e5b7c692564acf70e0269b8e18f0e71fb":{"additionalProperties":false,"properties":{"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for a Template Credentials request.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"required":["expires","key"],"type":"object","x-transloadit-description-id":"templateCredentialsAuth"},"content":{"anyOf":[{"additionalProperties":{},"type":"object"},{"type":"string"}],"description":"Key and value pairs for this credential type. Pass a JSON object or a JSON-encoded string that decodes to an object. See [supported credential types](/docs/api/template-credentials-types-get/) for their fields and [updating credentials](/docs/api/template-credentials-credentials-id-put/) for preservation and secret-rotation behavior.","x-transloadit-description-id":"templateCredentialsContent"},"name":{"description":"Name of the Template Credentials. Must be between 3 and 255 characters and contain only letters, digits, dashes, underscores, and dots.","pattern":"^[A-Za-zK0-9._-]{3,255}$","type":"string","x-transloadit-description-id":"templateCredentialsName"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"},"type":{"description":"The service these credentials belong to. On update, resend the existing type unchanged. To use a different service, create another Template Credential.","enum":["ai","azure","backblaze","box","cloudflare","companion","digitalocean","dropbox","ftp","google","http","mega","minio","rackspace","s3","sftp","supabase","swift","tigris","vimeo","wasabi","youtube"],"type":"string","x-transloadit-description-id":"templateCredentialsType"}},"required":["auth","content","name","type"],"type":"object","x-transloadit-schema-id":"sha256:ade574c727e61bf4212a7bab355c2e9e5b7c692564acf70e0269b8e18f0e71fb"},"Schema_b019f1a21f6e67971385b79a80b27dc74bace871419a217f78f51bd940b22d00":{"additionalProperties":false,"properties":{"asset_ids":{"items":{"description":"Case-sensitive, canonical 22-character Base64URL DAM identifier.","pattern":"^[A-Za-z0-9_-]{21}[AQgw]$","type":"string","x-transloadit-description-id":"damId"},"maxItems":100,"minItems":1,"type":"array","uniqueItems":true},"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for a DAM mutation.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"required":["expires","key"],"type":"object","x-transloadit-description-id":"damMutationAuth"},"destination_folder_id":{"anyOf":[{"description":"Case-sensitive, canonical 22-character Base64URL DAM identifier.","pattern":"^[A-Za-z0-9_-]{21}[AQgw]$","type":"string","x-transloadit-description-id":"damId"},{"type":"null"}],"description":"Destination folder ID for all selected assets. Set to `null` to move them to the root. This field is required.","x-transloadit-description-id":"damAssetsBulkMoveDestination"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"}},"required":["asset_ids","auth","destination_folder_id"],"type":"object","x-transloadit-schema-id":"sha256:b019f1a21f6e67971385b79a80b27dc74bace871419a217f78f51bd940b22d00"},"Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236":{"additionalProperties":{"additionalProperties":{"$ref":"#/components/schemas/Schema_ab455aff2816601f4986e12cb640981fed0db3bd1b22cfc53195f7d94d6293df"},"type":"object"},"type":"object","x-transloadit-schema-id":"sha256:b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"Schema_b1c43384500c1774cd05e2a61ec5c61e12cd7bcf2bf59b5d0cc415cb574bfa04":{"additionalProperties":false,"properties":{"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for an Assembly Stats request.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"required":["expires","key"],"type":"object","x-transloadit-description-id":"assemblyStatsAuth"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"},"region":{"description":"Region to include, or `all` for every region.","minLength":1,"type":"string","x-transloadit-description-id":"statsRegion"},"since":{"description":"Date and time at which the statistics window begins, at most 91 days ago. ISO 8601 is recommended; API2 also preserves date strings accepted by its existing parser. A longer lookback is rejected with the endpoint’s invalid-time error.","minLength":1,"type":"string","x-transloadit-description-id":"statsSince"},"template_id":{"description":"Template ID to include, or `all` for pre-aggregated totals across Templates. Omission, null, an empty string, or `no_template` includes Assemblies created without a Template.","type":["null","string"],"x-transloadit-description-id":"assemblyStatsTemplateId"}},"required":["auth","region","since"],"type":"object","x-transloadit-schema-id":"sha256:b1c43384500c1774cd05e2a61ec5c61e12cd7bcf2bf59b5d0cc415cb574bfa04"},"Schema_b25ac90e330240b3fcc5006abd16617a891e6b7a088e6d1773af47c1bea2047f":{"anyOf":[{"additionalProperties":true,"description":"Bad parameters.","properties":{"error":{"const":"ASSEMBLY_LIST_ERROR","type":"string"},"http_code":{"const":400,"type":"number"},"message":{"description":"Human-readable explanation of the error. Its wording can vary; use the `error` code when handling a specific failure.","type":"string","x-transloadit-description-id":"api2ErrorMessage"}},"required":["error"],"type":"object","x-transloadit-description-id":"api2ErrorAssemblyListError"},{"allOf":[{"$ref":"#/components/schemas/Schema_cb07bdaec8a57b18babcb0842531069c047ea76747de30cb3433ec3ab53763cb"}]}],"x-transloadit-schema-id":"sha256:b25ac90e330240b3fcc5006abd16617a891e6b7a088e6d1773af47c1bea2047f"},"Schema_b2e283538c4e607989f814842d7e5731dbf4015ee0b6ce2127466b40abe570a5":{"description":"Selects the ImageMagick stack for metadata extraction in this Assembly. This does not select the processing stack for Robot Steps. Set `imagemagick_stack` on the relevant Robot Step to select its processing stack.","type":"string","x-transloadit-description-id":"assemblyImageMagickStack","x-transloadit-schema-id":"sha256:b2e283538c4e607989f814842d7e5731dbf4015ee0b6ce2127466b40abe570a5"},"Schema_b3eaec12886d230ec9fd45da6b2e8da7fe928e64efe0174ece3c5e2f4ad443d5":{"additionalProperties":false,"properties":{"assembly_id":{"description":"Restricts results to one Assembly ID.","pattern":"^[a-z0-9]{32}$","type":"string","x-transloadit-description-id":"assembliesAssemblyId"},"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for an Assembly list request.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"type":"object","x-transloadit-description-id":"assembliesListAuth"},"fromdate":{"description":"Specifies the minimum Assembly UTC creation date/time. Only Assemblies after this time are returned. Use the format `Y-m-d H:i:s`. Defaults to seven days before the request. Exact Assembly ID lookups have no default lower bound.","type":"string","x-transloadit-description-id":"assembliesFromDate"},"keywords":{"anyOf":[{"pattern":"^(?:[\\x09-\\x0D\\x20\\xA0                　﻿]*|[\\x09-\\x0D\\x20\\xA0                　﻿]*[^\\x09-\\x0D\\x20\\xA0                　﻿](?:[\\x09-\\x0D\\x20\\xA0                　﻿]|[^\\x09-\\x0D\\x20\\xA0                　﻿])+[^\\x09-\\x0D\\x20\\xA0                　﻿][\\x09-\\x0D\\x20\\xA0                　﻿]*)$","type":"string"},{"items":{"type":"string"},"type":"array"}],"description":"Specifies one search expression directly or as a string array whose items are joined with commas. Nonblank rendered expressions must contain at least three characters after trimming. It matches an Assembly ID or six-character ID prefix, a recognized error code, or (when Assembly field search is enabled for the Workspace) an exact custom field name or value. If a recognized error code also matches a custom field name or value, only Assemblies matching both are returned. Defaults to no keyword filter.","x-transloadit-description-id":"assemblyKeywords"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"},"order":{"description":"Specifies the sort direction. Defaults to `desc`.","enum":["asc","desc"],"type":"string","x-transloadit-description-id":"assembliesOrder"},"page":{"default":1,"description":"Specifies the current page within the current pagination. Defaults to `1`. The derived offset `(page - 1) * pagesize` must remain a safe integer.","maximum":9007199254740991,"minimum":1,"type":"integer","x-transloadit-description-id":"assembliesPage"},"pagesize":{"default":50,"description":"Specifies how many Assemblies to return per API request. Defaults to `50`.","maximum":5000,"minimum":1,"type":"integer","x-transloadit-description-id":"assembliesPageSize"},"region":{"anyOf":[{"pattern":"^[\\x09-\\x0D\\x20\\xA0                　﻿]*$","type":"string"},{"pattern":"^[\\x09-\\x0D\\x20\\xA0                　﻿]*[A-Za-z0-9._-]{1,30}[\\x09-\\x0D\\x20\\xA0                　﻿]*$","type":"string"}],"description":"Restricts results to a region. Omission, a whitespace-only value, or `all` includes every region.","x-transloadit-description-id":"assembliesRegion"},"sort":{"description":"Specifies the field used to sort results. Defaults to `created_ts`.","enum":["created","created_ts","updated"],"type":"string","x-transloadit-description-id":"assembliesSort"},"template_id":{"description":"Restricts results to a Template ID or name. Use `no_template` for Assemblies without a Template. Omission or `all` includes every Template.","type":"string","x-transloadit-description-id":"assembliesTemplateId"},"todate":{"description":"Specifies the maximum Assembly UTC creation date/time. Only Assemblies before this time are returned. Use the format `Y-m-d H:i:s`.","type":"string","x-transloadit-description-id":"assembliesToDate"},"type":{"description":"Specifies the types of Assemblies to retrieve. Defaults to `all`.","enum":["all","canceled","completed","executing","expired","failed","fixable","problematic","request_aborted","uploading"],"type":"string","x-transloadit-description-id":"assembliesType"}},"type":"object","x-transloadit-schema-id":"sha256:b3eaec12886d230ec9fd45da6b2e8da7fe928e64efe0174ece3c5e2f4ad443d5"},"Schema_b54f48fb2e4d0bf53206494c64de3ea8f644cbce7badf257a3b4b3e543b55c87":{"description":"A canonical unsigned base-10 byte count in the signed 64-bit range, without zero padding or a plus sign.","pattern":"^(?:0|[1-9][0-9]{0,17}|[1-8][0-9]{18}|9[0-1][0-9]{17}|92[0-1][0-9]{16}|922[0-2][0-9]{15}|9223[0-2][0-9]{14}|92233[0-6][0-9]{13}|922337[0-1][0-9]{12}|92233720[0-2][0-9]{10}|922337203[0-5][0-9]{9}|9223372036[0-7][0-9]{8}|92233720368[0-4][0-9]{7}|922337203685[0-3][0-9]{6}|9223372036854[0-6][0-9]{5}|92233720368547[0-6][0-9]{4}|922337203685477[0-4][0-9]{3}|9223372036854775[0-7][0-9]{2}|922337203685477580[0-6]|9223372036854775807)$","type":"string","x-transloadit-description-id":"tusCanonicalByteCount","x-transloadit-schema-id":"sha256:b54f48fb2e4d0bf53206494c64de3ea8f644cbce7badf257a3b4b3e543b55c87"},"Schema_b5ef7605301d603a3ab8fb61bd98035e4122ba7cd615748f1a4530a0c260931a":{"anyOf":[{"additionalProperties":true,"properties":{"cache-control":{"const":"no-store","type":"string"},"content-length":{"$ref":"#/components/schemas/Schema_b54f48fb2e4d0bf53206494c64de3ea8f644cbce7badf257a3b4b3e543b55c87"},"tus-resumable":{"const":"1.0.0","type":"string"},"upload-concat":{"$ref":"#/components/schemas/Schema_e8ee92bc15ed8461f1105f4905d570b69c97b11ab8856df69fcce70debe33a94"},"upload-defer-length":{"not":{}},"upload-length":{"$ref":"#/components/schemas/Schema_b54f48fb2e4d0bf53206494c64de3ea8f644cbce7badf257a3b4b3e543b55c87"},"upload-metadata":{"$ref":"#/components/schemas/Schema_05bfded8bff85d456673951be6fccc1bc4f149589a64fb7d239467051b736eee"},"upload-offset":{"$ref":"#/components/schemas/Schema_b54f48fb2e4d0bf53206494c64de3ea8f644cbce7badf257a3b4b3e543b55c87"},"x-content-type-options":{"const":"nosniff","type":"string"}},"required":["cache-control","content-length","tus-resumable","upload-length","upload-offset","x-content-type-options"],"type":"object"},{"additionalProperties":true,"properties":{"cache-control":{"const":"no-store","type":"string"},"content-length":{"not":{}},"tus-resumable":{"const":"1.0.0","type":"string"},"upload-concat":{"$ref":"#/components/schemas/Schema_e8ee92bc15ed8461f1105f4905d570b69c97b11ab8856df69fcce70debe33a94"},"upload-defer-length":{"const":"1","type":"string"},"upload-length":{"not":{}},"upload-metadata":{"$ref":"#/components/schemas/Schema_05bfded8bff85d456673951be6fccc1bc4f149589a64fb7d239467051b736eee"},"upload-offset":{"$ref":"#/components/schemas/Schema_b54f48fb2e4d0bf53206494c64de3ea8f644cbce7badf257a3b4b3e543b55c87"},"x-content-type-options":{"const":"nosniff","type":"string"}},"required":["cache-control","tus-resumable","upload-defer-length","upload-offset","x-content-type-options"],"type":"object"}],"x-transloadit-schema-id":"sha256:b5ef7605301d603a3ab8fb61bd98035e4122ba7cd615748f1a4530a0c260931a"},"Schema_b62f335230de45049d7f8c872c603400d9c3390e829ea06b146da44f2d1905d6":{"additionalProperties":false,"properties":{"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for an Auth Keys request.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"type":"object","x-transloadit-description-id":"authKeysAuth"},"auth_key":{"description":"Custom Auth Key value. API2 generates one when omitted. Characters outside Unicode’s Basic Multilingual Plane, including most emoji, are not supported.","maxLength":64,"pattern":"^[\u0000-퟿-￿]*$","type":"string","x-transloadit-description-id":"authKeyCustomValue"},"can_show_auth_secret":{"anyOf":[{"type":"boolean"},{"const":0,"type":"number"},{"const":1,"type":"number"}],"description":"Whether the generated secret may be revealed once after creation. Defaults to false. The creation response itself includes the secret regardless of this setting; store it securely.","x-transloadit-description-id":"authKeyCanShowSecret"},"description":{"description":"Human-readable Auth Key description. Characters outside Unicode’s Basic Multilingual Plane, including most emoji, are not supported.","maxLength":255,"pattern":"^[\u0000-퟿-￿]*$","type":"string","x-transloadit-description-id":"authKeyDescription"},"is_allowed_for_smartcdn":{"anyOf":[{"type":"boolean"},{"const":0,"type":"number"},{"const":1,"type":"number"}],"description":"Whether this Auth Key can authenticate Smart CDN URLs in addition to ordinary API requests and bearer-token issuance. Each operation still requires its own scope. On creation, omission defaults to false. On update, omission keeps the current value; send false explicitly to disable Smart CDN use.","x-transloadit-description-id":"authKeySmartCdnAllowed"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"},"scope":{"description":"Comma-separated Auth Key scopes. Duplicate scopes are normalized by API2.","pattern":"^(?:[\\x09-\\x0D\\x20\\xA0                　﻿]*,)*[\\x09-\\x0D\\x20\\xA0                　﻿]*(?:read|write|auth_keys:write|auth_keys:read|assemblies:write|assemblies:read|assembly_notifications:write|dam:read|dam:write|template_credentials:read|template_credentials:write|billing:read|queues:read|smart_cdn:sign|templates:read|templates:write|storage_grants:write)[\\x09-\\x0D\\x20\\xA0                　﻿]*(?:,[\\x09-\\x0D\\x20\\xA0                　﻿]*(?:(?:read|write|auth_keys:write|auth_keys:read|assemblies:write|assemblies:read|assembly_notifications:write|dam:read|dam:write|template_credentials:read|template_credentials:write|billing:read|queues:read|smart_cdn:sign|templates:read|templates:write|storage_grants:write)[\\x09-\\x0D\\x20\\xA0                　﻿]*)?)*$","type":"string","x-transloadit-description-id":"authKeyScopes"},"signature_algo":{"anyOf":[{"description":"HMAC algorithm used to sign requests with this Auth Key. On creation, ordinary API keys default to `sha384`. Smart CDN keys accept only `sha256` or `null` and default to `null`. On update, omission keeps the current value, except that enabling Smart CDN resets an incompatible algorithm to `null`.","enum":["sha1","sha256","sha384"],"type":"string","x-transloadit-description-id":"authKeySignatureAlgorithm"},{"type":"null"}],"description":"HMAC algorithm used to sign requests with this Auth Key. On creation, ordinary API keys default to `sha384`. Smart CDN keys accept only `sha256` or `null` and default to `null`. On update, omission keeps the current value, except that enabling Smart CDN resets an incompatible algorithm to `null`.","x-transloadit-description-id":"authKeySignatureAlgorithm"}},"required":["scope"],"type":"object","x-transloadit-schema-id":"sha256:b62f335230de45049d7f8c872c603400d9c3390e829ea06b146da44f2d1905d6"},"Schema_b736e077f16daefe161b737933dc42c15027ce02d7bdb410497f29799a2151aa":{"additionalProperties":{},"description":"A key/value map of additional form fields for integrations that cannot use `<form>` encapsulation, such as Uppy.","type":"object","x-transloadit-description-id":"assemblyStatusResponseFields","x-transloadit-schema-id":"sha256:b736e077f16daefe161b737933dc42c15027ce02d7bdb410497f29799a2151aa"},"Schema_b7ca27e4d0e52342c6ff62aa26a6197224968214c97b47c706dff5e448b13d95":{"additionalProperties":false,"properties":{"message":{"minLength":1,"type":"string"},"ok":{"const":"TEMPLATE_DELETED","type":"string"}},"required":["message","ok"],"type":"object","x-transloadit-schema-id":"sha256:b7ca27e4d0e52342c6ff62aa26a6197224968214c97b47c706dff5e448b13d95"},"Schema_b860c1fcc87a06d67e6e95954b593681bc40014eb7078ba2c613f253eb6b2361":{"anyOf":[{"pattern":"^ERR_[A-Z0-9_]+: [^\\r\\n]*\\n$","type":"string"},{"description":"Raw text/plain hook error framing with a verbatim payload; JSON-shaped but not necessarily valid JSON.","pattern":"^\\{\"error\":\"(?:[\\x09-\\x0D\\x20\\xA0                　﻿]|[^\\x09-\\x0D\\x20\\xA0                　﻿])*\"\\}$","type":"string","x-transloadit-description-id":"tusHookErrorBody"}],"x-transloadit-schema-id":"sha256:b860c1fcc87a06d67e6e95954b593681bc40014eb7078ba2c613f253eb6b2361"},"Schema_b939c38111ab32f8f8dc284a163a1e5a83e530b952c30259d9922a06cc606c67":{"anyOf":[{"additionalProperties":true,"description":"Authorization required.","properties":{"error":{"const":"SERVER_401","type":"string"},"http_code":{"const":401,"type":"number"},"message":{"description":"Human-readable explanation of the error. Its wording can vary; use the `error` code when handling a specific failure.","type":"string","x-transloadit-description-id":"api2ErrorMessage"}},"required":["error"],"type":"object","x-transloadit-description-id":"api2ErrorServer401"},{"additionalProperties":true,"description":"Invalid client credentials.","properties":{"error":{"const":"TOKEN_INVALID_CREDENTIALS","type":"string"},"http_code":{"const":401,"type":"number"},"message":{"description":"Human-readable explanation of the error. Its wording can vary; use the `error` code when handling a specific failure.","type":"string","x-transloadit-description-id":"api2ErrorMessage"}},"required":["error"],"type":"object","x-transloadit-description-id":"api2ErrorTokenInvalidCredentials"},{"additionalProperties":true,"properties":{"error":{"description":"An RFC 6749, 7591 or 8707 error code such as `invalid_grant`.","pattern":"^(?:access_denied|invalid_client|invalid_client_metadata|invalid_grant|invalid_redirect_uri|invalid_request|invalid_scope|invalid_target|server_error|unauthorized_client|unsupported_grant_type)$","type":"string","x-transloadit-description-id":"oauthErrorCode"},"error_description":{"description":"A human-readable explanation that never names an account.","type":"string","x-transloadit-description-id":"oauthErrorDescription"}},"required":["error"],"type":"object"}],"x-transloadit-schema-id":"sha256:b939c38111ab32f8f8dc284a163a1e5a83e530b952c30259d9922a06cc606c67"},"Schema_ba861e76f246f2a09240e7253fbded07ec889e50b94992dc0549cb6c956d1e1c":{"additionalProperties":false,"properties":{"access_token":{"description":"The token to send in the Authorization header of subsequent API requests. Keep it secret.","minLength":1,"type":"string","x-transloadit-description-id":"bearerTokenAccessToken"},"expires_in":{"description":"Token lifetime in seconds from issuance. Request a new token after it expires.","exclusiveMinimum":0,"type":"integer","x-transloadit-description-id":"bearerTokenExpiresIn"},"refresh_token":{"description":"Returned by the `authorization_code` and `refresh_token` grants. Present it to `POST /token` with `grant_type=refresh_token` to obtain a new pair; every use rotates it and reuse of a rotated token revokes the whole lineage.","minLength":1,"type":"string","x-transloadit-description-id":"bearerTokenIssuedRefreshToken"},"scope":{"description":"Space-separated scopes granted to this token.","maxLength":512,"minLength":1,"pattern":"^(?:read|write|auth_keys:write|auth_keys:read|assemblies:write|assemblies:read|assembly_notifications:write|dam:read|dam:write|template_credentials:read|template_credentials:write|billing:read|queues:read|smart_cdn:sign|templates:read|templates:write|storage_grants:write)(?: (?:read|write|auth_keys:write|auth_keys:read|assemblies:write|assemblies:read|assembly_notifications:write|dam:read|dam:write|template_credentials:read|template_credentials:write|billing:read|queues:read|smart_cdn:sign|templates:read|templates:write|storage_grants:write))*$","type":"string","x-transloadit-description-id":"bearerTokenGrantedScopes"},"token_type":{"const":"Bearer","type":"string"}},"required":["access_token","expires_in","scope","token_type"],"type":"object","x-transloadit-schema-id":"sha256:ba861e76f246f2a09240e7253fbded07ec889e50b94992dc0549cb6c956d1e1c"},"Schema_bae6deacf5c14f06cc120d232bd643d6ce773dd88c625a786bc95755afaff7a8":{"anyOf":[{"additionalProperties":true,"properties":{"content-disposition":{"minLength":1,"type":"string"},"content-range":{"description":"The current stored size for an unsatisfied byte range, not the declared final upload length.","pattern":"^bytes [*]\\/[0-9]+$","type":"string","x-transloadit-description-id":"tusUnsatisfiedContentRange"},"content-type":{"const":"text/plain; charset=utf-8","type":"string"},"tus-resumable":{"const":"1.0.0","type":"string"},"x-content-type-options":{"const":"nosniff","type":"string"}},"required":["content-disposition","content-range","content-type","tus-resumable","x-content-type-options"],"type":"object"},{"additionalProperties":true,"properties":{"content-disposition":{"minLength":1,"type":"string"},"content-range":{"not":{}},"content-type":{"const":"text/plain; charset=utf-8","type":"string"},"tus-resumable":{"const":"1.0.0","type":"string"},"x-content-type-options":{"const":"nosniff","type":"string"}},"required":["content-disposition","content-type","tus-resumable","x-content-type-options"],"type":"object"}],"x-transloadit-schema-id":"sha256:bae6deacf5c14f06cc120d232bd643d6ce773dd88c625a786bc95755afaff7a8"},"Schema_bb5b2278b0a4a01b6074fa176b1d2b8118bd586b278ee5cbdbd10b69dd33d5e1":{"additionalProperties":false,"properties":{"signature":{"description":"Lowercase hexadecimal HMAC-SHA1 of the exact transloadit string, without an algorithm prefix. Use a trusted Auth Secret and a timing-safe comparison.","pattern":"^[0-9a-f]{40}$","type":"string","x-transloadit-description-id":"assemblyNotificationSignature"},"transloadit":{"description":"Exact JSON text of the filtered Assembly Status. Verify the signature over this unmodified string before parsing it as JSON.","type":"string","x-transloadit-description-id":"assemblyNotificationPayloadString"}},"required":["signature","transloadit"],"type":"object","x-transloadit-schema-id":"sha256:bb5b2278b0a4a01b6074fa176b1d2b8118bd586b278ee5cbdbd10b69dd33d5e1"},"Schema_bbea786d2847a3b11367518539af6abd307fc35d7725344b7a6c264b53218b39":{"description":"The unique URL used to query the current status of this Assembly, but ready to be\nused over SSL/HTTPS. All API requests that are sent to the `assembly_url` can also be sent to\nthe `assembly_ssl_url`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusResponseAssemblySslUrl","x-transloadit-schema-id":"sha256:bbea786d2847a3b11367518539af6abd307fc35d7725344b7a6c264b53218b39"},"Schema_bc749a53a25fc1063924427ed7f3e031f7f91a7427f838180b47c745582d0e83":{"anyOf":[{"anyOf":[{"type":"number"},{"pattern":"^[\\x09-\\x0D\\x20\\xA0                　﻿]*[+-]?[0-9]+","type":"string"}]},{"type":"null"}],"description":"The offset for the current thumbnail, in seconds. This key is only present for results of\n[🤖/video/thumbs](/docs/robots/video-thumbs/).","x-transloadit-description-id":"assemblyStatusMetaThumbOffset","x-transloadit-schema-id":"sha256:bc749a53a25fc1063924427ed7f3e031f7f91a7427f838180b47c745582d0e83"},"Schema_bc9fbfc32e2939087e1b877c2b51ce63f08c8cdfdcf7adca01505a0498ab5691":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"items":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"type":"array"}],"x-transloadit-schema-id":"sha256:bc9fbfc32e2939087e1b877c2b51ce63f08c8cdfdcf7adca01505a0498ab5691"},"Schema_bde8ad02c55ac79ce6d89b6a92097ae543a54a4110d15a465aca42a4ed3cf3ee":{"description":"The number of bytes that have been uploaded to this Assembly so far. This is\nprimarily used by clients to display upload progress.","type":"number","x-transloadit-description-id":"assemblyStatusResponseBytesReceived","x-transloadit-schema-id":"sha256:bde8ad02c55ac79ce6d89b6a92097ae543a54a4110d15a465aca42a4ed3cf3ee"},"Schema_be8d9cf87fa19191b4ae7951e8157ec31b58525767399fe496cb8d58a86d78be":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"type":"integer"}],"default":0,"description":"\nThe x-offset in number of pixels at which the watermark will be placed in relation to the position it has due to `watermark_position`.\n\nValues can be both positive and negative and yield different results depending on the `watermark_position` parameter. Positive values move the watermark closer to the image's center point, whereas negative values move the watermark further away from the image's center point.\n","x-transloadit-schema-id":"sha256:be8d9cf87fa19191b4ae7951e8157ec31b58525767399fe496cb8d58a86d78be"},"Schema_bf2046fbe6985102c38f69c30542d74796e31ca5b37925448ed8a9ac879d4c26":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"default":"One of your files was declined","description":"\nThe error message shown to your users (such as by Uppy) when a file is declined and `error_on_decline` is set to `true`.\n","x-transloadit-schema-id":"sha256:bf2046fbe6985102c38f69c30542d74796e31ca5b37925448ed8a9ac879d4c26"},"Schema_bf85e496648760c51005fdb6400e54d4bcecbc6ac94262104cfe8dff90f6231c":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["area","fit","stretch"],"type":"string"}],"default":"fit","description":"\nTo explain how the resize strategies work, let's assume our target video size is 800×800 pixels and our watermark image is 400×300 pixels. Let's also assume, the `watermark_size` parameter is set to `\"25%\"`.\n\nFor the `\"fit\"` resize strategy, the watermark is scaled so that the longer side of the watermark takes up 25% of the corresponding video side. And the other side is scaled according to the aspect ratio of the watermark image. So with our watermark, the width is the longer side, and 25% of the video size would be 200px. Hence, the watermark would be resized to 200×150 pixels. If the `watermark_size` was set to `\"50%\"`\", it would be resized to 400×300 pixels (so just left at its original size).\n\nFor the `\"stretch\"` resize strategy, the watermark image is stretched (meaning, it is resized without keeping its aspect ratio in mind) so that both sides take up 25% of the corresponding video side. Since our video is 800×800 pixels, for a watermark size of 25% the watermark would be resized to 200×200 pixels. Its height would appear stretched, because keeping the aspect ratio in mind it would be resized to 200×150 pixels instead.\n\nFor the `\"area\"` resize strategy, the watermark is resized (keeping its aspect ratio in check) so that it covers `\"xx%\"` of the video's surface area. The value from `watermark_size` is used for the percentage area size.\n","x-transloadit-schema-id":"sha256:bf85e496648760c51005fdb6400e54d4bcecbc6ac94262104cfe8dff90f6231c"},"Schema_c242020da3b98956a79933f680e24b9f780508f9223377ee11ef1e890ba21ca0":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["full","list"],"type":"string"}],"default":"full","description":"\nWhether to return a full response including coordinates for the text (`\"full\"`), or a flat list of the extracted phrases (`\"list\"`). This parameter has no effect if the `format` parameter is set to `\"text\"`.\n","x-transloadit-schema-id":"sha256:c242020da3b98956a79933f680e24b9f780508f9223377ee11ef1e890ba21ca0"},"Schema_c28fb7053c3b31723186cb9819a9a6b1b8dbe6af79adcbcb50267bfc1acd0e10":{"anyOf":[{"additionalProperties":true,"properties":{"providerOptions":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"type":{"const":"text","type":"string"},"value":{"type":"string"}},"required":["type","value"],"type":"object"},{"additionalProperties":true,"properties":{"providerOptions":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"type":{"const":"json","type":"string"},"value":{"$ref":"#/components/schemas/Schema_ab455aff2816601f4986e12cb640981fed0db3bd1b22cfc53195f7d94d6293df"}},"required":["type","value"],"type":"object"},{"additionalProperties":true,"properties":{"providerOptions":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"reason":{"type":"string"},"type":{"const":"execution-denied","type":"string"}},"required":["type"],"type":"object"},{"additionalProperties":true,"properties":{"providerOptions":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"type":{"const":"error-text","type":"string"},"value":{"type":"string"}},"required":["type","value"],"type":"object"},{"additionalProperties":true,"properties":{"providerOptions":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"type":{"const":"error-json","type":"string"},"value":{"$ref":"#/components/schemas/Schema_ab455aff2816601f4986e12cb640981fed0db3bd1b22cfc53195f7d94d6293df"}},"required":["type","value"],"type":"object"},{"additionalProperties":true,"properties":{"type":{"const":"content","type":"string"},"value":{"items":{"anyOf":[{"$ref":"#/components/schemas/Schema_ff79c8f71a3217a1b38b7ba2ab1c6ac0c0d575c77c52a209daddad9ee51151af"},{"anyOf":[{"additionalProperties":true,"properties":{"data":{"type":"string"},"experimental_providerMetadata":{},"mimeType":{},"providerOptions":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"type":{"const":"image","type":"string"}},"required":["data","providerOptions","type"],"type":"object"},{"additionalProperties":true,"properties":{"data":{"type":"string"},"experimental_providerMetadata":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"mimeType":{},"providerOptions":{"not":{}},"type":{"const":"image","type":"string"}},"required":["data","type"],"type":"object"},{"additionalProperties":true,"properties":{"data":{"type":"string"},"experimental_providerMetadata":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"mimeType":{},"providerOptions":{"type":"null"},"type":{"const":"image","type":"string"}},"required":["data","providerOptions","type"],"type":"object"}]},{"anyOf":[{"additionalProperties":true,"properties":{"data":{"type":"string"},"experimental_providerMetadata":{},"mediaType":{"type":"string"},"providerOptions":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"type":{"const":"media","type":"string"}},"required":["data","mediaType","providerOptions","type"],"type":"object"},{"additionalProperties":true,"properties":{"data":{"type":"string"},"experimental_providerMetadata":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"mediaType":{"type":"string"},"providerOptions":{"not":{}},"type":{"const":"media","type":"string"}},"required":["data","mediaType","type"],"type":"object"},{"additionalProperties":true,"properties":{"data":{"type":"string"},"experimental_providerMetadata":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"mediaType":{"type":"string"},"providerOptions":{"type":"null"},"type":{"const":"media","type":"string"}},"required":["data","mediaType","providerOptions","type"],"type":"object"}]},{"additionalProperties":true,"properties":{"data":{"$ref":"#/components/schemas/Schema_7cc8d8f776c1f7ce03f3b4dbd8d1e954038f256031ef8a62d19bbdac449d509e"},"filename":{"type":"string"},"mediaType":{"type":"string"},"providerOptions":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"type":{"const":"file","type":"string"}},"required":["data","mediaType","type"],"type":"object"},{"additionalProperties":true,"properties":{"data":{"type":"string"},"filename":{"type":"string"},"mediaType":{"type":"string"},"providerOptions":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"type":{"const":"file-data","type":"string"}},"required":["data","mediaType","type"],"type":"object"},{"additionalProperties":true,"properties":{"mediaType":{"type":"string"},"providerOptions":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"type":{"const":"file-url","type":"string"},"url":{"type":"string"}},"required":["type","url"],"type":"object"},{"additionalProperties":true,"properties":{"fileId":{"anyOf":[{"type":"string"},{"additionalProperties":{"type":"string"},"type":"object"}]},"providerOptions":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"type":{"const":"file-id","type":"string"}},"required":["fileId","type"],"type":"object"},{"additionalProperties":true,"properties":{"providerOptions":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"providerReference":{"additionalProperties":{"type":"string"},"type":"object"},"type":{"const":"file-reference","type":"string"}},"required":["providerReference","type"],"type":"object"},{"additionalProperties":true,"properties":{"data":{"type":"string"},"mediaType":{"type":"string"},"providerOptions":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"type":{"const":"image-data","type":"string"}},"required":["data","mediaType","type"],"type":"object"},{"additionalProperties":true,"properties":{"providerOptions":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"type":{"const":"image-url","type":"string"},"url":{"type":"string"}},"required":["type","url"],"type":"object"},{"additionalProperties":true,"properties":{"fileId":{"anyOf":[{"type":"string"},{"additionalProperties":{"type":"string"},"type":"object"}]},"providerOptions":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"type":{"const":"image-file-id","type":"string"}},"required":["fileId","type"],"type":"object"},{"additionalProperties":true,"properties":{"providerOptions":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"providerReference":{"additionalProperties":{"type":"string"},"type":"object"},"type":{"const":"image-file-reference","type":"string"}},"required":["providerReference","type"],"type":"object"},{"additionalProperties":true,"properties":{"providerOptions":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"type":{"const":"custom","type":"string"}},"required":["type"],"type":"object"}]},"type":"array"}},"required":["type","value"],"type":"object"}],"x-transloadit-schema-id":"sha256:c28fb7053c3b31723186cb9819a9a6b1b8dbe6af79adcbcb50267bfc1acd0e10"},"Schema_c438f8b930d263be20d542bba99a73157870c05b1502869f4c6c99bd1324cfa1":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"additionalProperties":true,"properties":{"align":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["center","left","right"],"type":"string"}],"default":"center","description":"\nThe horizontal text alignment. Can be `\"left\"`, `\"center\"` and `\"right\"`.\n"},"background_color":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^#?[0-9a-fA-F]{3}([0-9a-fA-F]{3})?$","type":"string"}]},{"$ref":"#/components/schemas/Schema_894ca51bc217ffa7c8529a59e38dd1724955749efb7587c16084f133dcc1d688"}],"default":"transparent","description":"\nThe background color behind the text. All hex colors in the form `\"#xxxxxx\"` are supported, where each x can be `0-9` or `a-f`. Named colors like `\"black\"`, `\"white\"`, `\"transparent\"` etc. are also supported.\n"},"color":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^#?[0-9a-fA-F]{3}([0-9a-fA-F]{3})?$","type":"string"}]},{"$ref":"#/components/schemas/Schema_894ca51bc217ffa7c8529a59e38dd1724955749efb7587c16084f133dcc1d688"}],"default":"#000000","description":"\nThe text color. All hex colors in the form `\"#xxxxxx\"` are supported, where each x can be `0-9` or `a-f`. Named colors like `\"black\"`, `\"white\"`, `\"transparent\"` etc. are also supported. If you want a transparent text color, use \"stroke\" instead, otherwise your text will not be visible.\n"},"font":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"default":"Arial","description":"\nThe font family to use. Also includes boldness and style of the font.\n\n[Here](/docs/supported-formats/fonts/) is a list of all\nsupported fonts.\n"},"rotate":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"type":"integer"}],"default":0,"description":"\nThe rotation angle in degrees.\n"},"size":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":1,"type":"integer"}],"default":12,"description":"\nThe text size in pixels.\n"},"stroke_color":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^#?[0-9a-fA-F]{3}([0-9a-fA-F]{3})?$","type":"string"}]},{"$ref":"#/components/schemas/Schema_894ca51bc217ffa7c8529a59e38dd1724955749efb7587c16084f133dcc1d688"}],"default":"transparent","description":"\nThe stroke's color. All hex colors in the form `\"#xxxxxx\"` are supported, where each x can be `0-9` or `a-f`. Named colors like `\"black\"`, `\"white\"`, `\"transparent\"` etc. are also supported.\n"},"stroke_width":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":0,"type":"integer"}],"default":0,"description":"\nThe stroke's width in pixels.\n"},"text":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},"valign":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["bottom","center","top"],"type":"string"}],"default":"center","description":"\nThe vertical text alignment. Can be `\"top\"`, `\"center\"` and `\"bottom\"`.\n"},"x_offset":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"type":"integer"}],"default":0,"description":"\nThe horizontal offset for the text in pixels that is added (positive integer) or removed (negative integer) from the horizontal alignment.\n"},"y_offset":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"type":"integer"}],"default":0,"description":"\nThe vertical offset for the text in pixels that is added (positive integer) or removed (negative integer) from the vertical alignment.\n"}},"required":["text"],"type":"object"}],"x-transloadit-schema-id":"sha256:c438f8b930d263be20d542bba99a73157870c05b1502869f4c6c99bd1324cfa1"},"Schema_c70424852e520d7cdce5aae55902166f4b14ea27ea9c9ba9a5386e9fa82cc1d6":{"description":"The field order reported by FFprobe, such as `\"tt\"`, `\"bb\"`, `\"tb\"`, `\"bt\"`, or\n`\"progressive\"`. Set `output_meta.interlaced` to `true` to request the detection that populates\nthis diagnostic field. This key may be present as `null` when detection was not requested or\nthe field order was unavailable. Use `interlaced` for simple interlaced/progressive branching.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusMetaFieldOrder","x-transloadit-schema-id":"sha256:c70424852e520d7cdce5aae55902166f4b14ea27ea9c9ba9a5386e9fa82cc1d6"},"Schema_c7337d096604fb46c58182801f96da22b63394c2e51ccc20f734a68bdb207a31":{"additionalProperties":false,"properties":{"assembly_status_expiry":{"type":["null","string"]},"content":{"anyOf":[{"additionalProperties":{},"type":"object"},{"items":{},"type":"array"},{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"}]},"id":{"anyOf":[{"maxLength":32,"pattern":"^[\\x00-\\x7F]*$","type":"string"},{"maxLength":32,"pattern":"^builtin\\/[a-z0-9-]+(?:@[0-9a-z.-]+)?$","type":"string"}]},"message":{"minLength":1,"type":"string"},"name":{"maxLength":255,"minLength":1,"type":"string"},"ok":{"const":"TEMPLATE_UPDATED","type":"string"},"require_signature_auth":{"enum":[0,1],"type":"number"},"transcoding_result_expiry":{"type":["null","string"]}},"required":["assembly_status_expiry","content","id","message","name","ok","require_signature_auth","transcoding_result_expiry"],"type":"object","x-transloadit-schema-id":"sha256:c7337d096604fb46c58182801f96da22b63394c2e51ccc20f734a68bdb207a31"},"Schema_ca159bf04e5ff3004e76aa992115890f7a332c46f90913826648557e7fc86b82":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"description":"Whether the results of this Step should be present in the Assembly Status JSON","x-transloadit-schema-id":"sha256:ca159bf04e5ff3004e76aa992115890f7a332c46f90913826648557e7fc86b82"},"Schema_ca72aa2ec7c776cc9d7892a1460fd032ef5b94b1d7c9ffa090d548e7d5360c4e":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["auto","aws","gcp"],"type":"string"}],"default":"auto","description":"Chooses the best provider based on your request.\n\nSelect a specific provider to override automatic selection.","x-transloadit-schema-id":"sha256:ca72aa2ec7c776cc9d7892a1460fd032ef5b94b1d7c9ffa090d548e7d5360c4e"},"Schema_cac575b2a0acce3cfe4158d03351c785fafb3936fe83a0505ce6674d6c1845b3":{"additionalProperties":true,"description":"Unexpected error.","properties":{"error":{"const":"SERVER_500","type":"string"},"http_code":{"const":500,"type":"number"},"message":{"description":"Human-readable explanation of the error. Its wording can vary; use the `error` code when handling a specific failure.","type":"string","x-transloadit-description-id":"api2ErrorMessage"}},"required":["error"],"type":"object","x-transloadit-description-id":"api2ErrorServer500","x-transloadit-schema-id":"sha256:cac575b2a0acce3cfe4158d03351c785fafb3936fe83a0505ce6674d6c1845b3"},"Schema_cb07bdaec8a57b18babcb0842531069c047ea76747de30cb3433ec3ab53763cb":{"additionalProperties":true,"allOf":[{"anyOf":[{"required":["error"]},{"required":["message"]},{"required":["reason"]}]}],"properties":{"assembly_id":{"type":"string"},"error":{"minLength":1,"type":"string"},"http_code":{"anyOf":[{"type":"number"},{"pattern":"^[\\x09-\\x0D\\x20\\xA0                　﻿]*[+-]?0*(?:0(?:[^0-9]|$)|(?:[1-9][0-9]{0,307}|1(?:(?:[0-6][0-9]{7}|7[0-8][0-9]{6}|79[0-6][0-9]{5}|797[0-5][0-9]{4}|7976[0-8][0-9]{3}|79769[0-2][0-9]{2}|7976930[0-9]{1}|7976931[0-2])[0-9]{300}|79769313(?:(?:[0-3][0-9]{7}|4[0-7][0-9]{6}|48[0-5][0-9]{5}|486[0-1][0-9]{4}|4862[0-2][0-9]{3}|486230[0-9]{2}|486231[0-4][0-9]{1}|4862315[0-7])[0-9]{292}|48623158(?:(?:0[0-6][0-9]{6}|07[0-8][0-9]{5}|079[0-2][0-9]{4}|0793[0-6][0-9]{3}|07937[0-1][0-9]{2}|079372[0-7][0-9]{1}|0793728[0-8])[0-9]{284}|07937289(?:(?:[0-6][0-9]{7}|70[0-9]{6}|71[0-3][0-9]{5}|7140[0-4][0-9]{3}|71405[0-2][0-9]{2}|7140530[0-2])[0-9]{276}|71405303(?:(?:[0-3][0-9]{7}|40[0-9]{6}|41[0-4][0-9]{5}|4150[0-6][0-9]{3}|41507[0-8][0-9]{2}|415079[0-8][0-9]{1}|4150799[0-2])[0-9]{268}|41507993(?:(?:[0-3][0-9]{7}|40[0-9]{6}|41[0-2][0-9]{5}|413[0-1][0-9]{4}|4132[0-6][0-9]{3}|413270[0-9]{2})[0-9]{260}|41327100(?:(?:[0-2][0-9]{7}|3[0-6][0-9]{6}|37[0-7][0-9]{5}|378[0-1][0-9]{4}|3782[0-5][0-9]{3}|37826[0-8][0-9]{2}|378269[0-2][0-9]{1}|3782693[0-5])[0-9]{252}|37826936(?:(?:0[0-9]{7}|1[0-6][0-9]{6}|17[0-2][0-9]{5}|173[0-6][0-9]{4}|1737[0-6][0-9]{3}|17377[0-7][0-9]{2}|173778[0-8][0-9]{1}|1737789[0-7])[0-9]{244}|17377898(?:(?:0[0-3][0-9]{6}|04[0-3][0-9]{5}|044[0-3][0-9]{4}|0444[0-8][0-9]{3}|04449[0-5][0-9]{2}|044496[0-7][0-9]{1}|0444968[0-1])[0-9]{236}|04449682(?:(?:[0-8][0-9]{7}|9[0-1][0-9]{6}|92[0-6][0-9]{5}|927[0-5][0-9]{4}|9276[0-3][0-9]{3}|92764[0-6][0-9]{2}|927647[0-4][0-9]{1})[0-9]{228}|92764750(?:(?:[0-8][0-9]{7}|9[0-3][0-9]{6}|94[0-5][0-9]{5}|946[0-5][0-9]{4}|9466[0-3][0-9]{3}|94664[0-8][0-9]{2}|94664900)[0-9]{220}|94664901(?:(?:[0-6][0-9]{7}|7[0-8][0-9]{6}|79[0-6][0-9]{5}|797[0-6][0-9]{4}|7977[0-4][0-9]{3}|79775[0-7][0-9]{2}|797758[0-6][0-9]{1}|7977587[0-1])[0-9]{212}|79775872(?:(?:0[0-6][0-9]{6}|070[0-8][0-9]{4}|0709[0-5][0-9]{3}|07096[0-2][0-9]{2}|070963[0-2][0-9]{1})[0-9]{204}|07096330(?:(?:[0-1][0-9]{7}|2[0-7][0-9]{6}|28[0-5][0-9]{5}|286[0-3][0-9]{4}|28640[0-9]{3}|28641[0-5][0-9]{2}|286416[0-5][0-9]{1}|2864166[0-8])[0-9]{196}|28641669(?:(?:[0-1][0-9]{7}|2[0-7][0-9]{6}|28[0-7][0-9]{5}|288[0-6][0-9]{4}|2887[0-8][0-9]{3}|288790[0-9]{2}|2887910[0-8])[0-9]{188}|28879109(?:(?:[0-3][0-9]{7}|4[0-5][0-9]{6}|46[0-4][0-9]{5}|465[0-4][0-9]{4}|4655[0-4][0-9]{3}|46555[0-4][0-9]{2}|465555[0-3][0-9]{1}|4655554[0-6])[0-9]{180}|46555547(?:(?:[0-7][0-9]{7}|8[0-4][0-9]{6}|850[0-9]{5}|851[0-8][0-9]{4}|8519[0-3][0-9]{3}|851940[0-3][0-9]{1})[0-9]{172}|85194040(?:(?:[0-1][0-9]{7}|2[0-5][0-9]{6}|26[0-2][0-9]{5}|2630[0-5][0-9]{3}|26306[0-4][0-9]{2}|263065[0-6][0-9]{1}|2630657[0-3])[0-9]{164}|26306574(?:(?:[0-7][0-9]{7}|8[0-7][0-9]{6}|88[0-5][0-9]{5}|886[0-6][0-9]{4}|88670[0-9]{3}|88671[0-4][0-9]{2}|8867150[0-4])[0-9]{156}|88671505(?:(?:[0-7][0-9]{7}|8[0-1][0-9]{6}|820[0-5][0-9]{4}|8206[0-7][0-9]{3}|820680[0-9]{2}|820681[0-8][0-9]{1})[0-9]{148}|82068190(?:(?:[0-7][0-9]{7}|8[0-8][0-9]{6}|890[0-1][0-9]{4}|8902000[0-6])[0-9]{140}|89020007(?:(?:0[0-7][0-9]{6}|08[0-2][0-9]{5}|083[0-7][0-9]{4}|0838[0-2][0-9]{3}|08383[0-5][0-9]{2}|083836[0-6][0-9]{1}|0838367[0-5])[0-9]{132}|08383676(?:(?:[0-1][0-9]{7}|2[0-6][0-9]{6}|27[0-2][0-9]{5}|273[0-7][0-9]{4}|2738[0-4][0-9]{3}|27385[0-3][0-9]{2}|273854[0-7][0-9]{1}|2738548[0-3])[0-9]{124}|27385484(?:(?:[0-4][0-9]{7}|5[0-7][0-9]{6}|580[0-9]{5}|581[0-6][0-9]{4}|5817[0-6][0-9]{3}|581770[0-9]{2}|5817710[0-9]{1}|5817711[0-4])[0-9]{116}|58177115(?:(?:[0-2][0-9]{7}|30[0-9]{6}|31[0-6][0-9]{5}|317[0-5][0-9]{4}|3176[0-3][0-9]{3}|31764[0-3][0-9]{2}|317644[0-6][0-9]{1}|3176447[0-4])[0-9]{108}|31764475(?:(?:[0-6][0-9]{7}|7[0-2][0-9]{6}|730[0-1][0-9]{4}|7302[0-6][0-9]{3}|7302700[0-5])[0-9]{100}|73027006(?:(?:[0-8][0-9]{7}|9[0-7][0-9]{6}|98[0-4][0-9]{5}|985[0-4][0-9]{4}|9855[0-4][0-9]{3}|98555[0-6][0-9]{2}|9855570[0-9]{1}|9855571[0-2])[0-9]{92}|98555713(?:(?:[0-5][0-9]{7}|6[0-5][0-9]{6}|66[0-8][0-9]{5}|669[0-4][0-9]{4}|6695[0-8][0-9]{3}|66959[0-5][0-9]{2}|669596[0-1][0-9]{1}|6695962[0-1])[0-9]{84}|66959622(?:(?:[0-7][0-9]{7}|8[0-3][0-9]{6}|84[0-1][0-9]{5}|842[0-8][0-9]{4}|84290[0-9]{3}|84291[0-3][0-9]{2}|842914[0-7][0-9]{1}|84291480)[0-9]{76}|84291481(?:(?:[0-8][0-9]{7}|9[0-7][0-9]{6}|98[0-5][0-9]{5}|9860[0-7][0-9]{3}|98608[0-2][0-9]{2}|986083[0-3][0-9]{1}|9860834[0-8])[0-9]{68}|98608349(?:(?:[0-2][0-9]{7}|3[0-5][0-9]{6}|36[0-3][0-9]{5}|364[0-6][0-9]{4}|3647[0-4][0-9]{3}|36475[0-1][0-9]{2}|364752[0-8][0-9]{1}|3647529[0-1])[0-9]{60}|36475292(?:(?:[0-6][0-9]{7}|70[0-9]{6}|71[0-8][0-9]{5}|7190[0-6][0-9]{3}|71907[0-3][0-9]{2}|7190740[0-9]{1}|7190741[0-5])[0-9]{52}|71907416(?:(?:[0-7][0-9]{7}|8[0-3][0-9]{6}|84[0-3][0-9]{5}|844[0-3][0-9]{4}|8444[0-2][0-9]{3}|84443[0-5][0-9]{2}|844436[0-4][0-9]{1}|8444365[0-4])[0-9]{44}|84443655(?:(?:0[0-9]{7}|10[0-6][0-9]{5}|1070[0-3][0-9]{3}|10704[0-2][0-9]{2}|107043[0-3][0-9]{1}|1070434[0-1])[0-9]{36}|10704342(?:(?:[0-6][0-9]{7}|70[0-9]{6}|710[0-9]{5}|711[0-4][0-9]{4}|7115[0-4][0-9]{3}|71155[0-8][0-9]{2}|711559[0-5][0-9]{1}|7115596[0-8])[0-9]{28}|71155969(?:(?:[0-8][0-9]{7}|9[0-4][0-9]{6}|950[0-7][0-9]{4}|95080[0-8][0-9]{2}|950809[0-2][0-9]{1})[0-9]{20}|95080930(?:(?:[0-3][0-9]{7}|4[0-1][0-9]{6}|42[0-7][0-9]{5}|428[0-7][0-9]{4}|428800[0-9]{2}|428801[0-6][0-9]{1}|4288017[0-6])[0-9]{12}|42880177(?:(?:[0-8][0-9]{7}|90[0-3][0-9]{5}|9040[0-9]{4}|9041[0-6][0-9]{3}|90417[0-3][0-9]{2}|904174[0-3][0-9]{1}|9041744[0-8])[0-9]{4}|90417449(?:(?:[0-6][0-9]{3}|7[0-6][0-9]{2}|77[0-8][0-9]{1}|7790)|7791))))))))))))))))))))))))))))))))))))))))(?:[^0-9]|$))","type":"string"}]},"message":{"description":"Human-readable explanation of the error. Its wording can vary; use the `error` code when handling a specific failure.","type":"string","x-transloadit-description-id":"api2ErrorMessage"},"reason":{"anyOf":[{"type":"null"},{"type":"string"},{"type":"number"},{"type":"boolean"},{"items":{},"type":"array"},{"additionalProperties":{},"type":"object"}]}},"type":"object","x-transloadit-schema-id":"sha256:cb07bdaec8a57b18babcb0842531069c047ea76747de30cb3433ec3ab53763cb"},"Schema_cb4297474f7736946a4e5460673b7bbc07fc5087f9ded06cc5da5201225bdd2a":{"additionalProperties":true,"properties":{"message":{"minLength":1,"type":"string"},"ok":{"const":"TEMPLATE_CREDENTIALS_DELETED","type":"string"}},"required":["message","ok"],"type":"object","x-transloadit-schema-id":"sha256:cb4297474f7736946a4e5460673b7bbc07fc5087f9ded06cc5da5201225bdd2a"},"Schema_cdc51173ac516e6666b0b0e742c892d850b3f12d187fba2a0a5489667514639e":{"additionalProperties":false,"properties":{"assets":{"items":{"additionalProperties":false,"properties":{"asset":{"additionalProperties":true,"properties":{"asset_id":{"description":"Stable asset ID. It survives native moves and renames; use it without a version to select the current bytes.","pattern":"^[A-Za-z0-9_-]{21}[AQgw]$","type":"string","x-transloadit-description-id":"storedAssetAssetId"},"has_alpha":{"description":"Whether the image has an alpha channel, even if all its pixels are opaque. Present when ThumbHash extraction succeeds; absence means unknown.","type":"boolean","x-transloadit-description-id":"storedAssetHasAlpha"},"height":{"description":"Display height in pixels, after applying EXIF orientation, when known.","exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer","x-transloadit-description-id":"storedAssetHeight"},"md5hash":{"description":"Lowercase MD5 checksum of the stored bytes, when available.","pattern":"^[a-f0-9]{32}$","type":"string","x-transloadit-description-id":"storedAssetMd5Hash"},"mime":{"description":"MIME type of the stored bytes, or null when unknown.","type":["null","string"],"x-transloadit-description-id":"storedAssetMime"},"path":{"description":"Current mutable location relative to the Workspace. A rename makes the previous path stale; overwriting can change the bytes at this path.","minLength":1,"type":"string","x-transloadit-description-id":"storedAssetPath"},"sha256":{"description":"Lowercase SHA-256 checksum of the stored bytes, when available.","pattern":"^[a-f0-9]{64}$","type":"string","x-transloadit-description-id":"storedAssetSha256"},"size":{"description":"Size of the stored file in bytes.","maximum":9007199254740991,"minimum":0,"type":"integer","x-transloadit-description-id":"storedAssetSize"},"thumbhash":{"description":"Base64-encoded ThumbHash of this version’s displayed pixels, when requested with output_meta.thumbhash on its producing Step. This is image data: apply the same access controls as the original.","pattern":"^(?:[A-Za-z0-9+/]{4}){1,15}(?:[A-Za-z0-9+/]{4}|[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)$","type":"string","x-transloadit-description-id":"storedAssetThumbhash"},"version_id":{"description":"Exact immutable version of this asset. Pair with asset_id to select retained bytes; a missing version never falls back to the current version.","pattern":"^[A-Za-z0-9_-]{21}[AQgw]$","type":"string","x-transloadit-description-id":"storedAssetVersionId"},"width":{"description":"Display width in pixels, after applying EXIF orientation, when known.","exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer","x-transloadit-description-id":"storedAssetWidth"},"workspace":{"description":"Workspace slug that owns this asset. Authenticate for the same Workspace when reading or managing it.","minLength":1,"type":"string","x-transloadit-description-id":"storedAssetWorkspace"}},"required":["asset_id","mime","path","size","version_id","workspace"],"type":"object"},"asset_id":{"description":"Case-sensitive, canonical 22-character Base64URL DAM identifier.","pattern":"^[A-Za-z0-9_-]{21}[AQgw]$","type":"string","x-transloadit-description-id":"damId"},"deleted_at":{"anyOf":[{"$ref":"#/components/schemas/Schema_4e26553b40ceb7f4fccba1cb4f658b1497c18e9b47d825e006083381740d4576"},{"type":"null"}]},"filename":{"minLength":1,"type":"string"},"folder_id":{"anyOf":[{"description":"Case-sensitive, canonical 22-character Base64URL DAM identifier.","pattern":"^[A-Za-z0-9_-]{21}[AQgw]$","type":"string","x-transloadit-description-id":"damId"},{"type":"null"}],"description":"Case-sensitive, canonical 22-character Base64URL DAM identifier.","x-transloadit-description-id":"damId"},"path":{"minLength":1,"type":"string"},"updated_at":{"$ref":"#/components/schemas/Schema_4e26553b40ceb7f4fccba1cb4f658b1497c18e9b47d825e006083381740d4576"}},"required":["asset","asset_id","deleted_at","filename","folder_id","path","updated_at"],"type":"object"},"type":"array"},"message":{"minLength":1,"type":"string"},"ok":{"const":"DAM_ASSETS_MOVED","type":"string"}},"required":["assets","message","ok"],"type":"object","x-transloadit-schema-id":"sha256:cdc51173ac516e6666b0b0e742c892d850b3f12d187fba2a0a5489667514639e"},"Schema_cf34f340bc7bf6960489f12206fdbc8accd247b62ebb50a691e7366d14e1641a":{"description":"The name of the file. Transloadit will change the extension used for this field if the file\nundergoes processing into a different format.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusFileName","x-transloadit-schema-id":"sha256:cf34f340bc7bf6960489f12206fdbc8accd247b62ebb50a691e7366d14e1641a"},"Schema_d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["batch"],"type":"string"}],"description":"Setting the queue to 'batch', manually downgrades the priority of jobs for this step to avoid consuming Priority job slots for jobs that don't need zero queue waiting times","x-transloadit-schema-id":"sha256:d0a30e0594348bac539404e659baaa1896ab178c82448e3cb657bb8df8a525c4"},"Schema_d10c75b8416036a412d719f3270a8e7c55c3e7241fea58efd7ba559263a2a8f6":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"additionalProperties":false,"properties":{"x1":{"anyOf":[{"$ref":"#/components/schemas/Schema_9512d12bb73438b337e679242bd743ae4b5856d07e71ede1ace50fad9b0b14a6"},{"type":"null"}]},"x2":{"anyOf":[{"$ref":"#/components/schemas/Schema_9512d12bb73438b337e679242bd743ae4b5856d07e71ede1ace50fad9b0b14a6"},{"type":"null"}]},"y1":{"anyOf":[{"$ref":"#/components/schemas/Schema_9512d12bb73438b337e679242bd743ae4b5856d07e71ede1ace50fad9b0b14a6"},{"type":"null"}]},"y2":{"anyOf":[{"$ref":"#/components/schemas/Schema_9512d12bb73438b337e679242bd743ae4b5856d07e71ede1ace50fad9b0b14a6"},{"type":"null"}]}},"type":"object"}],"x-transloadit-schema-id":"sha256:d10c75b8416036a412d719f3270a8e7c55c3e7241fea58efd7ba559263a2a8f6"},"Schema_d22a76a8ee6772f210db0c607b951c8c93ac86503e983681005064c9b1b4705d":{"items":{"additionalProperties":true,"properties":{"fieldname":{"type":"string"},"filename":{"type":"string"},"finished":{"type":"boolean"},"offset":{"type":"number"},"size":{"type":"number"},"upload_url":{"type":"string"},"user_meta":{"additionalProperties":{},"type":"object"}},"required":["fieldname","filename","finished","offset","size","upload_url"],"type":"object"},"type":"array","x-transloadit-schema-id":"sha256:d22a76a8ee6772f210db0c607b951c8c93ac86503e983681005064c9b1b4705d"},"Schema_d300119ee8d16e72882af16ef449639393821a80bc12430be44571d9b242781d":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nPlease create your associated <dfn>Template Credentials</dfn> in your Transloadit account and use the name of your <dfn>Template Credentials</dfn> as this parameter's value. They will contain the values for your Cloudflare R2 bucket, Key, Secret and Bucket region.\n\nWhile we recommend to use <dfn>Template Credentials</dfn> at all times, some use cases demand dynamic credentials for which using <dfn>Template Credentials</dfn> is too unwieldy because of their static nature. If you have this requirement, feel free to use the following parameters instead: `\"bucket\"`, `\"host\"`, `\"key\"`, `\"secret\"`.\n","x-transloadit-schema-id":"sha256:d300119ee8d16e72882af16ef449639393821a80bc12430be44571d9b242781d"},"Schema_d3ccf2a1956c64a2b53326785ba0c36292dd870853555c9b3d91afc00606e84b":{"description":"An array of files uploaded for this Assembly. For more information, see the [metadata\ndocs](/docs/api/metadata/).","items":{"anyOf":[{"additionalProperties":true,"properties":{"as":{"anyOf":[{"anyOf":[{"type":"string"},{"items":{"type":"string"},"type":"array"}]},{"type":"null"}]},"asset_id":{"$ref":"#/components/schemas/Schema_ea4fbaa6b619d555b449bce20f35f0d31fdbffec9451bb442e1f8fafe5d53aa4"},"asset_version":{"description":"Numeric revision of the stored asset. Use `version_id`, not this number, to select exact retained bytes.","type":"number","x-transloadit-description-id":"assemblyStatusFileAssetVersion"},"basename":{"description":"The name of the file without the extension.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusFileBasename"},"cost":{"anyOf":[{"type":"number"},{"type":"null"}]},"exec_time":{"type":"number"},"ext":{"$ref":"#/components/schemas/Schema_20714a1e88ff0ab94e9cc51f51d49cf13c83b2aff23f6f8cf7cb83bbee003d89"},"field":{"description":"The name of the form field used to submit this file.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusFileField"},"from_batch_import":{"type":"boolean"},"has_alpha":{"description":"Whether this stored image version has an alpha channel, when known.","type":"boolean","x-transloadit-description-id":"assemblyStatusFileHasAlpha"},"id":{"description":"A random and unique ID used internally by Transloadit to track the file.","type":"string","x-transloadit-description-id":"assemblyStatusFileId"},"import_url":{"type":"string"},"is_temp_url":{"type":"boolean"},"is_tus_file":{"type":"boolean"},"md5hash":{"type":["null","string"]},"meta":{"$ref":"#/components/schemas/Schema_2a0dea4e10f4e4eb697e105cc7f050126a0470319c94d96096994d2ee31b6d71"},"mime":{"description":"The determined MIME type for this file.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusFileMime"},"name":{"$ref":"#/components/schemas/Schema_cf34f340bc7bf6960489f12206fdbc8accd247b62ebb50a691e7366d14e1641a"},"original_basename":{"type":["null","string"]},"original_id":{"$ref":"#/components/schemas/Schema_82b82f844a9d0f4274a6d334e8aba4f914533926796eb96a51dcba18915e4a8e"},"original_md5hash":{"type":["null","string"]},"original_name":{"type":["null","string"]},"original_path":{"type":"string"},"queue":{"type":["null","string"]},"queue_time":{"type":"number"},"sha256":{"description":"Lowercase SHA-256 checksum of the stored bytes, when available.","pattern":"^[a-f0-9]{64}$","type":"string","x-transloadit-description-id":"assemblyStatusFileSha256"},"size":{"description":"The size of the file, in bytes.","type":"number","x-transloadit-description-id":"assemblyStatusFileSize"},"ssl_url":{"type":["null","string"]},"thumbhash":{"$ref":"#/components/schemas/Schema_07e3c7f49387418d6c2cde66ece62087468146d49408a766b5866535f24bcbf1"},"tus_upload_url":{"type":["null","string"]},"type":{"$ref":"#/components/schemas/Schema_eba2b8ae2c68e14f5f8503411ddbf6762207bcdf4d42d8ea33764d7202e26386"},"url":{"$ref":"#/components/schemas/Schema_ef0161cd21eec2fe3d980b6a024a464fd5ba8da86e5eaf9f91bbc29f68545e3f"},"user_meta":{"additionalProperties":{},"type":"object"},"version_id":{"$ref":"#/components/schemas/Schema_76209e57578923a608782b4d21f58198393f30d2e11f67fd09fc8f84977ed260"},"workspace":{"$ref":"#/components/schemas/Schema_1866cd4f41bfae6407385f271b41fb4a50547222f99d79fbc854e92054beaff1"}},"required":["basename","ext","field","id","meta","mime","name","original_id","size","type","url"],"type":"object"},{"additionalProperties":true,"properties":{"as":{"anyOf":[{"anyOf":[{"type":"string"},{"items":{"type":"string"},"type":"array"}]},{"type":"null"}]},"asset_id":{"$ref":"#/components/schemas/Schema_ea4fbaa6b619d555b449bce20f35f0d31fdbffec9451bb442e1f8fafe5d53aa4"},"asset_version":{"description":"Numeric revision of the stored asset. Use `version_id`, not this number, to select exact retained bytes.","type":"number","x-transloadit-description-id":"assemblyStatusFileAssetVersion"},"basename":{"description":"The name of the file without the extension.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusFileBasename"},"cost":{"anyOf":[{"type":"number"},{"type":"null"}]},"exec_time":{"type":"number"},"ext":{"$ref":"#/components/schemas/Schema_20714a1e88ff0ab94e9cc51f51d49cf13c83b2aff23f6f8cf7cb83bbee003d89"},"field":{"description":"The name of the form field used to submit this file.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusFileField"},"from_batch_import":{"type":"boolean"},"has_alpha":{"description":"Whether this stored image version has an alpha channel, when known.","type":"boolean","x-transloadit-description-id":"assemblyStatusFileHasAlpha"},"id":{"not":{}},"import_url":{"type":"string"},"is_temp_url":{"type":"boolean"},"is_tus_file":{"type":"boolean"},"md5hash":{"type":["null","string"]},"meta":{"$ref":"#/components/schemas/Schema_2a0dea4e10f4e4eb697e105cc7f050126a0470319c94d96096994d2ee31b6d71"},"mime":{"description":"The determined MIME type for this file.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusFileMime"},"name":{"$ref":"#/components/schemas/Schema_cf34f340bc7bf6960489f12206fdbc8accd247b62ebb50a691e7366d14e1641a"},"original_basename":{"type":["null","string"]},"original_id":{"$ref":"#/components/schemas/Schema_82b82f844a9d0f4274a6d334e8aba4f914533926796eb96a51dcba18915e4a8e"},"original_md5hash":{"type":["null","string"]},"original_name":{"type":["null","string"]},"original_path":{"type":"string"},"queue":{"type":["null","string"]},"queue_time":{"type":"number"},"sha256":{"description":"Lowercase SHA-256 checksum of the stored bytes, when available.","pattern":"^[a-f0-9]{64}$","type":"string","x-transloadit-description-id":"assemblyStatusFileSha256"},"size":{"description":"The size of the file, in bytes.","type":"number","x-transloadit-description-id":"assemblyStatusFileSize"},"ssl_url":{"type":["null","string"]},"thumbhash":{"$ref":"#/components/schemas/Schema_07e3c7f49387418d6c2cde66ece62087468146d49408a766b5866535f24bcbf1"},"tus_upload_url":{"type":["null","string"]},"type":{"$ref":"#/components/schemas/Schema_eba2b8ae2c68e14f5f8503411ddbf6762207bcdf4d42d8ea33764d7202e26386"},"url":{"$ref":"#/components/schemas/Schema_ef0161cd21eec2fe3d980b6a024a464fd5ba8da86e5eaf9f91bbc29f68545e3f"},"user_meta":{"additionalProperties":{},"type":"object"},"version_id":{"$ref":"#/components/schemas/Schema_76209e57578923a608782b4d21f58198393f30d2e11f67fd09fc8f84977ed260"},"workspace":{"$ref":"#/components/schemas/Schema_1866cd4f41bfae6407385f271b41fb4a50547222f99d79fbc854e92054beaff1"}},"required":["original_id"],"type":"object"}]},"type":"array","x-transloadit-description-id":"assemblyStatusResponseUploads","x-transloadit-schema-id":"sha256:d3ccf2a1956c64a2b53326785ba0c36292dd870853555c9b3d91afc00606e84b"},"Schema_d548e8bb728f4595f7a0a92a813ce2d52b5c74cf68dc1c0cc98cd54dc37b90ff":{"additionalProperties":false,"properties":{"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for a DAM mutation.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"type":"object","x-transloadit-description-id":"damMutationAuth"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"}},"type":"object","x-transloadit-schema-id":"sha256:d548e8bb728f4595f7a0a92a813ce2d52b5c74cf68dc1c0cc98cd54dc37b90ff"},"Schema_d5ef7d974dc01ece7e15c421fcd577c7886fd9f9330c331592204e0444cb2683":{"additionalProperties":false,"properties":{"assembly_status_expiry":{"description":"Controls how long the Assembly Status is retained for Assemblies created from this Template.","enum":["1day","30days","7days","90days","NoSave"],"type":"string","x-transloadit-description-id":"templateAssemblyStatusExpiry"},"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for a Template request.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"required":["expires","key"],"type":"object","x-transloadit-description-id":"templateAuth"},"name":{"description":"Name of this Template. Use 3–200 lowercase Latin letters, numbers, or dashes. The name `tmp` and service-reserved names are unavailable.","maxLength":200,"minLength":3,"pattern":"^(?:[a-su-z0-9-][a-z0-9-]{2,199}|t[a-ln-z0-9-][a-z0-9-]{1,198}|tm[a-oq-z0-9-][a-z0-9-]{0,197}|tmp[a-z0-9-]{1,197})$","type":"string","x-transloadit-description-id":"templateName"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"},"require_signature_auth":{"description":"Use `1` to require a valid signature when creating Assemblies from this Template with an Auth Key. Valid bearer tokens bypass this signature requirement; their scopes and audience still apply. This setting does not add authentication to Assembly status, cancellation or upload capability URLs. See [Signature Authentication](/docs/api/authentication/).","enum":[0,1],"type":"number","x-transloadit-description-id":"requireSignatureAuth"},"template":{"anyOf":[{"additionalProperties":false,"description":"Structured Assembly Instructions stored in this Template.","properties":{"allow_steps_override":{"description":"Set this to false in a stored Template to disallow overriding its Steps at runtime. The Template may then be used with `template_id`, or direct `steps` may be supplied without it, but not both. A value supplied only while creating an Assembly does not control this policy.","type":"boolean","x-transloadit-description-id":"allowStepsOverride"},"auth":{"additionalProperties":false,"description":"Optional authentication and upload constraints for an Assembly. The API key may be omitted for bearer-authenticated requests or when only upload constraints are stored in a Template.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"},"max_number_of_files":{"description":"Maximum number of input files allowed per Assembly. If the number of uploaded or imported files exceeds this limit, the Assembly will be stopped with an error. This is useful for preventing abuse when Signature Authentication credentials are exposed.","minimum":1,"type":"integer","x-transloadit-description-id":"signatureAuthMaxNumberOfFiles"},"max_size":{"description":"Maximum total expected upload size in bytes for the Assembly, including request-body overhead. This is not a per-file limit and does not guarantee rejection before a resumable transfer starts.","type":"number","x-transloadit-description-id":"signatureAuthMaxSize"},"referer":{"description":"Regular expression matched against a supplied HTTP Referer. Invalid expressions and expressions that exceed the evaluation time limit are rejected. Missing Referer headers pass this check; use Signature Authentication to authenticate requests.","type":"string","x-transloadit-description-id":"signatureAuthReferer"}},"type":"object","x-transloadit-description-id":"assemblyOptionalAuth"},"emit_execution_progress":{"description":"Set to true to publish real-time Assembly execution-progress events. This is ignored for URL Transform Assemblies.","type":"boolean","x-transloadit-description-id":"assemblyEmitExecutionProgress"},"exiftool_stack":{"description":"Ignored when stored in a Template. To select the ExifTool stack for metadata extraction, set `exiftool_stack` in the top-level Assembly request params instead.","type":"string","x-transloadit-description-id":"storedTemplateExifToolStack"},"ffmpeg_stack":{"description":"Ignored when stored in a Template. To select the FFmpeg stack for metadata extraction, set `ffmpeg_stack` in the top-level Assembly request params instead.","type":"string","x-transloadit-description-id":"storedTemplateFfmpegStack"},"fields":{"additionalProperties":{},"description":"An object of string keyed values (name -> value) that can be used as Assembly Variables, just like additional form fields can. You can use anything that is JSON stringifyable as a value","type":"object","x-transloadit-description-id":"fields"},"imagemagick_stack":{"description":"Ignored when stored in a Template. To select the ImageMagick stack for metadata extraction, set `imagemagick_stack` in the top-level Assembly request params instead.","type":"string","x-transloadit-description-id":"storedTemplateImageMagickStack"},"mediainfo_stack":{"description":"Ignored when stored in a Template. To select the MediaInfo stack for metadata extraction, set `mediainfo_stack` in the top-level Assembly request params instead.","type":"string","x-transloadit-description-id":"storedTemplateMediaInfoStack"},"mplayer_stack":{"description":"Ignored when stored in a Template. To select the MPlayer stack for metadata extraction, set `mplayer_stack` in the top-level Assembly request params instead.","type":"string","x-transloadit-description-id":"storedTemplateMplayerStack"},"notification_payload":{"description":"Controls the size of the payload sent in Assembly notifications. Notification replays reuse filters supplied in the original Assembly request; filters defined only in a Template are not preserved on replay. An empty array (default) sends the complete Assembly Status. Add `\"without_params\"` so the top-level raw Assembly instruction fields `params`, `template`, and `merged_params` are omitted. Add `\"without_result_meta_data\"` so `meta` is omitted from each file in `results`. Add `\"without_results\"` so the top-level `results` object is omitted. Add `\"without_upload_meta_data\"` so `meta` is omitted from each file in `uploads`. Add `\"without_uploads\"` so the top-level `uploads` array is omitted. Filtering is applied before serialization, so using these options reduces memory use and helps avoid oversized-payload or OOM failures on large Assemblies.","items":{"enum":["without_params","without_result_meta_data","without_results","without_upload_meta_data","without_uploads"],"type":"string"},"type":"array","x-transloadit-description-id":"notificationPayload"},"notify_url":{"description":"Transloadit can send a Pingback to your server when the Assembly is completed. We’ll send the Assembly Status as a JSON string in the `transloadit` field of an `application/x-www-form-urlencoded` POST request to the URL supplied here. Use `notification_payload` to reduce the payload size (e.g. `without_uploads`, `without_results`, `without_params`). Notification replays reuse only filters supplied in the original Assembly request, not filters defined only in a Template.","type":["null","string"],"x-transloadit-description-id":"notifyUrl"},"quiet":{"description":"Set this to true to minimize the initial Assembly-creation response. A successful response includes only ok and assembly_id; an error response retains error, http_code, message, reason and assembly_id when available. This is response minimization, not access control: anyone with the returned Assembly ID can still retrieve the full Assembly Status, including fields and results, without additional authentication. Treat Assembly IDs and status URLs as secret capabilities. The full Assembly Status is still sent to notify_url when configured.","type":"boolean","x-transloadit-description-id":"quiet"},"redirect_url":{"description":"URL to redirect a browser upload to after the upload completes. The Assembly ID and status URL are appended as query parameters while preserving any existing query parameters and fragment.","type":"string","x-transloadit-description-id":"assemblyRedirectUrl"},"response_headers":{"additionalProperties":true,"description":"Custom response headers emitted by an Assembly. CORS overrides belong in `cors`; other top-level keys are emitted as custom headers.","properties":{"cors":{"additionalProperties":true,"properties":{"Access-Control-Allow-Credentials":{"type":"boolean"},"Access-Control-Allow-Headers":{"type":"string"},"Access-Control-Allow-Methods":{"type":"string"},"Access-Control-Allow-Origin":{"type":"string"},"Access-Control-Allow-Private-Network":{"type":"boolean"},"Access-Control-Allow-Public-Network":{"type":"boolean"},"Access-Control-Expose-Headers":{"type":"string"},"Access-Control-Max-Age":{"type":"number"}},"type":"object"}},"type":"object","x-transloadit-description-id":"assemblyResponseHeaders"},"steps":{"allOf":[{"$ref":"#/components/schemas/Schema_97aad3d37f5046edcb335db4458316ce19e3edbaf9c9f74754f078aae9e99450"}],"description":"Contains Assembly Instructions.","x-transloadit-description-id":"assemblyInstructions"},"template_id":{"description":"Ignored when stored in a Template. Templates do not inherit Instructions from another Template. Put the Steps directly in this Template and select it using `template_id` in the top-level Assembly request params.","type":"string","x-transloadit-description-id":"storedTemplateId"},"usage_tags":{"description":"Usage tags recorded on an Assembly.","type":"string","x-transloadit-description-id":"assemblyUsageTags"}},"type":"object","x-transloadit-description-id":"templateContentObject"},{"description":"JSON-encoded Assembly Instructions retained for client compatibility.","pattern":"^[\\x09-\\x0D\\x20\\xA0                　﻿]*\\{(?:[^\\x00]|\\x00)*\\}[\\x09-\\x0D\\x20\\xA0                　﻿]*$","type":"string","x-transloadit-description-id":"templateContentJson","x-transloadit-input-fidelity":"conservative"}],"description":"Assembly Instructions stored in this Template. Prefer the structured JSON object; a JSON-encoded string remains accepted for compatibility.","x-transloadit-description-id":"template"},"transcoding_result_expiry":{"description":"Controls how long transcoding results are retained for Assemblies created from this Template.","enum":["1day","NoSave"],"type":"string","x-transloadit-description-id":"templateTranscodingResultExpiry"}},"required":["auth"],"type":"object","x-transloadit-schema-id":"sha256:d5ef7d974dc01ece7e15c421fcd577c7886fd9f9330c331592204e0444cb2683"},"Schema_d889f8bfd6f563d7f74d92219790b5ab4b0b84cbfa7f6b9b7dd6ef66d5219d1e":{"anyOf":[{"additionalProperties":true,"description":"Could not get workspace, this is an unknown Auth Key.","properties":{"error":{"const":"GET_ACCOUNT_UNKNOWN_AUTH_KEY","type":"string"},"http_code":{"const":400,"type":"number"},"message":{"description":"Human-readable explanation of the error. Its wording can vary; use the `error` code when handling a specific failure.","type":"string","x-transloadit-description-id":"api2ErrorMessage"}},"required":["error"],"type":"object","x-transloadit-description-id":"api2ErrorGetAccountUnknownAuthKey"},{"additionalProperties":true,"description":"Invalid grant type.","properties":{"error":{"const":"TOKEN_INVALID_GRANT_TYPE","type":"string"},"http_code":{"const":400,"type":"number"},"message":{"description":"Human-readable explanation of the error. Its wording can vary; use the `error` code when handling a specific failure.","type":"string","x-transloadit-description-id":"api2ErrorMessage"}},"required":["error"],"type":"object","x-transloadit-description-id":"api2ErrorTokenInvalidGrantType"},{"additionalProperties":true,"description":"Invalid token request.","properties":{"error":{"const":"TOKEN_INVALID_REQUEST","type":"string"},"http_code":{"const":400,"type":"number"},"message":{"description":"Human-readable explanation of the error. Its wording can vary; use the `error` code when handling a specific failure.","type":"string","x-transloadit-description-id":"api2ErrorMessage"}},"required":["error"],"type":"object","x-transloadit-description-id":"api2ErrorTokenInvalidRequest"},{"additionalProperties":true,"properties":{"error":{"description":"An RFC 6749, 7591 or 8707 error code such as `invalid_grant`.","pattern":"^(?:access_denied|invalid_client|invalid_client_metadata|invalid_grant|invalid_redirect_uri|invalid_request|invalid_scope|invalid_target|server_error|unauthorized_client|unsupported_grant_type)$","type":"string","x-transloadit-description-id":"oauthErrorCode"},"error_description":{"description":"A human-readable explanation that never names an account.","type":"string","x-transloadit-description-id":"oauthErrorDescription"}},"required":["error"],"type":"object"}],"x-transloadit-schema-id":"sha256:d889f8bfd6f563d7f74d92219790b5ab4b0b84cbfa7f6b9b7dd6ef66d5219d1e"},"Schema_d8e6f0037cd2b11aa73db84679cf3299be749b6953de57e36082d5b7d6d7ab74":{"additionalProperties":true,"properties":{"tus-resumable":{"const":"1.0.0","type":"string"},"x-content-type-options":{"const":"nosniff","type":"string"}},"required":["tus-resumable","x-content-type-options"],"type":"object","x-transloadit-schema-id":"sha256:d8e6f0037cd2b11aa73db84679cf3299be749b6953de57e36082d5b7d6d7ab74"},"Schema_d9d4828fc01a896c5eabc2f73631169e8483a105a5d3565cbb2b57a490bb0316":{"additionalProperties":false,"properties":{"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for a Priority Job Slots request.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"type":"object","x-transloadit-description-id":"priorityJobSlotsAuth"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"}},"type":"object","x-transloadit-schema-id":"sha256:d9d4828fc01a896c5eabc2f73631169e8483a105a5d3565cbb2b57a490bb0316"},"Schema_da4b2552b052756e5ae8eeb99dbf1e091e37dde4c980cbfaf0851697963fe691":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nPlease create your associated <dfn>Template Credentials</dfn> in your Transloadit account and use the name of your <dfn>Template Credentials</dfn> as this parameter's value. They will contain the values for your Tigris bucket, Key, Secret and Bucket region.\n\nWhile we recommend to use <dfn>Template Credentials</dfn> at all times, some use cases demand dynamic credentials for which using <dfn>Template Credentials</dfn> is too unwieldy because of their static nature. If you have this requirement, feel free to use the following parameters instead: `\"bucket\"`, `\"host\"`, `\"key\"`, `\"secret\"`.\n","x-transloadit-schema-id":"sha256:da4b2552b052756e5ae8eeb99dbf1e091e37dde4c980cbfaf0851697963fe691"},"Schema_dce1096fff6767b5f477f31f13c4e33289b9e9f3a0fd3df2000b731877c8d4bb":{"anyOf":[{"type":"string"},{"items":{"type":"string"},"type":"array"},{"items":{"additionalProperties":false,"properties":{"as":{"type":"string"},"fields":{"type":"string"},"name":{"type":"string"}},"required":["name"],"type":"object"},"type":"array"}],"x-transloadit-schema-id":"sha256:dce1096fff6767b5f477f31f13c4e33289b9e9f3a0fd3df2000b731877c8d4bb"},"Schema_def4ab246696c47e7c29e6ab90960f2ebdc8b3d54ae517eee43af3f570f4a57f":{"additionalProperties":false,"properties":{"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for a Storage metadata request.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"required":["expires","key"],"type":"object","x-transloadit-description-id":"damReadAuth"},"cursor":{"description":"Opaque continuation value from next_cursor in the previous response. Keep the same prefix while paging. Omit for the first page.","maxLength":512,"minLength":1,"type":"string","x-transloadit-description-id":"storedAssetsListCursor"},"limit":{"default":100,"description":"Maximum number of assets per page. Defaults to 100 and accepts up to 500; follow next_cursor until null.","maximum":500,"minimum":1,"type":"integer","x-transloadit-description-id":"storedAssetsListLimit"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"},"prefix":{"default":"","description":"Only list current asset paths starting with this case-sensitive prefix. The empty default includes the whole Workspace; include a trailing slash to select a directory boundary.","maxLength":512,"type":"string","x-transloadit-description-id":"storedAssetsListPrefix"}},"required":["auth"],"type":"object","x-transloadit-schema-id":"sha256:def4ab246696c47e7c29e6ab90960f2ebdc8b3d54ae517eee43af3f570f4a57f"},"Schema_dfdbed416b837e5e35b90b747799d553c4a573fb8b22060592b895fb68ffde6a":{"anyOf":[{"additionalProperties":true,"description":"Bad params field provided, it contains invalid json.","properties":{"error":{"const":"INVALID_PARAMS_FIELD","type":"string"},"http_code":{"const":400,"type":"number"},"message":{"description":"Human-readable explanation of the error. Its wording can vary; use the `error` code when handling a specific failure.","type":"string","x-transloadit-description-id":"api2ErrorMessage"}},"required":["error"],"type":"object","x-transloadit-description-id":"api2ErrorInvalidParamsField"},{"allOf":[{"$ref":"#/components/schemas/Schema_cb07bdaec8a57b18babcb0842531069c047ea76747de30cb3433ec3ab53763cb"}]}],"x-transloadit-schema-id":"sha256:dfdbed416b837e5e35b90b747799d553c4a573fb8b22060592b895fb68ffde6a"},"Schema_e00528555b01ba9d12a79a7f6dd4925c61c1970776ac19f9311820ad362c38ad":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nPlease create your associated <dfn>Template Credentials</dfn> in your Transloadit account and use the name of your <dfn>Template Credentials</dfn> as this parameter's value. They will contain the values for your SFTP host, user and optional custom public key.\n\nWhile we recommend to use <dfn>Template Credentials</dfn> at all times, some use cases demand dynamic credentials for which using <dfn>Template Credentials</dfn> is too unwieldy because of their static nature. If you have this requirement, feel free to use the following parameters instead: `\"host\"`, `\"port\"`, `\"user\"`, `\"public_key\"` (optional).\n","x-transloadit-schema-id":"sha256:e00528555b01ba9d12a79a7f6dd4925c61c1970776ac19f9311820ad362c38ad"},"Schema_e00de4aa91ee10180d711a182f6a9b4c2f7b0915a7b99dcbca7a03584ccb6b73":{"additionalProperties":false,"properties":{"aggregation":{"enum":["avg","max"],"type":"string"},"avgSlotCount":{"minimum":0,"type":"number"},"granularity":{"description":"Duration of each statistics bucket in seconds.","exclusiveMinimum":0,"type":"integer","x-transloadit-description-id":"statsBucketDuration"},"maxSlotCount":{"minimum":0,"type":"integer"},"ok":{"const":"PRIORITY_JOB_SLOT_STATS_FOUND","type":"string"},"stats":{"items":{"additionalProperties":false,"properties":{"avg_slot_count":{"description":"Average number of occupied slots during the bucket.","minimum":0,"type":"number","x-transloadit-description-id":"statsAverageSlotCount"},"data_from_ts":{"description":"Start of the statistics bucket as a Unix timestamp in seconds.","minimum":0,"type":"integer","x-transloadit-description-id":"statsBucketStart"},"max_slot_count":{"description":"Maximum observed slot usage during the bucket. For `region: \"all\"`, this is the largest sum of regional minute maxima, which can occur at different instants within a minute and exceed the actual simultaneous cross-region peak.","minimum":0,"type":"integer","x-transloadit-description-id":"statsMaximumSlotCount"},"slot_count":{"description":"Slot usage selected by the requested aggregation: average or maximum.","minimum":0,"type":"number","x-transloadit-description-id":"statsSelectedSlotCount"}},"required":["avg_slot_count","data_from_ts","max_slot_count","slot_count"],"type":"object"},"type":"array"}},"required":["aggregation","avgSlotCount","granularity","maxSlotCount","ok","stats"],"type":"object","x-transloadit-schema-id":"sha256:e00de4aa91ee10180d711a182f6a9b4c2f7b0915a7b99dcbca7a03584ccb6b73"},"Schema_e2d753e6b6111506a4565bdb18eccafd67d2027839616974639f5565d695fafd":{"anyOf":[{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}]},{"$ref":"#/components/schemas/Schema_bc9fbfc32e2939087e1b877c2b51ce63f08c8cdfdcf7adca01505a0498ab5691"}]},{"type":"null"}],"default":null,"description":"Custom name for the imported file(s). By default file names are derived from the source.","x-transloadit-schema-id":"sha256:e2d753e6b6111506a4565bdb18eccafd67d2027839616974639f5565d695fafd"},"Schema_e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"type":"boolean"},{"enum":["false","true"],"type":"string"}]}],"default":false,"description":"Whether the results of this Step should be present in the Assembly Status JSON","x-transloadit-schema-id":"sha256:e2eec9f0d3cf6892bbba08d6f0cb6582dc8dc7e3d2f71da8cbd997ad577ec0be"},"Schema_e3642be86c6c6c6967f55f59b763b22260fa1558484203d73992c05a5282b969":{"additionalProperties":false,"properties":{"notifications":{"items":{"additionalProperties":false,"properties":{"app_id":{"description":"The workspace identifier, retained under the historical field name `app_id`.","type":["null","string"],"x-transloadit-description-id":"assemblyNotificationAppId"},"assembly_id":{"description":"The Assembly whose Notification was delivered.","type":"string","x-transloadit-description-id":"assemblyNotificationAssemblyId"},"duration":{"anyOf":[{"description":"Elapsed delivery time in seconds, including automatic retry attempts and the delays between them.","type":"number","x-transloadit-description-id":"assemblyNotificationDuration"},{"type":"null"}],"description":"Elapsed delivery time in seconds, including automatic retry attempts and the delays between them.","x-transloadit-description-id":"assemblyNotificationDuration"},"error":{"description":"The recorded delivery error, when available. A failed delivery need not include this field; inspect `status` and `response_code` as well.","type":["null","string"],"x-transloadit-description-id":"assemblyNotificationError"},"response_code":{"anyOf":[{"description":"The recorded HTTP response status from your Notification URL. A 2xx response acknowledges delivery; this is not the status of the API request that lists or replays Notifications.","type":"number","x-transloadit-description-id":"assemblyNotificationResponseCode"},{"type":"null"}],"description":"The recorded HTTP response status from your Notification URL. A 2xx response acknowledges delivery; this is not the status of the API request that lists or replays Notifications.","x-transloadit-description-id":"assemblyNotificationResponseCode"},"response_data":{"description":"The recorded response body from your Notification URL. Long responses are truncated.","type":["null","string"],"x-transloadit-description-id":"assemblyNotificationResponseData"},"start":{"description":"When delivery started, as a GMT date string. Automatic retries retain the original start time.","type":["null","string"],"x-transloadit-description-id":"assemblyNotificationStart"},"status":{"anyOf":[{"description":"The delivery state recorded for this Notification, including its automatic retries.","enum":["error","processing","successful"],"type":"string","x-transloadit-description-id":"assemblyNotificationStatus"},{"type":"null"}],"description":"The delivery state recorded for this Notification, including its automatic retries.","x-transloadit-description-id":"assemblyNotificationStatus"},"url":{"description":"The URL used to deliver this Notification.","type":["null","string"],"x-transloadit-description-id":"assemblyNotificationUrl"}},"type":"object"},"type":"array"},"ok":{"const":"ASSEMBLY_NOTIFICATIONS_LISTED","type":"string"}},"required":["notifications","ok"],"type":"object","x-transloadit-schema-id":"sha256:e3642be86c6c6c6967f55f59b763b22260fa1558484203d73992c05a5282b969"},"Schema_e59fe39c7b0268eb1544627f9f6f9fb7c6a62d9601e11f01c229d5aecd6d2069":{"enum":["invalid range: failed to overlap\n","invalid range\n"],"type":"string","x-transloadit-schema-id":"sha256:e59fe39c7b0268eb1544627f9f6f9fb7c6a62d9601e11f01c229d5aecd6d2069"},"Schema_e6d158eeda8e2c70be2f5c01ae55404ba004d20a709509956b14383156b23680":{"additionalProperties":true,"properties":{"tus-resumable":{"const":"1.0.0","type":"string"},"upload-offset":{"description":"A canonical unsigned base-10 byte count in the signed 64-bit range, without zero padding or a plus sign.","pattern":"^(?:0|[1-9][0-9]{0,17}|[1-8][0-9]{18}|9[0-1][0-9]{17}|92[0-1][0-9]{16}|922[0-2][0-9]{15}|9223[0-2][0-9]{14}|92233[0-6][0-9]{13}|922337[0-1][0-9]{12}|92233720[0-2][0-9]{10}|922337203[0-5][0-9]{9}|9223372036[0-7][0-9]{8}|92233720368[0-4][0-9]{7}|922337203685[0-3][0-9]{6}|9223372036854[0-6][0-9]{5}|92233720368547[0-6][0-9]{4}|922337203685477[0-4][0-9]{3}|9223372036854775[0-7][0-9]{2}|922337203685477580[0-6]|9223372036854775807)$","type":"string","x-transloadit-description-id":"tusCanonicalByteCount"},"x-content-type-options":{"const":"nosniff","type":"string"}},"required":["tus-resumable","upload-offset","x-content-type-options"],"type":"object","x-transloadit-schema-id":"sha256:e6d158eeda8e2c70be2f5c01ae55404ba004d20a709509956b14383156b23680"},"Schema_e7f76bc0019770ddc43271041ddff4141f276907f477fc7d8e4823eaf41072cc":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nPlease create your associated <dfn>Template Credentials</dfn> in your Transloadit account and use the name of your <dfn>Template Credentials</dfn> as this parameter's value. They will contain the values for your Wasabi bucket, Key, Secret and Bucket region.\n\nWhile we recommend to use <dfn>Template Credentials</dfn> at all times, some use cases demand dynamic credentials for which using <dfn>Template Credentials</dfn> is too unwieldy because of their static nature. If you have this requirement, feel free to use the following parameters instead: `\"bucket\"`, `\"host\"`, `\"key\"`, `\"secret\"`.\n","x-transloadit-schema-id":"sha256:e7f76bc0019770ddc43271041ddff4141f276907f477fc7d8e4823eaf41072cc"},"Schema_e84930fb947da4a6250522f526ec7fb3a9f2af15d6f5e9387deb1ef4464760c5":{"anyOf":[{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"}]},{"items":{"anyOf":[{"type":"string"},{"type":"number"}]},"type":"array"}]},{"type":"null"}],"description":"The modification timestamp reported by the file-system or embedded media metadata.","x-transloadit-description-id":"assemblyStatusMetaDateFileModified","x-transloadit-schema-id":"sha256:e84930fb947da4a6250522f526ec7fb3a9f2af15d6f5e9387deb1ef4464760c5"},"Schema_e8ee92bc15ed8461f1105f4905d570b69c97b11ab8856df69fcce70debe33a94":{"anyOf":[{"const":"partial","type":"string"},{"pattern":"^final;https?:\\/\\/[^/\\x09-\\x0D\\x20\\xA0                　﻿]+\\/resumable\\/files\\/[^/\\x09-\\x0D\\x20\\xA0                　﻿]+(?:\\/[^/\\x09-\\x0D\\x20\\xA0                　﻿]+)*(?: https?:\\/\\/[^/\\x09-\\x0D\\x20\\xA0                　﻿]+\\/resumable\\/files\\/[^/\\x09-\\x0D\\x20\\xA0                　﻿]+(?:\\/[^/\\x09-\\x0D\\x20\\xA0                　﻿]+)*)*$","type":"string"}],"description":"Either `partial` or `final;` followed by one or more space-separated upload capability URLs returned by successful partial creation. The semicolon after `final` is required.","x-transloadit-description-id":"tusUploadConcat","x-transloadit-schema-id":"sha256:e8ee92bc15ed8461f1105f4905d570b69c97b11ab8856df69fcce70debe33a94"},"Schema_e9cd789e59923ef8186b2a620d3348a856461f1009b5cd69551d1a25f47eb029":{"additionalProperties":true,"description":"A full Assembly step or partial replay step override. Replay keeps this relaxed so credentials and missing robot properties can be merged back from the original Template before normal Assembly validation runs.","properties":{"field":{},"force_name":{},"key":{},"output_meta":{},"password":{},"prompt":{},"robot":{"type":"string"},"secret":{},"url":{},"use":{}},"type":"object","x-transloadit-description-id":"assemblyReplayStepOverride","x-transloadit-schema-id":"sha256:e9cd789e59923ef8186b2a620d3348a856461f1009b5cd69551d1a25f47eb029"},"Schema_ea4fbaa6b619d555b449bce20f35f0d31fdbffec9451bb442e1f8fafe5d53aa4":{"description":"Stable identity of a file stored by `/transloadit/store`. Retain this with its Workspace and `version_id`; the ordinary file `id` is not a Storage asset ID.","type":"string","x-transloadit-description-id":"assemblyStatusFileAssetId","x-transloadit-schema-id":"sha256:ea4fbaa6b619d555b449bce20f35f0d31fdbffec9451bb442e1f8fafe5d53aa4"},"Schema_ea7271b4a0525afc748a31b31ca4019a0b7fbee0f36fdf612984fa476b86d023":{"anyOf":[{"additionalProperties":true,"description":"Your auth secret could not be shown.","properties":{"error":{"const":"AUTH_SECRET_NOT_RETRIEVED","type":"string"},"http_code":{"const":400,"type":"number"},"message":{"description":"Human-readable explanation of the error. Its wording can vary; use the `error` code when handling a specific failure.","type":"string","x-transloadit-description-id":"api2ErrorMessage"}},"required":["error"],"type":"object","x-transloadit-description-id":"api2ErrorAuthSecretNotRetrieved"},{"allOf":[{"$ref":"#/components/schemas/Schema_cb07bdaec8a57b18babcb0842531069c047ea76747de30cb3433ec3ab53763cb"}]}],"x-transloadit-schema-id":"sha256:ea7271b4a0525afc748a31b31ca4019a0b7fbee0f36fdf612984fa476b86d023"},"Schema_eaeeea929c7f276489855b08e125ab29a4d8b228609f8a6700f5015f813f3650":{"additionalProperties":true,"properties":{"location":{"description":"The new upload resource URL. Clients must validate it as a returned capability.","minLength":1,"type":"string","x-transloadit-description-id":"tusUploadLocation"},"tus-resumable":{"const":"1.0.0","type":"string"},"upload-offset":{"description":"A canonical unsigned base-10 byte count in the signed 64-bit range, without zero padding or a plus sign.","pattern":"^(?:0|[1-9][0-9]{0,17}|[1-8][0-9]{18}|9[0-1][0-9]{17}|92[0-1][0-9]{16}|922[0-2][0-9]{15}|9223[0-2][0-9]{14}|92233[0-6][0-9]{13}|922337[0-1][0-9]{12}|92233720[0-2][0-9]{10}|922337203[0-5][0-9]{9}|9223372036[0-7][0-9]{8}|92233720368[0-4][0-9]{7}|922337203685[0-3][0-9]{6}|9223372036854[0-6][0-9]{5}|92233720368547[0-6][0-9]{4}|922337203685477[0-4][0-9]{3}|9223372036854775[0-7][0-9]{2}|922337203685477580[0-6]|9223372036854775807)$","type":"string","x-transloadit-description-id":"tusCanonicalByteCount"},"x-content-type-options":{"const":"nosniff","type":"string"}},"required":["location","tus-resumable","x-content-type-options"],"type":"object","x-transloadit-schema-id":"sha256:eaeeea929c7f276489855b08e125ab29a4d8b228609f8a6700f5015f813f3650"},"Schema_eb011f0e79199be8d971b4a81664e6348a59004fad86f313a1be55725503600d":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"const":"","type":"string"}]},{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"pattern":"^[Hh][Tt][Tt][Pp][Ss]?:\\/\\/(?:[^ ]|[ ])","type":"string","x-transloadit-input-fidelity":"conservative"}]}],"default":"","description":"\nA URL indicating a PNG image to be overlaid above this image. You can also [supply the watermark via another Assembly Step](/docs/topics/use-parameter/#supplying-the-watermark-via-an-assembly-step).\n","x-transloadit-schema-id":"sha256:eb011f0e79199be8d971b4a81664e6348a59004fad86f313a1be55725503600d"},"Schema_eba2b8ae2c68e14f5f8503411ddbf6762207bcdf4d42d8ea33764d7202e26386":{"description":"An abstract category describing the file. Known values are `\"audio\"`, `\"document\"`, `\"image\"`, `\"office\"`, `\"pdf\"`, `\"swf\"`, `\"video\"`, `\"xls\"`, or `null` when no category was detected. Consumers should accept other strings so future categories remain compatible.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusFileType","x-transloadit-schema-id":"sha256:eba2b8ae2c68e14f5f8503411ddbf6762207bcdf4d42d8ea33764d7202e26386"},"Schema_ebf76aa695739c793db45f6468d410233c496f5e4a54a4f7a425f5eec96f24c4":{"additionalProperties":true,"description":"tus OPTIONS has no protocol request headers.","properties":{},"type":"object","x-transloadit-description-id":"tusOptionsRequestHeaders","x-transloadit-schema-id":"sha256:ebf76aa695739c793db45f6468d410233c496f5e4a54a4f7a425f5eec96f24c4"},"Schema_edecfbd5df4587f3777dedbf28e7de13ac7093ec263b82ed52f21f398e96aef1":{"anyOf":[{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"enum":["aac","alac","audio/aac","audio/alac","audio/flac","audio/mp3","audio/ogg","dash-128k-audio","dash-128k_audio","dash-256k-audio","dash-256k_audio","dash-32k-audio","dash-32k_audio","dash-64k-audio","dash-64k_audio","dash/128k-audio","dash/128k_audio","dash/256k-audio","dash/256k_audio","dash/32k-audio","dash/32k_audio","dash/64k-audio","dash/64k_audio","dash_128k-audio","dash_128k_audio","dash_256k-audio","dash_256k_audio","dash_32k-audio","dash_32k_audio","dash_64k-audio","dash_64k_audio","empty","flac","hg-transformers-audio","hg-transformers_audio","hg_transformers-audio","hg_transformers_audio","mp3","ogg","opus","speech","wav"],"type":"string"}],"description":"\nPerforms conversion using pre-configured settings.\n\nIf you specify your own FFmpeg parameters using the <dfn>Robot</dfn>'s `ffmpeg` parameter and you have not specified a preset, then the default `mp3` preset is not applied. This is to prevent you from having to override each of the MP3 preset's values manually.\n\nFor a list of audio presets, see [audio presets](/docs/presets/audio/).\n","x-transloadit-schema-id":"sha256:edecfbd5df4587f3777dedbf28e7de13ac7093ec263b82ed52f21f398e96aef1"},"Schema_ef0161cd21eec2fe3d980b6a024a464fd5ba8da86e5eaf9f91bbc29f68545e3f":{"description":"A URL from which the file can be downloaded, or `null` when no delivery URL is available. Temporary URLs on our servers expire after a few hours; export files to storage for later use. Private-storage results from `/transloadit/store` return `null` for both `url` and `ssl_url`. Keep the returned Workspace, `asset_id`, and `version_id` for a durable reference, subject to access and retention. `/transloadit/import` accepts `asset_id` with an optional `version_id`, or a mutable `path`. Neither a temporary URL nor the processing file’s `id` is a durable Storage reference.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusFileUrl","x-transloadit-schema-id":"sha256:ef0161cd21eec2fe3d980b6a024a464fd5ba8da86e5eaf9f91bbc29f68545e3f"},"Schema_ef2ca2de27549cab8ae95a245534f0b897b4adc6464909e2cd30017fedfc3386":{"additionalProperties":true,"description":"Normalized lowercase headers for a canonical tus PATCH request.","properties":{"content-type":{"const":"application/offset+octet-stream","type":"string"},"tus-resumable":{"const":"1.0.0","description":"The negotiated tus version.","type":"string","x-transloadit-description-id":"tusVersion"},"upload-length":{"$ref":"#/components/schemas/Schema_b54f48fb2e4d0bf53206494c64de3ea8f644cbce7badf257a3b4b3e543b55c87"},"upload-offset":{"$ref":"#/components/schemas/Schema_b54f48fb2e4d0bf53206494c64de3ea8f644cbce7badf257a3b4b3e543b55c87"}},"required":["content-type","tus-resumable","upload-offset"],"type":"object","x-transloadit-description-id":"tusPatchRequestHeaders","x-transloadit-schema-id":"sha256:ef2ca2de27549cab8ae95a245534f0b897b4adc6464909e2cd30017fedfc3386"},"Schema_ef358dbff7b7953b7b59de1e6075793d2495500cab96f4aeba4005431dcf0481":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"type":"integer"}],"default":0,"description":"\nThe y-offset in number of pixels at which the watermark will be placed in relation to the position it has due to `watermark_position`.\n\nValues can be both positive and negative and yield different results depending on the `watermark_position` parameter. Positive values move the watermark closer to the image's center point, whereas negative values move the watermark further away from the image's center point.\n","x-transloadit-schema-id":"sha256:ef358dbff7b7953b7b59de1e6075793d2495500cab96f4aeba4005431dcf0481"},"Schema_efbf8447b0e33ce6d1e83a4e99e9aa42b3e5c98f04cf9ac3ed20945d2f5f1418":{"description":"Controls the size of the payload sent in Assembly notifications. Notification replays reuse filters supplied in the original Assembly request; filters defined only in a Template are not preserved on replay. An empty array (default) sends the complete Assembly Status. Add `\"without_params\"` so the top-level raw Assembly instruction fields `params`, `template`, and `merged_params` are omitted. Add `\"without_result_meta_data\"` so `meta` is omitted from each file in `results`. Add `\"without_results\"` so the top-level `results` object is omitted. Add `\"without_upload_meta_data\"` so `meta` is omitted from each file in `uploads`. Add `\"without_uploads\"` so the top-level `uploads` array is omitted. Filtering is applied before serialization, so using these options reduces memory use and helps avoid oversized-payload or OOM failures on large Assemblies.","items":{"enum":["without_params","without_result_meta_data","without_results","without_upload_meta_data","without_uploads"],"type":"string"},"type":"array","x-transloadit-description-id":"notificationPayload","x-transloadit-schema-id":"sha256:efbf8447b0e33ce6d1e83a4e99e9aa42b3e5c98f04cf9ac3ed20945d2f5f1418"},"Schema_f01dfdccbdda8bceb4a464b16d4b008f08c1677f849c441face2bfbf1c91bf05":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nPlease create your associated <dfn>Template Credentials</dfn> in your Transloadit account and use the name of your <dfn>Template Credentials</dfn> as this parameter's value. They will contain the values for your Supabase bucket, Key, Secret and Bucket region.\n\nWhile we recommend to use <dfn>Template Credentials</dfn> at all times, some use cases demand dynamic credentials for which using <dfn>Template Credentials</dfn> is too unwieldy because of their static nature. If you have this requirement, feel free to use the following parameters instead: `\"bucket\"`, `\"host\"`, `\"key\"`, `\"secret\"`.\n\nIf you do use these parameters, make sure to use the **Endpoint** value under `Storage > S3 Connection` in the Supabase console for the `\"host\"` value, and the values under **S3 Access Keys** on the same page for your `\"key\"` and `\"secret\"`.\n","x-transloadit-schema-id":"sha256:f01dfdccbdda8bceb4a464b16d4b008f08c1677f849c441face2bfbf1c91bf05"},"Schema_f04b6ce02541c0ac92aeb3b7b21b28cbab103013fc77eb84d09cdc64af3424c0":{"additionalProperties":false,"properties":{"asset":{"additionalProperties":true,"properties":{"asset_id":{"description":"Stable asset ID. It survives native moves and renames; use it without a version to select the current bytes.","pattern":"^[A-Za-z0-9_-]{21}[AQgw]$","type":"string","x-transloadit-description-id":"storedAssetAssetId"},"has_alpha":{"description":"Whether the image has an alpha channel, even if all its pixels are opaque. Present when ThumbHash extraction succeeds; absence means unknown.","type":"boolean","x-transloadit-description-id":"storedAssetHasAlpha"},"height":{"description":"Display height in pixels, after applying EXIF orientation, when known.","exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer","x-transloadit-description-id":"storedAssetHeight"},"md5hash":{"description":"Lowercase MD5 checksum of the stored bytes, when available.","pattern":"^[a-f0-9]{32}$","type":"string","x-transloadit-description-id":"storedAssetMd5Hash"},"mime":{"description":"MIME type of the stored bytes, or null when unknown.","type":["null","string"],"x-transloadit-description-id":"storedAssetMime"},"path":{"description":"Current mutable location relative to the Workspace. A rename makes the previous path stale; overwriting can change the bytes at this path.","minLength":1,"type":"string","x-transloadit-description-id":"storedAssetPath"},"sha256":{"description":"Lowercase SHA-256 checksum of the stored bytes, when available.","pattern":"^[a-f0-9]{64}$","type":"string","x-transloadit-description-id":"storedAssetSha256"},"size":{"description":"Size of the stored file in bytes.","maximum":9007199254740991,"minimum":0,"type":"integer","x-transloadit-description-id":"storedAssetSize"},"thumbhash":{"description":"Base64-encoded ThumbHash of this version’s displayed pixels, when requested with output_meta.thumbhash on its producing Step. This is image data: apply the same access controls as the original.","pattern":"^(?:[A-Za-z0-9+/]{4}){1,15}(?:[A-Za-z0-9+/]{4}|[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)$","type":"string","x-transloadit-description-id":"storedAssetThumbhash"},"version_id":{"description":"Exact immutable version of this asset. Pair with asset_id to select retained bytes; a missing version never falls back to the current version.","pattern":"^[A-Za-z0-9_-]{21}[AQgw]$","type":"string","x-transloadit-description-id":"storedAssetVersionId"},"width":{"description":"Display width in pixels, after applying EXIF orientation, when known.","exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer","x-transloadit-description-id":"storedAssetWidth"},"workspace":{"description":"Workspace slug that owns this asset. Authenticate for the same Workspace when reading or managing it.","minLength":1,"type":"string","x-transloadit-description-id":"storedAssetWorkspace"}},"required":["asset_id","mime","path","size","version_id","workspace"],"type":"object"},"message":{"minLength":1,"type":"string"},"ok":{"const":"DAM_ASSET_FOUND","type":"string"}},"required":["asset","message","ok"],"type":"object","x-transloadit-schema-id":"sha256:f04b6ce02541c0ac92aeb3b7b21b28cbab103013fc77eb84d09cdc64af3424c0"},"Schema_f0d2a1ae84e18bb164654bfae2db67567745b3f2c2ebc95fd3142ffd5d0165bc":{"anyOf":[{"additionalProperties":true,"properties":{"account_id":{"type":["null","string"]},"account_name":{"type":["null","string"]},"account_slug":{"type":["null","string"]},"api_auth_key_id":{"type":["null","string"]},"assemblyId":{"type":"string"},"assembly_id":{"$ref":"#/components/schemas/Schema_5a5720fce62d62d631fea01984a62a4f36ef024049b713ef7d673713a081b806"},"assembly_ssl_url":{"$ref":"#/components/schemas/Schema_bbea786d2847a3b11367518539af6abd307fc35d7725344b7a6c264b53218b39"},"assembly_url":{"description":"The unique URL used to query the current status of this Assembly.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusResponseAssemblyUrl"},"build_id":{"$ref":"#/components/schemas/Schema_8c67d074b4dda4e673e2e8a9bb2ad781f1daded5d942e5eb0f0c82abb1b3d958"},"bytes_expected":{"description":"The number of bytes that this Assembly expects to be uploaded.","type":"number","x-transloadit-description-id":"assemblyStatusResponseBytesExpected"},"bytes_received":{"$ref":"#/components/schemas/Schema_bde8ad02c55ac79ce6d89b6a92097ae543a54a4110d15a465aca42a4ed3cf3ee"},"bytes_usage":{"$ref":"#/components/schemas/Schema_99943d2e7b4618d495632120f0b3afd3ff05ace6e91949c68286cce98ebd441d"},"client_agent":{"description":"The uploader’s user agent is not exposed; this deprecated field is always `null`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusResponseClientAgent"},"client_ip":{"description":"The uploader’s IP address is not exposed; this deprecated field is always `null`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusResponseClientIp"},"client_referer":{"description":"The uploader’s referrer URL is not exposed; this deprecated field is always `null`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusResponseClientReferer"},"companion_url":{"description":"The URL to the Companion server that this Assembly may communicate with.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusResponseCompanionUrl"},"error":{"$ref":"#/components/schemas/Schema_1e0026a0e9b6cc84fd08e232a36b1ed9c086865a5b9b809d8253d69b6edd78a9"},"executing_jobs":{"items":{"type":"string"},"type":"array"},"execution_duration":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The time taken by Transloadit to execute this Assembly, in seconds.","x-transloadit-description-id":"assemblyStatusResponseExecutionDuration"},"execution_start":{"type":["null","string"]},"expected_tus_uploads":{"type":"number"},"fields":{"$ref":"#/components/schemas/Schema_b736e077f16daefe161b737933dc42c15027ce02d7bdb410497f29799a2151aa"},"finished_tus_uploads":{"type":"number"},"has_dupe_jobs":{"type":"boolean"},"ignored_error_count":{"type":"number"},"ignored_errors":{"items":{"additionalProperties":true,"properties":{"error":{},"message":{"type":"string"},"phase":{"type":"string"},"step":{"type":["null","string"]}},"type":"object"},"type":"array"},"info":{"additionalProperties":true,"properties":{"retryIn":{"type":"number"}},"type":"object"},"instance":{"type":["null","string"]},"is_infinite":{"type":"boolean"},"jobs_queue_duration":{"type":"number"},"last_job_completed":{"type":["null","string"]},"merged_params":{"type":["null","string"]},"message":{"description":"A human-readable message explaining the state of this Assembly. This is not always\npresent.","type":"string","x-transloadit-description-id":"assemblyStatusResponseMessage"},"notify_duration":{"$ref":"#/components/schemas/Schema_98821d3fb80b8da19ecd734f66fdce4852dd42c3933f85148896f6e4b1232881"},"notify_error":{"type":["null","string"]},"notify_response_code":{"anyOf":[{"type":"number"},{"type":"null"}]},"notify_response_data":{"type":["null","string"]},"notify_start":{"type":["null","string"]},"notify_status":{"type":["null","string"]},"notify_url":{"type":["null","string"]},"num_input_files":{"type":"number"},"ok":{"description":"Indicates a [non-error lifecycle](/docs/api/response-codes/#ok-codes) status, including uploading, executing, aborted, and canceled states. Successful processing is indicated by `ASSEMBLY_COMPLETED`. If the Assembly\nencountered an error, the `error` key below is used instead of this key.","enum":["ASSEMBLY_EXECUTING","ASSEMBLY_REPLAYING","ASSEMBLY_UPLOADING"],"type":"string","x-transloadit-description-id":"assemblyStatusResponseOk"},"params":{"type":["null","string"]},"parent_assembly_status":{"anyOf":[{},{"type":"null"}]},"parent_id":{"type":["null","string"]},"previousStep":{"description":"Name of the preceding Step associated with the error, when available.","type":"string","x-transloadit-description-id":"assemblyStatusResponsePreviousStep"},"queue_duration":{"type":"number"},"region":{"type":"string"},"results":{"$ref":"#/components/schemas/Schema_acdda8455918771eb5b7d58d00e895c1326672fa85d67ad42497973e3292f5b8"},"running_jobs":{"items":{"type":"string"},"type":"array"},"start_date":{"description":"The date and time at which upload started for this Assembly.","type":"string","x-transloadit-description-id":"assemblyStatusResponseStartDate"},"started_jobs":{"items":{"type":"string"},"type":"array"},"started_tus_uploads":{"type":"number"},"step":{"description":"Name of the Step associated with the error, when available.","type":"string","x-transloadit-description-id":"assemblyStatusResponseStep"},"template":{"type":["null","string"]},"template_id":{"type":["null","string"]},"template_name":{"type":["null","string"]},"transloadit_client":{"type":["null","string"]},"tus_uploads":{"$ref":"#/components/schemas/Schema_d22a76a8ee6772f210db0c607b951c8c93ac86503e983681005064c9b1b4705d"},"tus_url":{"description":"The URL to the tus server used by this Assembly for [resumable\nuploads](/docs/api/resumable-uploads/).","type":"string","x-transloadit-description-id":"assemblyStatusResponseTusUrl"},"update_stream_url":{"$ref":"#/components/schemas/Schema_46291c8d1c92a74d382a7a6aed3de4d36d66c5dc3b0dee3c9d022c98afdd2dca"},"upload_duration":{"description":"The time taken by the uploader to upload files, in seconds.","type":"number","x-transloadit-description-id":"assemblyStatusResponseUploadDuration"},"upload_meta_data_extracted":{"type":"boolean"},"uploads":{"$ref":"#/components/schemas/Schema_19e55e422287120ed717d615250db33b653e07cd6844ece913cfef3503377cc2"},"uppyserver_url":{"type":["null","string"]},"usage_tags":{"type":"string"},"virusname":{"type":"string"},"warnings":{"$ref":"#/components/schemas/Schema_005a01ba58ae0ad47bab35d7b78f964895edfa15304dc581291f5710082ad6b8"},"websocket_url":{"$ref":"#/components/schemas/Schema_360cb9b22505669e09179309638d53b007d6067cb34ce87083ee7c6478b2ea94"}},"required":["ok"],"type":"object"},{"additionalProperties":true,"properties":{"account_id":{"type":["null","string"]},"account_name":{"type":["null","string"]},"account_slug":{"type":["null","string"]},"api_auth_key_id":{"type":["null","string"]},"assemblyId":{"type":"string"},"assembly_id":{"$ref":"#/components/schemas/Schema_5a5720fce62d62d631fea01984a62a4f36ef024049b713ef7d673713a081b806"},"assembly_ssl_url":{"$ref":"#/components/schemas/Schema_bbea786d2847a3b11367518539af6abd307fc35d7725344b7a6c264b53218b39"},"assembly_url":{"description":"The unique URL used to query the current status of this Assembly.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusResponseAssemblyUrl"},"build_id":{"$ref":"#/components/schemas/Schema_8c67d074b4dda4e673e2e8a9bb2ad781f1daded5d942e5eb0f0c82abb1b3d958"},"bytes_expected":{"description":"The number of bytes that this Assembly expects to be uploaded.","type":"number","x-transloadit-description-id":"assemblyStatusResponseBytesExpected"},"bytes_received":{"$ref":"#/components/schemas/Schema_bde8ad02c55ac79ce6d89b6a92097ae543a54a4110d15a465aca42a4ed3cf3ee"},"bytes_usage":{"$ref":"#/components/schemas/Schema_99943d2e7b4618d495632120f0b3afd3ff05ace6e91949c68286cce98ebd441d"},"client_agent":{"description":"The uploader’s user agent is not exposed; this deprecated field is always `null`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusResponseClientAgent"},"client_ip":{"description":"The uploader’s IP address is not exposed; this deprecated field is always `null`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusResponseClientIp"},"client_referer":{"description":"The uploader’s referrer URL is not exposed; this deprecated field is always `null`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusResponseClientReferer"},"companion_url":{"description":"The URL to the Companion server that this Assembly may communicate with.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusResponseCompanionUrl"},"error":{"$ref":"#/components/schemas/Schema_1e0026a0e9b6cc84fd08e232a36b1ed9c086865a5b9b809d8253d69b6edd78a9"},"executing_jobs":{"items":{"type":"string"},"type":"array"},"execution_duration":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The time taken by Transloadit to execute this Assembly, in seconds.","x-transloadit-description-id":"assemblyStatusResponseExecutionDuration"},"execution_start":{"type":["null","string"]},"expected_tus_uploads":{"type":"number"},"fields":{"$ref":"#/components/schemas/Schema_b736e077f16daefe161b737933dc42c15027ce02d7bdb410497f29799a2151aa"},"finished_tus_uploads":{"type":"number"},"has_dupe_jobs":{"type":"boolean"},"ignored_error_count":{"type":"number"},"ignored_errors":{"items":{"additionalProperties":true,"properties":{"error":{},"message":{"type":"string"},"phase":{"type":"string"},"step":{"type":["null","string"]}},"type":"object"},"type":"array"},"info":{"additionalProperties":true,"properties":{"retryIn":{"type":"number"}},"type":"object"},"instance":{"type":["null","string"]},"is_infinite":{"type":"boolean"},"jobs_queue_duration":{"type":"number"},"last_job_completed":{"type":["null","string"]},"merged_params":{"type":["null","string"]},"message":{"description":"A human-readable message explaining the state of this Assembly. This is not always\npresent.","type":"string","x-transloadit-description-id":"assemblyStatusResponseMessage"},"notify_duration":{"$ref":"#/components/schemas/Schema_98821d3fb80b8da19ecd734f66fdce4852dd42c3933f85148896f6e4b1232881"},"notify_error":{"type":["null","string"]},"notify_response_code":{"anyOf":[{"type":"number"},{"type":"null"}]},"notify_response_data":{"type":["null","string"]},"notify_start":{"type":["null","string"]},"notify_status":{"type":["null","string"]},"notify_url":{"type":["null","string"]},"num_input_files":{"type":"number"},"ok":{"description":"Indicates a [non-error lifecycle](/docs/api/response-codes/#ok-codes) status, including uploading, executing, aborted, and canceled states. Successful processing is indicated by `ASSEMBLY_COMPLETED`. If the Assembly\nencountered an error, the `error` key below is used instead of this key.","enum":["ASSEMBLY_CANCELED","ASSEMBLY_COMPLETED","ASSEMBLY_EXECUTING","ASSEMBLY_REPLAYING","ASSEMBLY_UPLOADING","REQUEST_ABORTED"],"type":"string","x-transloadit-description-id":"assemblyStatusResponseOk"},"params":{"type":["null","string"]},"parent_assembly_status":{"anyOf":[{},{"type":"null"}]},"parent_id":{"type":["null","string"]},"previousStep":{"description":"Name of the preceding Step associated with the error, when available.","type":"string","x-transloadit-description-id":"assemblyStatusResponsePreviousStep"},"queue_duration":{"type":"number"},"region":{"type":"string"},"results":{"$ref":"#/components/schemas/Schema_acdda8455918771eb5b7d58d00e895c1326672fa85d67ad42497973e3292f5b8"},"running_jobs":{"items":{"type":"string"},"type":"array"},"start_date":{"description":"The date and time at which upload started for this Assembly.","type":"string","x-transloadit-description-id":"assemblyStatusResponseStartDate"},"started_jobs":{"items":{"type":"string"},"type":"array"},"started_tus_uploads":{"type":"number"},"step":{"description":"Name of the Step associated with the error, when available.","type":"string","x-transloadit-description-id":"assemblyStatusResponseStep"},"template":{"type":["null","string"]},"template_id":{"type":["null","string"]},"template_name":{"type":["null","string"]},"transloadit_client":{"type":["null","string"]},"tus_uploads":{"$ref":"#/components/schemas/Schema_d22a76a8ee6772f210db0c607b951c8c93ac86503e983681005064c9b1b4705d"},"tus_url":{"description":"The URL to the tus server used by this Assembly for [resumable\nuploads](/docs/api/resumable-uploads/).","type":"string","x-transloadit-description-id":"assemblyStatusResponseTusUrl"},"update_stream_url":{"$ref":"#/components/schemas/Schema_46291c8d1c92a74d382a7a6aed3de4d36d66c5dc3b0dee3c9d022c98afdd2dca"},"upload_duration":{"description":"The time taken by the uploader to upload files, in seconds.","type":"number","x-transloadit-description-id":"assemblyStatusResponseUploadDuration"},"upload_meta_data_extracted":{"type":"boolean"},"uploads":{"$ref":"#/components/schemas/Schema_19e55e422287120ed717d615250db33b653e07cd6844ece913cfef3503377cc2"},"uppyserver_url":{"type":["null","string"]},"usage_tags":{"type":"string"},"virusname":{"type":"string"},"warnings":{"$ref":"#/components/schemas/Schema_005a01ba58ae0ad47bab35d7b78f964895edfa15304dc581291f5710082ad6b8"},"websocket_url":{"$ref":"#/components/schemas/Schema_360cb9b22505669e09179309638d53b007d6067cb34ce87083ee7c6478b2ea94"}},"required":["ok"],"type":"object"},{"additionalProperties":true,"properties":{"account_id":{"type":["null","string"]},"account_name":{"type":["null","string"]},"account_slug":{"type":["null","string"]},"api_auth_key_id":{"type":["null","string"]},"assemblyId":{"type":"string"},"assembly_id":{"$ref":"#/components/schemas/Schema_5a5720fce62d62d631fea01984a62a4f36ef024049b713ef7d673713a081b806"},"assembly_ssl_url":{"$ref":"#/components/schemas/Schema_bbea786d2847a3b11367518539af6abd307fc35d7725344b7a6c264b53218b39"},"assembly_url":{"description":"The unique URL used to query the current status of this Assembly.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusResponseAssemblyUrl"},"build_id":{"$ref":"#/components/schemas/Schema_8c67d074b4dda4e673e2e8a9bb2ad781f1daded5d942e5eb0f0c82abb1b3d958"},"bytes_expected":{"description":"The number of bytes that this Assembly expects to be uploaded.","type":"number","x-transloadit-description-id":"assemblyStatusResponseBytesExpected"},"bytes_received":{"$ref":"#/components/schemas/Schema_bde8ad02c55ac79ce6d89b6a92097ae543a54a4110d15a465aca42a4ed3cf3ee"},"bytes_usage":{"$ref":"#/components/schemas/Schema_99943d2e7b4618d495632120f0b3afd3ff05ace6e91949c68286cce98ebd441d"},"client_agent":{"description":"The uploader’s user agent is not exposed; this deprecated field is always `null`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusResponseClientAgent"},"client_ip":{"description":"The uploader’s IP address is not exposed; this deprecated field is always `null`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusResponseClientIp"},"client_referer":{"description":"The uploader’s referrer URL is not exposed; this deprecated field is always `null`.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusResponseClientReferer"},"cmd":{"anyOf":[{"type":"string"},{"items":{"anyOf":[{"type":"string"},{"type":"number"}]},"type":"array"}],"description":"Optional processing command details for troubleshooting. Diagnostic details may vary; use the `error` code for programmatic error handling.","x-transloadit-description-id":"assemblyStatusResponseCmd"},"companion_url":{"description":"The URL to the Companion server that this Assembly may communicate with.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusResponseCompanionUrl"},"error":{"anyOf":[{"enum":["ADMIN_PERMISSIONS_REQUIRED","AI_CHAT_VALIDATION","ASSEMBLY_ACCOUNT_MISMATCH","ASSEMBLY_CANNOT_BE_REPLAYED","ASSEMBLY_COULD_NOT_BE_CREATED","ASSEMBLY_CRASHED","ASSEMBLY_DISALLOWED_ROBOTS_USED","ASSEMBLY_EMPTY_STEPS","ASSEMBLY_EXECUTION_PROGRESS_NOT_ENABLED","ASSEMBLY_EXPIRED","ASSEMBLY_FILE_NOT_RESERVED","ASSEMBLY_INFINITE","ASSEMBLY_INVALID_NOTIFY_URL","ASSEMBLY_INVALID_NUM_EXPECTED_UPLOAD_FILES_PARAM","ASSEMBLY_INVALID_STEPS","ASSEMBLY_JOB_ENQUEUE_ERROR","ASSEMBLY_LIST_ERROR","ASSEMBLY_MEMORY_LIMIT_EXCEEDED","ASSEMBLY_NOTIFICATIONS_LIST_ERROR","ASSEMBLY_NOTIFICATION_LIST_ERROR","ASSEMBLY_NOTIFICATION_NOT_PERSISTED","ASSEMBLY_NOTIFICATION_NOT_REPLAYED","ASSEMBLY_NOT_CAPABLE","ASSEMBLY_NOT_FINISHED","ASSEMBLY_NOT_FOUND","ASSEMBLY_NOT_REPLAYED","ASSEMBLY_NO_CHARGEABLE_STEP","ASSEMBLY_NO_NOTIFY_URL","ASSEMBLY_NO_STEPS","ASSEMBLY_PLAN_FILE_SIZE_LIMIT_EXCEEDED","ASSEMBLY_ROBOT_MISSING","ASSEMBLY_SATURATED","ASSEMBLY_STATS_ERROR","ASSEMBLY_STATS_INVALID_TIME","ASSEMBLY_STATS_MISSING_REGION","ASSEMBLY_STATUS_FETCHING_RATE_LIMIT_REACHED","ASSEMBLY_STATUS_NOT_FOUND","ASSEMBLY_STATUS_PARSE_ERROR","ASSEMBLY_STEP_INVALID","ASSEMBLY_STEP_INVALID_ROBOT","ASSEMBLY_STEP_INVALID_USE","ASSEMBLY_STEP_NO_ROBOT","ASSEMBLY_STEP_UNKNOWN_ROBOT","ASSEMBLY_STEP_UNKNOWN_USE","ASSEMBLY_URL_TRANSFORM_MISSING","AUDIO_ARTWORK_VALIDATION","AUDIO_CONCAT_INVALID_INPUT","AUDIO_CONCAT_VALIDATION","AUDIO_ENCODE_VALIDATION","AUDIO_LOOP_VALIDATION","AUDIO_MERGE_VALIDATION","AUDIO_SPLIT_NO_OUTPUT","AUDIO_SPLIT_VALIDATION","AUDIO_WAVEFORM_VALIDATION","AUTH_EXPIRED","AUTH_KEYS_NOT_FOUND","AUTH_KEY_SCOPES_NOT_FOUND","AUTH_SECRET_NOT_RETRIEVED","AZURE_IMPORT_ACCESS_DENIED","AZURE_IMPORT_FAILURE","AZURE_IMPORT_NOT_FOUND","AZURE_IMPORT_VALIDATION","AZURE_STORE_ACCESS_DENIED","AZURE_STORE_NOT_FOUND","AZURE_STORE_VALIDATION","BACKBLAZE_IMPORT_ACCESS_DENIED","BACKBLAZE_IMPORT_FAILURE","BACKBLAZE_IMPORT_NOT_FOUND","BACKBLAZE_IMPORT_VALIDATION","BACKBLAZE_STORE_ACCESS_DENIED","BACKBLAZE_STORE_FAILURE","BACKBLAZE_STORE_VALIDATION","BAD_PRICING","BEARER_TOKEN_AUTH_KEY_MISMATCH","BEARER_TOKEN_EXPIRED","BEARER_TOKEN_INVALID","BILL_LIMIT_EXCEEDED","BOX_IMPORT_ACCESS_DENIED","BOX_IMPORT_FAILURE","BOX_IMPORT_NOT_FOUND","BOX_IMPORT_VALIDATION","BOX_STORE_COULD_NOT_PARSE_URL","BOX_STORE_VALIDATION","CANNOT_ACCEPT_NEW_ASSEMBLIES","CDN_REQUIRED","CLOUDFILES_IMPORT_ACCESS_DENIED","CLOUDFILES_IMPORT_FAILURE","CLOUDFILES_IMPORT_NOT_FOUND","CLOUDFILES_IMPORT_VALIDATION","CLOUDFILES_STORE_ACCESS_DENIED","CLOUDFILES_STORE_ERROR","CLOUDFILES_STORE_VALIDATION","CLOUDFLARE_IMPORT_ACCESS_DENIED","CLOUDFLARE_IMPORT_FAILURE","CLOUDFLARE_IMPORT_NOT_FOUND","CLOUDFLARE_IMPORT_VALIDATION","CLOUDFLARE_STORE_ACCESS_DENIED","CLOUDFLARE_STORE_NOT_FOUND","CLOUDFLARE_STORE_URL_VERIFICATION_FAILURE","CLOUDFLARE_STORE_VALIDATION","CLOUDFLARE_STORE_WRONG_REGION","CLOUD_AI_IMAGE_VALIDATION","DAM_STORAGE_UNAVAILABLE","DIGITALOCEAN_IMPORT_ACCESS_DENIED","DIGITALOCEAN_IMPORT_FAILURE","DIGITALOCEAN_IMPORT_NOT_FOUND","DIGITALOCEAN_IMPORT_VALIDATION","DIGITALOCEAN_STORE_ACCESS_DENIED","DIGITALOCEAN_STORE_NOT_FOUND","DIGITALOCEAN_STORE_VALIDATION","DIGITALOCEAN_STORE_WRONG_REGION","DOCUMENT_AUTOROTATE_VALIDATION","DOCUMENT_CONVERT_UNSUPPORTED_CONVERSION","DOCUMENT_CONVERT_VALIDATION","DOCUMENT_EXTRACT_VALIDATION","DOCUMENT_MERGE_UNSUPPORTED_CONVERSION","DOCUMENT_MERGE_VALIDATION","DOCUMENT_OCR_VALIDATION","DOCUMENT_OPTIMIZE_UNSUPPORTED_INPUT","DOCUMENT_OPTIMIZE_VALIDATION","DOCUMENT_SPLIT_VALIDATION","DOCUMENT_THUMBS_INVALID_INPUT","DOCUMENT_THUMBS_VALIDATION","DO_NOT_REUSE_ASSEMBLY_IDS","DROPBOX_IMPORT_ACCESS_DENIED","DROPBOX_IMPORT_FAILURE","DROPBOX_IMPORT_NOT_FOUND","DROPBOX_IMPORT_VALIDATION","DROPBOX_STORE_COULD_NOT_PARSE_URL","DROPBOX_STORE_VALIDATION","FILE_COMPRESS_INVALID_INPUT","FILE_COMPRESS_VALIDATION","FILE_DECOMPRESS_INVALID_INPUT","FILE_DECOMPRESS_PASSWORD_INCORRECT","FILE_DECOMPRESS_PASSWORD_REQUIRED","FILE_DECOMPRESS_VALIDATION","FILE_DOWNLOAD_ERROR","FILE_FILTER_DECLINED_FILE","FILE_FILTER_INVALID_OPERATOR","FILE_FILTER_VALIDATION","FILE_HASH_VALIDATION","FILE_META_DATA_ERROR","FILE_PREVIEW_VALIDATION","FILE_READ_VALIDATION_ERROR","FILE_SERVE_NO_RESULT","FILE_SERVE_VALIDATION","FILE_VERIFY_INVALID_FILE","FILE_VERIFY_VALIDATION","FILE_VIRUSSCAN_DECLINED_FILE","FILE_VIRUSSCAN_INVALID_INPUT","FILE_VIRUSSCAN_VALIDATION","FTP_IMPORT_ACCESS_DENIED","FTP_IMPORT_FAILURE","FTP_IMPORT_NOT_FOUND","FTP_IMPORT_VALIDATION","FTP_STORE_VALIDATION","GET_ACCOUNT_DB_ERROR","GET_ACCOUNT_UNKNOWN_AUTH_KEY","GOOGLE_IMPORT_ACCESS_DENIED","GOOGLE_IMPORT_FAILURE","GOOGLE_IMPORT_NOT_FOUND","GOOGLE_IMPORT_VALIDATION","GOOGLE_STORE_INVALID_INPUT","GOOGLE_STORE_VALIDATION","HTML_CONVERT_VALIDATION","HTTP_IMPORT_ACCESS_DENIED","HTTP_IMPORT_FAILURE","HTTP_IMPORT_NOT_FOUND","HTTP_IMPORT_VALIDATION","HTTP_REQUEST_FAILURE","HTTP_REQUEST_VALIDATION","IMAGE_BGREMOVE_VALIDATION","IMAGE_COPYRIGHT_DETECT_DECLINED_FILE","IMAGE_COPYRIGHT_DETECT_VALIDATION","IMAGE_DESCRIBE_VALIDATION","IMAGE_ENHANCE_NO_INPUT_FILE","IMAGE_ENHANCE_VALIDATION","IMAGE_FACEDETECT_VALIDATION","IMAGE_GENERATE_VALIDATION","IMAGE_MERGE_FAILURE","IMAGE_MERGE_VALIDATION","IMAGE_OCR_VALIDATION","IMAGE_OPTIMIZE_VALIDATION","IMAGE_RESIZE_ERROR","IMAGE_RESIZE_INVALID_BLUR_REGION","IMAGE_RESIZE_INVALID_TEXT_OBJECT_VALUE","IMAGE_RESIZE_INVALID_TEXT_VALUE","IMAGE_RESIZE_INVALID_WATERMARK_OFFSET","IMAGE_RESIZE_INVALID_WATERMARK_POSITION","IMAGE_RESIZE_NO_CLUT_FILE","IMAGE_RESIZE_NO_INPUT_FILE","IMAGE_RESIZE_VALIDATION","IMAGE_UPSCALE_VALIDATION","IMPORT_FILE_ERROR","INCOMPLETE_PRICING","INSUFFICIENT_AUTH_SCOPE","INTERNAL_COMMAND_ERROR","INTERNAL_COMMAND_TIMEOUT","INVALID_ASSEMBLY_STATUS","INVALID_AUTH_EXPIRES_PARAMETER","INVALID_AUTH_KEY_PARAMETER","INVALID_AUTH_MAX_NUMBER_OF_FILES_PARAMETER","INVALID_AUTH_MAX_SIZE_PARAMETER","INVALID_AUTH_REFERER_PARAMETER","INVALID_FILE_META_DATA","INVALID_FORM_DATA","INVALID_INPUT_ERROR","INVALID_PARAMS_FIELD","INVALID_SIGNATURE","INVALID_STEP_NAME","INVALID_TEMPLATE_FIELD","INVALID_UPLOAD_HANDLE_STEP_NAME","INVALID_URL_ENCODING","MAX_NUMBER_OF_FILES_EXCEEDED","MAX_SIZE_EXCEEDED","MEGA_IMPORT_ACCESS_DENIED","MEGA_IMPORT_FAILURE","MEGA_IMPORT_NOT_FOUND","MEGA_IMPORT_VALIDATION","MEGA_STORE_ACCESS_DENIED","MEGA_STORE_NOT_FOUND","MEGA_STORE_VALIDATION","MEGA_STORE_WRONG_REGION","META_WRITE_VALIDATION","MINIO_IMPORT_ACCESS_DENIED","MINIO_IMPORT_FAILURE","MINIO_IMPORT_NOT_FOUND","MINIO_IMPORT_VALIDATION","MINIO_STORE_ACCESS_DENIED","MINIO_STORE_NOT_FOUND","MINIO_STORE_VALIDATION","MINIO_STORE_WRONG_REGION","NO_AUTH_EXPIRES_PARAMETER","NO_AUTH_KEY_PARAMETER","NO_AUTH_PARAMETER","NO_COUNTRY","NO_OBJECT_AUTH_PARAMETER","NO_OBJECT_PARAMS_FIELD","NO_PARAMS_FIELD","NO_PRICING","NO_RESULT_STEP_FOUND","NO_RPC_RESULT_FROM_IMAGE_RESIZER","NO_SIGNATURE_FIELD","NO_TEMPLATE_ID","PLAN_LIMIT_EXCEEDED","POSSIBLY_MALICIOUS_FILE_FOUND","PRIORITY_JOB_SLOTS_NOT_FOUND","PRIORITY_JOB_SLOT_STATS_ERROR","PRIORITY_JOB_SLOT_STATS_INVALID_AGGREGATION","PRIORITY_JOB_SLOT_STATS_INVALID_TIME","PRIORITY_JOB_SLOT_STATS_MISSING_REGION","RATE_LIMIT_REACHED","REFERER_MISMATCH","REQUEST_PREMATURE_CLOSED","ROBOT_VALIDATION_BASE_ERROR","S3_ACCESS_DENIED","S3_IMPORT_ACCESS_DENIED","S3_IMPORT_FAILURE","S3_IMPORT_NOT_FOUND","S3_IMPORT_VALIDATION","S3_NOT_FOUND","S3_STORE_ACCESS_DENIED","S3_STORE_FAILURE","S3_STORE_NOT_FOUND","S3_STORE_URL_VERIFICATION_FAILURE","S3_STORE_VALIDATION","S3_STORE_WRONG_REGION","S3_WRONG_REGION","SCRIPT_RUN_VALIDATION","SERVER_403","SERVER_404","SERVER_500","SFTP_IMPORT_ACCESS_DENIED","SFTP_IMPORT_FAILURE","SFTP_IMPORT_NOT_FOUND","SFTP_IMPORT_VALIDATION","SFTP_STORE_VALIDATION","SIGNATURE_REUSE_DETECTED","SPEECH_TRANSCRIBE_VALIDATION","STORAGE_GRANT_NOT_CREATED","SUPABASE_IMPORT_ACCESS_DENIED","SUPABASE_IMPORT_FAILURE","SUPABASE_IMPORT_NOT_FOUND","SUPABASE_IMPORT_VALIDATION","SUPABASE_STORE_ACCESS_DENIED","SUPABASE_STORE_NOT_FOUND","SUPABASE_STORE_VALIDATION","SUPABASE_STORE_WRONG_REGION","SWIFT_IMPORT_ACCESS_DENIED","SWIFT_IMPORT_FAILURE","SWIFT_IMPORT_NOT_FOUND","SWIFT_IMPORT_VALIDATION","SWIFT_STORE_ACCESS_DENIED","SWIFT_STORE_NOT_FOUND","SWIFT_STORE_VALIDATION","SWIFT_STORE_WRONG_REGION","TEMPLATE_CREDENTIALS_INJECTION_ERROR","TEMPLATE_DB_ERROR","TEMPLATE_DENIES_STEPS_OVERRIDE","TEMPLATE_INVALID_JSON","TEMPLATE_NOT_FOUND","TEXT_SPEAK_VALIDATION","TEXT_TRANSLATE_VALIDATION","TIGRIS_IMPORT_ACCESS_DENIED","TIGRIS_IMPORT_FAILURE","TIGRIS_IMPORT_NOT_FOUND","TIGRIS_IMPORT_VALIDATION","TIGRIS_STORE_ACCESS_DENIED","TIGRIS_STORE_NOT_FOUND","TIGRIS_STORE_VALIDATION","TIGRIS_STORE_WRONG_REGION","TMP_FILE_DOWNLOAD_ERROR","TOKEN_INVALID_CREDENTIALS","TRANSIENT_STORAGE_SERVICE_ERROR","TRANSLOADIT_IMPORT_ACCESS_DENIED","TRANSLOADIT_IMPORT_FAILURE","TRANSLOADIT_IMPORT_NOT_FOUND","TRANSLOADIT_IMPORT_VALIDATION","TRANSLOADIT_STORE_CONFLICT","TRANSLOADIT_STORE_FAILURE","TRANSLOADIT_STORE_UNAVAILABLE","TRANSLOADIT_STORE_VALIDATION","TUS_STORE_VALIDATION","USER_COMMAND_ERROR","VERIFIED_EMAIL_REQUIRED","VIDEO_ADAPTIVE_VALIDATION","VIDEO_ARTWORK_VALIDATION","VIDEO_CONCAT_INVALID_INPUT","VIDEO_CONCAT_NO_OUTPUT","VIDEO_CONCAT_VALIDATION","VIDEO_ENCODE_INVALID_VIDEO_CODEC","VIDEO_ENCODE_INVALID_WATERMARK_POSITION","VIDEO_ENCODE_VALIDATION","VIDEO_GENERATE_VALIDATION","VIDEO_MERGE_NO_IMAGE_FOUND","VIDEO_MERGE_VALIDATION","VIDEO_ONDEMAND_NOT_FOUND","VIDEO_ONDEMAND_VALIDATION","VIDEO_SPLIT_NO_OUTPUT","VIDEO_SPLIT_VALIDATION","VIDEO_SUBTITLE_VALIDATION","VIDEO_THUMBS_INVALID_COUNT_VALUE","VIDEO_THUMBS_INVALID_FORMAT","VIDEO_THUMBS_INVALID_INPUT","VIDEO_THUMBS_VALIDATION","VIMEO_IMPORT_ACCESS_DENIED","VIMEO_IMPORT_FAILURE","VIMEO_IMPORT_NOT_FOUND","VIMEO_IMPORT_VALIDATION","VIMEO_STORE_ACCESS_DENIED","VIMEO_STORE_PROBLEM_SENDING_FILE","VIMEO_STORE_VALIDATION","WASABI_IMPORT_ACCESS_DENIED","WASABI_IMPORT_FAILURE","WASABI_IMPORT_NOT_FOUND","WASABI_IMPORT_VALIDATION","WASABI_STORE_ACCESS_DENIED","WASABI_STORE_NOT_FOUND","WASABI_STORE_VALIDATION","WASABI_STORE_WRONG_REGION","WORKER_JOB_ERROR","YOUTUBE_STORE_PROBLEM_SENDING_FILE","YOUTUBE_STORE_VALIDATION"],"type":"string"},{"minLength":1,"type":"string"}],"description":"Indicates an [error](/docs/api/response-codes/#error-codes) status. This key is only present if\nthe Assembly failed. New error codes may be added. Handle unrecognized codes as failures and preserve their values for programmatic inspection.","x-transloadit-description-id":"assemblyStatusResponseError"},"executing_jobs":{"items":{"type":"string"},"type":"array"},"execution_duration":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The time taken by Transloadit to execute this Assembly, in seconds.","x-transloadit-description-id":"assemblyStatusResponseExecutionDuration"},"execution_start":{"type":["null","string"]},"exitCode":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"Optional exit status of a failed processing command. Diagnostic details may vary; use the `error` code for programmatic error handling.","x-transloadit-description-id":"assemblyStatusResponseExitCode"},"exitSignal":{"description":"Optional signal that terminated a processing command. Diagnostic details may vary; use the `error` code for programmatic error handling.","type":["null","string"],"x-transloadit-description-id":"assemblyStatusResponseExitSignal"},"expected_tus_uploads":{"type":"number"},"fields":{"$ref":"#/components/schemas/Schema_b736e077f16daefe161b737933dc42c15027ce02d7bdb410497f29799a2151aa"},"file":{"type":"string"},"finished_tus_uploads":{"type":"number"},"has_dupe_jobs":{"type":"boolean"},"headers":{"additionalProperties":{},"type":"object"},"ignored_error_count":{"type":"number"},"ignored_errors":{"items":{"additionalProperties":true,"properties":{"error":{},"message":{"type":"string"},"phase":{"type":"string"},"step":{"type":["null","string"]}},"type":"object"},"type":"array"},"info":{"additionalProperties":true,"properties":{"retryIn":{"type":"number"}},"type":"object"},"instance":{"type":["null","string"]},"is_infinite":{"type":"boolean"},"is_private_address":{"type":"boolean"},"jobs_queue_duration":{"type":"number"},"last_job_completed":{"type":["null","string"]},"merged_params":{"type":["null","string"]},"message":{"description":"A human-readable message explaining the state of this Assembly. This is not always\npresent.","type":"string","x-transloadit-description-id":"assemblyStatusResponseMessage"},"name":{"type":"string"},"notify_duration":{"$ref":"#/components/schemas/Schema_98821d3fb80b8da19ecd734f66fdce4852dd42c3933f85148896f6e4b1232881"},"notify_error":{"type":["null","string"]},"notify_response_code":{"anyOf":[{"type":"number"},{"type":"null"}]},"notify_response_data":{"type":["null","string"]},"notify_start":{"type":["null","string"]},"notify_status":{"type":["null","string"]},"notify_url":{"type":["null","string"]},"numRetries":{"type":"number"},"num_input_files":{"type":"number"},"ok":{"type":"null"},"params":{"type":["null","string"]},"parent_assembly_status":{"anyOf":[{},{"type":"null"}]},"parent_id":{"type":["null","string"]},"playwright_error_code":{"type":"string"},"previousStep":{"description":"Name of the preceding Step associated with the error, when available.","type":"string","x-transloadit-description-id":"assemblyStatusResponsePreviousStep"},"queue_duration":{"type":"number"},"reason":{"anyOf":[{"type":"null"},{"type":"string"},{"type":"number"},{"type":"boolean"},{"items":{},"type":"array"},{"additionalProperties":{},"type":"object"}],"description":"Optional diagnostic details. Do not assume this value is a string or display it directly; use `message` for human-readable text. Diagnostic details may vary; use the `error` code for programmatic error handling.","x-transloadit-description-id":"assemblyStatusResponseReason"},"region":{"type":"string"},"response_code":{"anyOf":[{"type":"number"},{"type":"null"}]},"results":{"$ref":"#/components/schemas/Schema_acdda8455918771eb5b7d58d00e895c1326672fa85d67ad42497973e3292f5b8"},"retries":{"type":"number"},"retryable":{"type":"boolean"},"running_jobs":{"items":{"type":"string"},"type":"array"},"start_date":{"description":"The date and time at which upload started for this Assembly.","type":"string","x-transloadit-description-id":"assemblyStatusResponseStartDate"},"started_jobs":{"items":{"type":"string"},"type":"array"},"started_tus_uploads":{"type":"number"},"stderr":{"description":"Optional diagnostic output from a processing command, for troubleshooting. Diagnostic details may vary; use the `error` code for programmatic error handling.","type":"string","x-transloadit-description-id":"assemblyStatusResponseStderr"},"stdout":{"description":"Optional standard output from a processing command, for troubleshooting. Diagnostic details may vary; use the `error` code for programmatic error handling.","type":"string","x-transloadit-description-id":"assemblyStatusResponseStdout"},"step":{"description":"Name of the Step associated with the error, when available.","type":"string","x-transloadit-description-id":"assemblyStatusResponseStep"},"template":{"type":["null","string"]},"template_id":{"type":["null","string"]},"template_name":{"type":["null","string"]},"transloadit_client":{"type":["null","string"]},"tus_uploads":{"$ref":"#/components/schemas/Schema_d22a76a8ee6772f210db0c607b951c8c93ac86503e983681005064c9b1b4705d"},"tus_url":{"description":"The URL to the tus server used by this Assembly for [resumable\nuploads](/docs/api/resumable-uploads/).","type":"string","x-transloadit-description-id":"assemblyStatusResponseTusUrl"},"update_stream_url":{"$ref":"#/components/schemas/Schema_46291c8d1c92a74d382a7a6aed3de4d36d66c5dc3b0dee3c9d022c98afdd2dca"},"upload_duration":{"description":"The time taken by the uploader to upload files, in seconds.","type":"number","x-transloadit-description-id":"assemblyStatusResponseUploadDuration"},"upload_meta_data_extracted":{"type":"boolean"},"uploads":{"$ref":"#/components/schemas/Schema_19e55e422287120ed717d615250db33b653e07cd6844ece913cfef3503377cc2"},"uppyserver_url":{"type":["null","string"]},"url":{"type":"string"},"url_host":{"type":["null","string"]},"usage_tags":{"type":"string"},"virusname":{"type":"string"},"warnings":{"$ref":"#/components/schemas/Schema_005a01ba58ae0ad47bab35d7b78f964895edfa15304dc581291f5710082ad6b8"},"websocket_url":{"$ref":"#/components/schemas/Schema_360cb9b22505669e09179309638d53b007d6067cb34ce87083ee7c6478b2ea94"}},"required":["error"],"type":"object"}],"x-transloadit-schema-id":"sha256:f0d2a1ae84e18bb164654bfae2db67567745b3f2c2ebc95fd3142ffd5d0165bc"},"Schema_f58bdcadc487b872f0c49761f43f99387ab2a557659891196b305093fbbe0d52":{"anyOf":[{"additionalProperties":true,"description":"Could not load Priority Job Slot statistics.","properties":{"error":{"const":"PRIORITY_JOB_SLOT_STATS_ERROR","type":"string"},"http_code":{"const":500,"type":"number"},"message":{"description":"Human-readable explanation of the error. Its wording can vary; use the `error` code when handling a specific failure.","type":"string","x-transloadit-description-id":"api2ErrorMessage"}},"required":["error"],"type":"object","x-transloadit-description-id":"api2ErrorPriorityJobSlotStatsError"},{"allOf":[{"$ref":"#/components/schemas/Schema_cb07bdaec8a57b18babcb0842531069c047ea76747de30cb3433ec3ab53763cb"}]}],"x-transloadit-schema-id":"sha256:f58bdcadc487b872f0c49761f43f99387ab2a557659891196b305093fbbe0d52"},"Schema_f5aeeb6dae70ba70bb8a4c4daf5fad0a106a00f329e9960ff77cd84ecf415fee":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nPlease create your associated <dfn>Template Credentials</dfn> in your Transloadit account and use the name of your <dfn>Template Credentials</dfn> as this parameter's value. They will contain the values for your MEGA S4 Object Storage bucket, Key, Secret and Bucket region.\n\nWhile we recommend to use <dfn>Template Credentials</dfn> at all times, some use cases demand dynamic credentials for which using <dfn>Template Credentials</dfn> is too unwieldy because of their static nature. If you have this requirement, feel free to use the following parameters instead: `\"bucket\"`, `\"bucket_region\"`, `\"key\"`, `\"secret\"`.\n","x-transloadit-schema-id":"sha256:f5aeeb6dae70ba70bb8a4c4daf5fad0a106a00f329e9960ff77cd84ecf415fee"},"Schema_f702affc3ceae4884617c5487aa1c1eca162192a129d26ced057f7e9521e13c5":{"additionalProperties":false,"properties":{"aggregation":{"anyOf":[{"enum":["avg","max"],"type":"string"},{"type":"null"}],"description":"Selects average or maximum slot usage. Omission or null defaults to average usage.","x-transloadit-description-id":"priorityJobSlotsAggregation"},"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for a Priority Job Slots request.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"required":["expires","key"],"type":"object","x-transloadit-description-id":"priorityJobSlotsAuth"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"},"region":{"description":"Region to include, or `all` for every region.","minLength":1,"type":"string","x-transloadit-description-id":"statsRegion"},"since":{"description":"Date and time at which the statistics window begins, at most 91 days ago. ISO 8601 is recommended; API2 also preserves date strings accepted by its existing parser. A longer lookback is rejected with the endpoint’s invalid-time error.","minLength":1,"type":"string","x-transloadit-description-id":"statsSince"}},"required":["auth","region","since"],"type":"object","x-transloadit-schema-id":"sha256:f702affc3ceae4884617c5487aa1c1eca162192a129d26ced057f7e9521e13c5"},"Schema_f7d6eb3dd4ff5545f1e3227fdd79c832b4a6ffb14430af9c4d5cec50b9989d0d":{"anyOf":[{"additionalProperties":true,"description":"Your Template didn’t pass validation.","properties":{"error":{"const":"TEMPLATE_VALIDATION_ERROR","type":"string"},"http_code":{"const":400,"type":"number"},"message":{"description":"Human-readable explanation of the error. Its wording can vary; use the `error` code when handling a specific failure.","type":"string","x-transloadit-description-id":"api2ErrorMessage"}},"required":["error"],"type":"object","x-transloadit-description-id":"api2ErrorTemplateValidationError"},{"allOf":[{"$ref":"#/components/schemas/Schema_cb07bdaec8a57b18babcb0842531069c047ea76747de30cb3433ec3ab53763cb"}]}],"x-transloadit-schema-id":"sha256:f7d6eb3dd4ff5545f1e3227fdd79c832b4a6ffb14430af9c4d5cec50b9989d0d"},"Schema_f9f059c6ff209141973277001e2fe4648f4c807fbffff7d8ff70e590dae4b4ad":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":0,"type":"integer"}],"description":"\nThis parameter provides signed URLs in the result JSON (in the `signed_ssl_url` property). The number that you set this parameter to is the URL expiry time in seconds.\n\nIf this parameter is not used, no URL signing is done.\n","x-transloadit-schema-id":"sha256:f9f059c6ff209141973277001e2fe4648f4c807fbffff7d8ff70e590dae4b4ad"},"Schema_fabb2852b06e3649616f400bfad1a559c443979f014f42891783fee36fb0847b":{"items":{"anyOf":[{"$ref":"#/components/schemas/Schema_2971a82759cfb5a2f1a06240f9c836a156489d7a9f2db4cb0adef641c51a002a"},{"additionalProperties":true,"properties":{"approvalId":{"type":"string"},"approved":{"type":"boolean"},"providerExecuted":{"type":"boolean"},"reason":{"type":"string"},"type":{"const":"tool-approval-response","type":"string"}},"required":["approvalId","approved","type"],"type":"object"}]},"type":"array","x-transloadit-schema-id":"sha256:fabb2852b06e3649616f400bfad1a559c443979f014f42891783fee36fb0847b"},"Schema_fb8110ac8e46afd357588fdb3f6e0487d14ea219ff23b237b83413793ce39f30":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"type":"integer"}],"default":1000,"description":"\nThe pagination page size. This only works when recursive is `true` for now, in order to not break backwards compatibility in non-recursive imports.\n","x-transloadit-schema-id":"sha256:fb8110ac8e46afd357588fdb3f6e0487d14ea219ff23b237b83413793ce39f30"},"Schema_fbf959fa885d3246a26d6969bd942cd608e858932256050cf4e1efb4ba5763ce":{"description":"Whether the video appears to use interlaced scanning: `true` for interlaced videos or\n`false` for progressive videos. Set `output_meta.interlaced` to `true` to request detection.\nThis key may be present as `null` when detection was not requested or when requested detection\nwas inconclusive. Field presence alone does not show that detection ran.","type":["boolean","null"],"x-transloadit-description-id":"assemblyStatusMetaInterlaced","x-transloadit-schema-id":"sha256:fbf959fa885d3246a26d6969bd942cd608e858932256050cf4e1efb4ba5763ce"},"Schema_fc7b6ea6cf1d3286b9bc1ba170e65f4eaeff8fb23e8e4fc88229947f67d30575":{"additionalProperties":true,"properties":{"message":{"minLength":1,"type":"string"},"ok":{"const":"AUTH_KEY_SCOPES_FOUND","type":"string"},"scopes":{"items":{"enum":["assemblies:read","assemblies:write","assembly_notifications:write","auth_keys:read","auth_keys:write","billing:read","dam:read","dam:write","queues:read","read","smart_cdn:sign","storage_grants:write","template_credentials:read","template_credentials:write","templates:read","templates:write","write"],"type":"string"},"type":"array"}},"required":["message","ok","scopes"],"type":"object","x-transloadit-schema-id":"sha256:fc7b6ea6cf1d3286b9bc1ba170e65f4eaeff8fb23e8e4fc88229947f67d30575"},"Schema_fe143b5ec0cab88d44dce4a7bd0b626d5f8af5e117bb9caf6d463f23619e01e7":{"additionalProperties":false,"properties":{"auth":{"additionalProperties":false,"description":"Contains the Transloadit API key and signature-authentication metadata for a DAM mutation.","properties":{"expires":{"description":"ISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it.","type":"string","x-transloadit-description-id":"signatureAuthExpires"},"key":{"description":"Transloadit API key used to authenticate requests","type":"string","x-transloadit-description-id":"signatureAuthKey"}},"required":["expires","key"],"type":"object","x-transloadit-description-id":"damMutationAuth"},"destination":{"description":"New Workspace-relative path of the same kind as source. End folder paths with a slash. An occupied destination is refused rather than overwritten or merged.","maxLength":513,"minLength":1,"type":"string","x-transloadit-description-id":"damEntryMoveDestination"},"nonce":{"anyOf":[{"type":"string"},{"type":"integer"}],"description":"Unique, random value included in signed request params to make each signature unique and prevent accidental signature reuse.","x-transloadit-description-id":"requestNonce"},"source":{"description":"Existing Workspace-relative file or folder path. End folder paths with a slash. The native move preserves asset and version IDs.","maxLength":513,"minLength":1,"type":"string","x-transloadit-description-id":"damEntryMoveSource"}},"required":["auth","destination","source"],"type":"object","x-transloadit-schema-id":"sha256:fe143b5ec0cab88d44dce4a7bd0b626d5f8af5e117bb9caf6d463f23619e01e7"},"Schema_feebba1777caed78980328c392ae9ada2c93035aa1a0d8ea0239045b00c5015b":{"anyOf":[{"pattern":"^[0-9]+(\\.[0-9]+)?$","type":"string"},{"pattern":"^\\$\\{[^\\n\\r  ]+\\}$","type":"string"},{"minimum":1,"type":"integer"}],"description":"\nSample rate of the resulting audio file, in Hertz. If not specified will default to the sample rate of the input audio file.\n","x-transloadit-schema-id":"sha256:feebba1777caed78980328c392ae9ada2c93035aa1a0d8ea0239045b00c5015b"},"Schema_ff500423b78c329151c169aeb34426a68588363f1686c1a5d1c35c7b0c5437fa":{"anyOf":[{"pattern":"\\$\\{[^\\n\\r  ]+\\}","type":"string"},{"type":"string"}],"description":"\nPlease create your associated <dfn>Template Credentials</dfn> in your Transloadit account and use the name of your <dfn>Template Credentials</dfn> as this parameter's value. They will contain the values for your Vimeo access token.\n","x-transloadit-schema-id":"sha256:ff500423b78c329151c169aeb34426a68588363f1686c1a5d1c35c7b0c5437fa"},"Schema_ff79c8f71a3217a1b38b7ba2ab1c6ac0c0d575c77c52a209daddad9ee51151af":{"anyOf":[{"additionalProperties":true,"properties":{"experimental_providerMetadata":{},"providerOptions":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"text":{"type":"string"},"type":{"const":"text","type":"string"}},"required":["providerOptions","text","type"],"type":"object"},{"additionalProperties":true,"properties":{"experimental_providerMetadata":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"providerOptions":{"not":{}},"text":{"type":"string"},"type":{"const":"text","type":"string"}},"required":["text","type"],"type":"object"},{"additionalProperties":true,"properties":{"experimental_providerMetadata":{"$ref":"#/components/schemas/Schema_b04b5b7b31379eeb62ed83ac96b9f63cee596ead79111fef3fb0b0c9c5daf236"},"providerOptions":{"type":"null"},"text":{"type":"string"},"type":{"const":"text","type":"string"}},"required":["providerOptions","text","type"],"type":"object"}],"x-transloadit-schema-id":"sha256:ff79c8f71a3217a1b38b7ba2ab1c6ac0c0d575c77c52a209daddad9ee51151af"},"assemblyNotificationPayload":{"$ref":"#/components/schemas/Schema_f0d2a1ae84e18bb164654bfae2db67567745b3f2c2ebc95fd3142ffd5d0165bc"}},"securitySchemes":{"BasicAuth":{"scheme":"basic","type":"http"},"BearerAuth":{"description":"Uses an Auth Key as the OAuth 2.0 client identifier and its Auth Secret as the client secret. The `/token` endpoint preserves legacy Transloadit token error payloads and status codes.","flows":{"clientCredentials":{"scopes":{"assemblies:read":"Allows a bearer token to use the `assemblies:read` scope.","assemblies:write":"Allows a bearer token to use the `assemblies:write` scope.","assembly_notifications:write":"Allows a bearer token to use the `assembly_notifications:write` scope.","auth_keys:read":"Allows a bearer token to use the `auth_keys:read` scope.","auth_keys:write":"Allows a bearer token to use the `auth_keys:write` scope.","billing:read":"Allows a bearer token to use the `billing:read` scope.","dam:read":"Allows a bearer token to use the `dam:read` scope.","dam:write":"Allows a bearer token to use the `dam:write` scope.","queues:read":"Allows a bearer token to use the `queues:read` scope.","read":"Allows a bearer token to use the `read` scope.","smart_cdn:sign":"Allows a bearer token to use the `smart_cdn:sign` scope.","storage_grants:write":"Allows a bearer token to use the `storage_grants:write` scope.","template_credentials:read":"Allows a bearer token to use the `template_credentials:read` scope.","template_credentials:write":"Allows a bearer token to use the `template_credentials:write` scope.","templates:read":"Allows a bearer token to use the `templates:read` scope.","templates:write":"Allows a bearer token to use the `templates:write` scope.","write":"Allows a bearer token to use the `write` scope."},"tokenUrl":"/token"}},"type":"oauth2"}}},"externalDocs":{"description":"Transloadit API documentation","url":"https://transloadit.com/docs/api/"},"info":{"contact":{"email":"support@transloadit.com","name":"Transloadit Support","url":"https://transloadit.com/support/"},"description":"Create and manage file-processing Assemblies, Templates, credentials, uploads, and workspace resources.","termsOfService":"https://transloadit.com/legal/terms-of-service/","title":"Transloadit API","version":"2.0.0","x-logo":{"backgroundColor":"#FFFFFF","url":"https://transloadit.com/assets/images/artwork/logos-transloadit-default-glyph.svg"}},"jsonSchemaDialect":"http://json-schema.org/draft-07/schema#","openapi":"3.1.2","paths":{"/assemblies":{"get":{"description":"Lists Assemblies for the authenticated Workspace.","operationId":"api2.list-assemblies","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_b3eaec12886d230ec9fd45da6b2e8da7fe928e64efe0174ece3c5e2f4ad443d5"}}},"in":"query","name":"params","required":false,"x-transloadit-normalized-params":"#/components/schemas/Schema_aaffd6133c1b02e4a7843e6e815412ab247da8c154d4f13cd0267992d2a8dea9"},{"in":"query","name":"signature","required":false,"schema":{"type":"string"}}],"responses":{"2XX":{"content":{"application/json":{"example":{"count":50,"items":[{"account_id":"7c91e50845204dea9ed4791f7d8440f1","created":"2023-02-11T16:04:22.000Z","created_ts":1676131462,"error":null,"execution_duration":2.337,"execution_start":"2023-02-11T16:04:24.000Z","files":"[\"Saturn as seen from the Cas....jpg\"]","id":"195c60855fda4fb9a3b2f848374ca4e1","instance":"tam.transloadit.com","notify_url":null,"ok":"ASSEMBLY_COMPLETED","parent_id":null,"redirect_url":null,"region":"eu-west-1","template_id":"40b0efc6b37f432dbe9485017b52a7b7","template_name":"my-template-1676131432311","warning_count":0},{"account_id":"7c91e50845204dea9ed4791f7d8440f1","created":"2023-02-11T16:04:04.000Z","created_ts":1676131444,"error":null,"execution_duration":6.275,"execution_start":"2023-02-11T16:04:06.000Z","files":"[\"green grass fiels.jpg\",\"Morning Dew.jpg\",\"green leaf plant.jpg\"]","id":"72fc13f46db84fa1969d913ca8763de1","instance":"tam.transloadit.com","notify_url":null,"ok":"ASSEMBLY_COMPLETED","parent_id":null,"redirect_url":null,"region":"eu-west-1","template_id":"40b0efc6b37f432dbe9485017b52a7b7","template_name":"my-template-1676131432311","warning_count":0}]},"schema":{"$ref":"#/components/schemas/Schema_a8ae24f9c8d680e21e0004af41cfda5b0a653f81098f242606641ef844a3080b"}},"text/plain; charset=utf-8":{"example":{"count":50,"items":[{"account_id":"7c91e50845204dea9ed4791f7d8440f1","created":"2023-02-11T16:04:22.000Z","created_ts":1676131462,"error":null,"execution_duration":2.337,"execution_start":"2023-02-11T16:04:24.000Z","files":"[\"Saturn as seen from the Cas....jpg\"]","id":"195c60855fda4fb9a3b2f848374ca4e1","instance":"tam.transloadit.com","notify_url":null,"ok":"ASSEMBLY_COMPLETED","parent_id":null,"redirect_url":null,"region":"eu-west-1","template_id":"40b0efc6b37f432dbe9485017b52a7b7","template_name":"my-template-1676131432311","warning_count":0},{"account_id":"7c91e50845204dea9ed4791f7d8440f1","created":"2023-02-11T16:04:04.000Z","created_ts":1676131444,"error":null,"execution_duration":6.275,"execution_start":"2023-02-11T16:04:06.000Z","files":"[\"green grass fiels.jpg\",\"Morning Dew.jpg\",\"green leaf plant.jpg\"]","id":"72fc13f46db84fa1969d913ca8763de1","instance":"tam.transloadit.com","notify_url":null,"ok":"ASSEMBLY_COMPLETED","parent_id":null,"redirect_url":null,"region":"eu-west-1","template_id":"40b0efc6b37f432dbe9485017b52a7b7","template_name":"my-template-1676131432311","warning_count":0}]},"schema":{"$ref":"#/components/schemas/Schema_a8ae24f9c8d680e21e0004af41cfda5b0a653f81098f242606641ef844a3080b"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_b25ac90e330240b3fcc5006abd16617a891e6b7a088e6d1773af47c1bea2047f"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_b25ac90e330240b3fcc5006abd16617a891e6b7a088e6d1773af47c1bea2047f"}}},"description":"HTTP 400 response"},"4XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Client error response"},"5XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Server error response"}},"security":[{"BearerAuth":["assemblies:read"]}],"summary":"Retrieve list of Assemblies","x-transloadit-auth":{"bearerBypassesSignature":true,"kind":"api-key","scopes":["assemblies:read"],"signature":"required"},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode"},"post":{"description":"Creates an Assembly from uploaded files and Assembly Instructions.","operationId":"api2.create-assembly","requestBody":{"content":{"multipart/form-data":{"encoding":{"params":{"contentType":"application/json"}},"schema":{"additionalProperties":{"anyOf":[{"type":"string"},{"format":"binary","type":"string"}]},"properties":{"num_expected_upload_files":{"$ref":"#/components/schemas/Schema_a8973c25bd6af940d3d33b4cf66cd5e99c7c3d30e99223ce51cc0fd830d9ee3d","description":"When using resumable uploads, it specifies the number of files that will be uploaded. More\ndetails are provided in\n[Resumable Uploads](https://transloadit.com/docs/api/resumable-uploads/)."},"params":{"$ref":"#/components/schemas/Schema_595e00b6483c79caf575ce838e4163db37acaa8302be457463b5f82fe3dd607f"},"signature":{"type":"string"},"tus_num_expected_upload_files":{"$ref":"#/components/schemas/Schema_a8973c25bd6af940d3d33b4cf66cd5e99c7c3d30e99223ce51cc0fd830d9ee3d","description":"Legacy alias for `num_expected_upload_files`, retained for compatibility with older SDKs."}},"required":["params"],"type":"object","x-transloadit-normalized-params":"#/components/schemas/Schema_4e62d6446b6f1588fecf8b9d2712fda800d91985ada2c079608909f01bf82f74"}}},"required":true},"responses":{"2XX":{"content":{"application/json":{"example":{"account_id":"6c8b8d10d68b11e3a799b579dfce333a","assembly_id":"0fce5b1063e611e88d8eb130f7921d8a","assembly_ssl_url":"https://api2-morven.transloadit.com/assemblies/0fce5b1063e611e88d8eb130f7921d8a","assembly_url":"http://api2.morven.transloadit.com/assemblies/0fce5b1063e611e88d8eb130f7921d8a","bytes_expected":1687,"bytes_received":1687,"bytes_usage":0,"companion_url":"https://api2-morven.transloadit.com/companion/","execution_duration":0.001,"execution_start":"2018/05/30 08:47:19 GMT","fields":{},"instance":"morven.transloadit.com","jobs_queue_duration":0,"message":"The Assembly is currently being executed.","ok":"ASSEMBLY_EXECUTING","parent_id":null,"queue_duration":0.04,"results":{},"start_date":"2018/05/30 08:47:19 GMT","template":null,"template_id":null,"tus_url":"https://api2-morven.transloadit.com/resumable/files/","update_stream_url":"https://api2-morven.transloadit.com/ws20243?assembly=0fce5b1063e611e88d8eb130f7921d8a","upload_duration":0.049,"uploads":[],"uppyserver_url":"https://api2-morven.transloadit.com/companion/","warnings":[],"websocket_url":"https://api2-morven.transloadit.com/ws20243"},"schema":{"$ref":"#/components/schemas/Schema_7def4758686ba84befe3cec9842c1f4ab2bcb40aeaa5a26a55c39b02734ba937"}},"text/plain; charset=utf-8":{"example":{"account_id":"6c8b8d10d68b11e3a799b579dfce333a","assembly_id":"0fce5b1063e611e88d8eb130f7921d8a","assembly_ssl_url":"https://api2-morven.transloadit.com/assemblies/0fce5b1063e611e88d8eb130f7921d8a","assembly_url":"http://api2.morven.transloadit.com/assemblies/0fce5b1063e611e88d8eb130f7921d8a","bytes_expected":1687,"bytes_received":1687,"bytes_usage":0,"companion_url":"https://api2-morven.transloadit.com/companion/","execution_duration":0.001,"execution_start":"2018/05/30 08:47:19 GMT","fields":{},"instance":"morven.transloadit.com","jobs_queue_duration":0,"message":"The Assembly is currently being executed.","ok":"ASSEMBLY_EXECUTING","parent_id":null,"queue_duration":0.04,"results":{},"start_date":"2018/05/30 08:47:19 GMT","template":null,"template_id":null,"tus_url":"https://api2-morven.transloadit.com/resumable/files/","update_stream_url":"https://api2-morven.transloadit.com/ws20243?assembly=0fce5b1063e611e88d8eb130f7921d8a","upload_duration":0.049,"uploads":[],"uppyserver_url":"https://api2-morven.transloadit.com/companion/","warnings":[],"websocket_url":"https://api2-morven.transloadit.com/ws20243"},"schema":{"$ref":"#/components/schemas/Schema_7def4758686ba84befe3cec9842c1f4ab2bcb40aeaa5a26a55c39b02734ba937"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_dfdbed416b837e5e35b90b747799d553c4a573fb8b22060592b895fb68ffde6a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_dfdbed416b837e5e35b90b747799d553c4a573fb8b22060592b895fb68ffde6a"}}},"description":"HTTP 400 response"},"4XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Client error response"},"5XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Server error response"}},"security":[{"BearerAuth":["assemblies:write"]}],"summary":"Create a new Assembly","x-transloadit-auth":{"bearerBypassesSignature":true,"kind":"api-key","scopes":["assemblies:write"],"signature":"conditional"},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode"}},"/assemblies/{assemblyId}":{"delete":{"description":"Cancels an Assembly that is still running.","operationId":"api2.cancel-assembly","parameters":[{"in":"path","name":"assemblyId","required":true,"schema":{"pattern":"^[a-z0-9]{32}$","type":"string","x-transloadit-path-format":"assembly-id"}}],"responses":{"2XX":{"content":{"application/json":{"example":{"account_id":"4ce4fb3d9d1842b6ba5d6f3ccee4b066","assembly_id":"7828446e5acd4aa996dce3455ec914e9","assembly_ssl_url":"https://api2-morven.transloadit.com/assemblies/7828446e5acd4aa996dce3455ec914e9","assembly_url":"http://api2-morven.transloadit.com/assemblies/7828446e5acd4aa996dce3455ec914e9","build_id":"339","bytes_expected":486608,"bytes_received":486608,"bytes_usage":1097155,"client_agent":null,"client_ip":null,"client_referer":null,"companion_url":"https://api2-morven.transloadit.com/companion/","executing_jobs":[],"execution_duration":5.281,"execution_start":"2020/01/09 12:02:08 GMT","expected_tus_uploads":1,"fields":{},"finished_tus_uploads":1,"has_dupe_jobs":false,"instance":"morven.transloadit.com","is_infinite":false,"jobs_queue_duration":0.01,"last_job_completed":"2020/01/09 12:02:14 GMT","merged_params":"{\"steps\":{\":original\":{\"robot\":\"/upload/handle\"},\"faces_detected\":{\"use\":\":original\",\"robot\":\"/image/facedetect\",\"crop\":true,\"faces\":\"max-confidence\",\"format\":\"preserve\",\"crop_padding\":\"10%\"},\"exported\":{\"use\":[\"faces_detected\",\":original\"],\"robot\":\"/s3/store\",\"credentials\":\"demo_s3_credentials\"}},\"auth\":{\"key\":\"****\",\"expires\":\"2020-01-10T12:02:05.826Z\"}}","message":"The Assembly was canceled.","notify_duration":null,"notify_response_code":null,"notify_start":null,"notify_status":null,"notify_url":null,"ok":"ASSEMBLY_CANCELED","params":"{\"steps\":{\":original\":{\"robot\":\"/upload/handle\"},\"faces_detected\":{\"use\":\":original\",\"robot\":\"/image/facedetect\",\"crop\":true,\"faces\":\"max-confidence\",\"format\":\"preserve\",\"crop_padding\":\"10%\"},\"exported\":{\"use\":[\"faces_detected\",\":original\"],\"robot\":\"/s3/store\",\"credentials\":\"demo_s3_credentials\"}},\"auth\":{\"key\":\"****\",\"expires\":\"2020-01-10T12:02:05.826Z\"}}","parent_assembly_status":null,"parent_id":null,"queue_duration":0.184,"results":{":original":[{"basename":"joe-gardner-149699","cost":97157,"execTime":0.81,"ext":"jpg","field":"file","from_batch_import":false,"id":"a30bd0776e7f4ac3817b056d102e8219","is_tus_file":false,"md5hash":"fb205cb04b6998fe7ba364f70227cfa1","meta":{"aspect_ratio":"1.500","average_color":"#b09d96","colorspace":"RGB","date_file_modified":"2020/01/09 12:02:08 GMT","frame_count":1,"has_clipping_path":false,"has_transparency":false,"height":1667,"width":2500},"mime":"image/jpeg","name":"joe-gardner-149699.jpg","original_basename":"joe-gardner-149699","original_id":"a30bd0776e7f4ac3817b056d102e8219","original_md5hash":"fb205cb04b6998fe7ba364f70227cfa1","original_name":"joe-gardner-149699.jpg","original_path":"/","queue":"live","queueTime":0.01,"size":485784,"ssl_url":"https://s3.amazonaws.com/demos.transloadit.com/a3/0bd0776e7f4ac3817b056d102e8219/joe-gardner-149699.jpg","tus_upload_url":null,"type":"image","url":"http://demos.transloadit.com.s3.amazonaws.com/a3/0bd0776e7f4ac3817b056d102e8219/joe-gardner-149699.jpg"}],"faces_detected":[{"basename":"joe-gardner-149699","cost":627606,"execTime":0.83,"ext":"jpg","field":"file","from_batch_import":false,"id":"b8d12f6c517541ca86bf50c537cedb27","is_tus_file":false,"md5hash":"2a5cd917f4281b9438956e489c63dfd2","meta":{"aspect_ratio":"0.739","average_color":"#8d654d","colorspace":"RGB","date_file_created":"2020/01/09 12:02:09 GMT","date_file_modified":"2020/01/09 12:02:12 GMT","faces":[{"confidence":99.99,"height":840,"width":621,"x1":981,"x2":1550,"y1":121,"y2":891}],"frame_count":1,"has_clipping_path":false,"has_transparency":false,"height":840,"width":621},"mime":"image/jpeg","name":"joe-gardner-149699.jpg","original_basename":"joe-gardner-149699","original_id":"a30bd0776e7f4ac3817b056d102e8219","original_md5hash":"fb205cb04b6998fe7ba364f70227cfa1","original_name":"joe-gardner-149699.jpg","original_path":"/","queue":"live","queueTime":0,"size":141822,"ssl_url":"https://s3.amazonaws.com/demos.transloadit.com/b8/d12f6c517541ca86bf50c537cedb27/joe-gardner-149699.jpg","tus_upload_url":null,"type":"image","url":"http://demos.transloadit.com.s3.amazonaws.com/b8/d12f6c517541ca86bf50c537cedb27/joe-gardner-149699.jpg"}]},"running_jobs":[],"start_date":"2020/01/09 12:02:06 GMT","started_jobs":[":original:::original","faces_detected:::original","exported:::original","exported::faces_detected"],"started_tus_uploads":1,"template":null,"template_id":null,"transloadit_client":"node-sdk:2.0.8","tus_url":"https://api2-morven.transloadit.com/resumable/files/","update_stream_url":"https://api2-morven.transloadit.com/ws20074?assembly=7828446e5acd4aa996dce3455ec914e9","upload_duration":2.814,"upload_meta_data_extracted":true,"uploads":[{"basename":"joe-gardner-149699","ext":"jpg","field":"file","from_batch_import":false,"id":"a30bd0776e7f4ac3817b056d102e8219","is_tus_file":true,"md5hash":"fb205cb04b6998fe7ba364f70227cfa1","meta":{"aspect_ratio":"1.500","average_color":"#b09d96","colorspace":"RGB","date_file_modified":"2020/01/09 12:02:08 GMT","frame_count":1,"has_clipping_path":false,"has_transparency":false,"height":1667,"width":2500},"mime":"image/jpeg","name":"joe-gardner-149699.jpg","original_basename":"joe-gardner-149699","original_id":"a30bd0776e7f4ac3817b056d102e8219","original_md5hash":"fb205cb04b6998fe7ba364f70227cfa1","original_name":"joe-gardner-149699.jpg","original_path":"/","size":485784,"ssl_url":"https://s3.amazonaws.com/demos.transloadit.com/a3/0bd0776e7f4ac3817b056d102e8219/joe-gardner-149699.jpg","tus_upload_url":"https://api2-morven.transloadit.com/resumable/files/UPLOAD_ID+CAPABILITY_TOKEN","type":"image","url":"http://demos.transloadit.com.s3.amazonaws.com/a3/0bd0776e7f4ac3817b056d102e8219/joe-gardner-149699.jpg"}],"uppyserver_url":"https://api2-morven.transloadit.com/companion/","warnings":[],"websocket_url":"https://api2-morven.transloadit.com/ws20074"},"schema":{"$ref":"#/components/schemas/Schema_7def4758686ba84befe3cec9842c1f4ab2bcb40aeaa5a26a55c39b02734ba937"}},"text/plain; charset=utf-8":{"example":{"account_id":"4ce4fb3d9d1842b6ba5d6f3ccee4b066","assembly_id":"7828446e5acd4aa996dce3455ec914e9","assembly_ssl_url":"https://api2-morven.transloadit.com/assemblies/7828446e5acd4aa996dce3455ec914e9","assembly_url":"http://api2-morven.transloadit.com/assemblies/7828446e5acd4aa996dce3455ec914e9","build_id":"339","bytes_expected":486608,"bytes_received":486608,"bytes_usage":1097155,"client_agent":null,"client_ip":null,"client_referer":null,"companion_url":"https://api2-morven.transloadit.com/companion/","executing_jobs":[],"execution_duration":5.281,"execution_start":"2020/01/09 12:02:08 GMT","expected_tus_uploads":1,"fields":{},"finished_tus_uploads":1,"has_dupe_jobs":false,"instance":"morven.transloadit.com","is_infinite":false,"jobs_queue_duration":0.01,"last_job_completed":"2020/01/09 12:02:14 GMT","merged_params":"{\"steps\":{\":original\":{\"robot\":\"/upload/handle\"},\"faces_detected\":{\"use\":\":original\",\"robot\":\"/image/facedetect\",\"crop\":true,\"faces\":\"max-confidence\",\"format\":\"preserve\",\"crop_padding\":\"10%\"},\"exported\":{\"use\":[\"faces_detected\",\":original\"],\"robot\":\"/s3/store\",\"credentials\":\"demo_s3_credentials\"}},\"auth\":{\"key\":\"****\",\"expires\":\"2020-01-10T12:02:05.826Z\"}}","message":"The Assembly was canceled.","notify_duration":null,"notify_response_code":null,"notify_start":null,"notify_status":null,"notify_url":null,"ok":"ASSEMBLY_CANCELED","params":"{\"steps\":{\":original\":{\"robot\":\"/upload/handle\"},\"faces_detected\":{\"use\":\":original\",\"robot\":\"/image/facedetect\",\"crop\":true,\"faces\":\"max-confidence\",\"format\":\"preserve\",\"crop_padding\":\"10%\"},\"exported\":{\"use\":[\"faces_detected\",\":original\"],\"robot\":\"/s3/store\",\"credentials\":\"demo_s3_credentials\"}},\"auth\":{\"key\":\"****\",\"expires\":\"2020-01-10T12:02:05.826Z\"}}","parent_assembly_status":null,"parent_id":null,"queue_duration":0.184,"results":{":original":[{"basename":"joe-gardner-149699","cost":97157,"execTime":0.81,"ext":"jpg","field":"file","from_batch_import":false,"id":"a30bd0776e7f4ac3817b056d102e8219","is_tus_file":false,"md5hash":"fb205cb04b6998fe7ba364f70227cfa1","meta":{"aspect_ratio":"1.500","average_color":"#b09d96","colorspace":"RGB","date_file_modified":"2020/01/09 12:02:08 GMT","frame_count":1,"has_clipping_path":false,"has_transparency":false,"height":1667,"width":2500},"mime":"image/jpeg","name":"joe-gardner-149699.jpg","original_basename":"joe-gardner-149699","original_id":"a30bd0776e7f4ac3817b056d102e8219","original_md5hash":"fb205cb04b6998fe7ba364f70227cfa1","original_name":"joe-gardner-149699.jpg","original_path":"/","queue":"live","queueTime":0.01,"size":485784,"ssl_url":"https://s3.amazonaws.com/demos.transloadit.com/a3/0bd0776e7f4ac3817b056d102e8219/joe-gardner-149699.jpg","tus_upload_url":null,"type":"image","url":"http://demos.transloadit.com.s3.amazonaws.com/a3/0bd0776e7f4ac3817b056d102e8219/joe-gardner-149699.jpg"}],"faces_detected":[{"basename":"joe-gardner-149699","cost":627606,"execTime":0.83,"ext":"jpg","field":"file","from_batch_import":false,"id":"b8d12f6c517541ca86bf50c537cedb27","is_tus_file":false,"md5hash":"2a5cd917f4281b9438956e489c63dfd2","meta":{"aspect_ratio":"0.739","average_color":"#8d654d","colorspace":"RGB","date_file_created":"2020/01/09 12:02:09 GMT","date_file_modified":"2020/01/09 12:02:12 GMT","faces":[{"confidence":99.99,"height":840,"width":621,"x1":981,"x2":1550,"y1":121,"y2":891}],"frame_count":1,"has_clipping_path":false,"has_transparency":false,"height":840,"width":621},"mime":"image/jpeg","name":"joe-gardner-149699.jpg","original_basename":"joe-gardner-149699","original_id":"a30bd0776e7f4ac3817b056d102e8219","original_md5hash":"fb205cb04b6998fe7ba364f70227cfa1","original_name":"joe-gardner-149699.jpg","original_path":"/","queue":"live","queueTime":0,"size":141822,"ssl_url":"https://s3.amazonaws.com/demos.transloadit.com/b8/d12f6c517541ca86bf50c537cedb27/joe-gardner-149699.jpg","tus_upload_url":null,"type":"image","url":"http://demos.transloadit.com.s3.amazonaws.com/b8/d12f6c517541ca86bf50c537cedb27/joe-gardner-149699.jpg"}]},"running_jobs":[],"start_date":"2020/01/09 12:02:06 GMT","started_jobs":[":original:::original","faces_detected:::original","exported:::original","exported::faces_detected"],"started_tus_uploads":1,"template":null,"template_id":null,"transloadit_client":"node-sdk:2.0.8","tus_url":"https://api2-morven.transloadit.com/resumable/files/","update_stream_url":"https://api2-morven.transloadit.com/ws20074?assembly=7828446e5acd4aa996dce3455ec914e9","upload_duration":2.814,"upload_meta_data_extracted":true,"uploads":[{"basename":"joe-gardner-149699","ext":"jpg","field":"file","from_batch_import":false,"id":"a30bd0776e7f4ac3817b056d102e8219","is_tus_file":true,"md5hash":"fb205cb04b6998fe7ba364f70227cfa1","meta":{"aspect_ratio":"1.500","average_color":"#b09d96","colorspace":"RGB","date_file_modified":"2020/01/09 12:02:08 GMT","frame_count":1,"has_clipping_path":false,"has_transparency":false,"height":1667,"width":2500},"mime":"image/jpeg","name":"joe-gardner-149699.jpg","original_basename":"joe-gardner-149699","original_id":"a30bd0776e7f4ac3817b056d102e8219","original_md5hash":"fb205cb04b6998fe7ba364f70227cfa1","original_name":"joe-gardner-149699.jpg","original_path":"/","size":485784,"ssl_url":"https://s3.amazonaws.com/demos.transloadit.com/a3/0bd0776e7f4ac3817b056d102e8219/joe-gardner-149699.jpg","tus_upload_url":"https://api2-morven.transloadit.com/resumable/files/UPLOAD_ID+CAPABILITY_TOKEN","type":"image","url":"http://demos.transloadit.com.s3.amazonaws.com/a3/0bd0776e7f4ac3817b056d102e8219/joe-gardner-149699.jpg"}],"uppyserver_url":"https://api2-morven.transloadit.com/companion/","warnings":[],"websocket_url":"https://api2-morven.transloadit.com/ws20074"},"schema":{"$ref":"#/components/schemas/Schema_7def4758686ba84befe3cec9842c1f4ab2bcb40aeaa5a26a55c39b02734ba937"}}},"description":"Successful response"},"4XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Client error response"},"503":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_81a83acc28006534ce4842a8c113d5e7fe31aa0ae3f623c98e5c373fdc2867fd"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_81a83acc28006534ce4842a8c113d5e7fe31aa0ae3f623c98e5c373fdc2867fd"}}},"description":"HTTP 503 response"},"5XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Server error response"}},"security":[],"summary":"Cancel a running Assembly","x-transloadit-auth":{"kind":"none"},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode"},"get":{"description":"Returns the current status and results of an Assembly.","operationId":"api2.get-assembly","parameters":[{"in":"path","name":"assemblyId","required":true,"schema":{"pattern":"^[a-z0-9]{32}$","type":"string","x-transloadit-path-format":"assembly-id"}}],"responses":{"2XX":{"content":{"application/json":{"example":{"account_id":"4ce4fb3d9d1842b6ba5d6f3ccee4b066","assembly_id":"7828446e5acd4aa996dce3455ec914e9","assembly_ssl_url":"https://api2-morven.transloadit.com/assemblies/7828446e5acd4aa996dce3455ec914e9","assembly_url":"http://api2-morven.transloadit.com/assemblies/7828446e5acd4aa996dce3455ec914e9","build_id":"339","bytes_expected":486608,"bytes_received":486608,"bytes_usage":1097155,"client_agent":null,"client_ip":null,"client_referer":null,"companion_url":"https://api2-morven.transloadit.com/companion/","executing_jobs":[],"execution_duration":5.281,"execution_start":"2020/01/09 12:02:08 GMT","expected_tus_uploads":1,"fields":{},"finished_tus_uploads":1,"has_dupe_jobs":false,"instance":"morven.transloadit.com","is_infinite":false,"jobs_queue_duration":0.01,"last_job_completed":"2020/01/09 12:02:14 GMT","merged_params":"{\"steps\":{\":original\":{\"robot\":\"/upload/handle\"},\"faces_detected\":{\"use\":\":original\",\"robot\":\"/image/facedetect\",\"crop\":true,\"faces\":\"max-confidence\",\"format\":\"preserve\",\"crop_padding\":\"10%\"},\"exported\":{\"use\":[\"faces_detected\",\":original\"],\"robot\":\"/s3/store\",\"credentials\":\"demo_s3_credentials\"}},\"auth\":{\"key\":\"****\",\"expires\":\"2020-01-10T12:02:05.826Z\"}}","message":"The Assembly was successfully completed.","notify_duration":null,"notify_response_code":null,"notify_start":null,"notify_status":null,"notify_url":null,"ok":"ASSEMBLY_COMPLETED","params":"{\"steps\":{\":original\":{\"robot\":\"/upload/handle\"},\"faces_detected\":{\"use\":\":original\",\"robot\":\"/image/facedetect\",\"crop\":true,\"faces\":\"max-confidence\",\"format\":\"preserve\",\"crop_padding\":\"10%\"},\"exported\":{\"use\":[\"faces_detected\",\":original\"],\"robot\":\"/s3/store\",\"credentials\":\"demo_s3_credentials\"}},\"auth\":{\"key\":\"****\",\"expires\":\"2020-01-10T12:02:05.826Z\"}}","parent_assembly_status":null,"parent_id":null,"queue_duration":0.184,"results":{":original":[{"basename":"joe-gardner-149699","cost":97157,"execTime":0.81,"ext":"jpg","field":"file","from_batch_import":false,"id":"a30bd0776e7f4ac3817b056d102e8219","is_tus_file":false,"md5hash":"fb205cb04b6998fe7ba364f70227cfa1","meta":{"aspect_ratio":"1.500","average_color":"#b09d96","colorspace":"RGB","date_file_modified":"2020/01/09 12:02:08 GMT","frame_count":1,"has_clipping_path":false,"has_transparency":false,"height":1667,"width":2500},"mime":"image/jpeg","name":"joe-gardner-149699.jpg","original_basename":"joe-gardner-149699","original_id":"a30bd0776e7f4ac3817b056d102e8219","original_md5hash":"fb205cb04b6998fe7ba364f70227cfa1","original_name":"joe-gardner-149699.jpg","original_path":"/","queue":"live","queueTime":0.01,"size":485784,"ssl_url":"https://s3.amazonaws.com/demos.transloadit.com/a3/0bd0776e7f4ac3817b056d102e8219/joe-gardner-149699.jpg","tus_upload_url":null,"type":"image","url":"http://demos.transloadit.com.s3.amazonaws.com/a3/0bd0776e7f4ac3817b056d102e8219/joe-gardner-149699.jpg"}],"faces_detected":[{"basename":"joe-gardner-149699","cost":627606,"execTime":0.83,"ext":"jpg","field":"file","from_batch_import":false,"id":"b8d12f6c517541ca86bf50c537cedb27","is_tus_file":false,"md5hash":"2a5cd917f4281b9438956e489c63dfd2","meta":{"aspect_ratio":"0.739","average_color":"#8d654d","colorspace":"RGB","date_file_created":"2020/01/09 12:02:09 GMT","date_file_modified":"2020/01/09 12:02:12 GMT","faces":[{"confidence":99.99,"height":840,"width":621,"x1":981,"x2":1550,"y1":121,"y2":891}],"frame_count":1,"has_clipping_path":false,"has_transparency":false,"height":840,"width":621},"mime":"image/jpeg","name":"joe-gardner-149699.jpg","original_basename":"joe-gardner-149699","original_id":"a30bd0776e7f4ac3817b056d102e8219","original_md5hash":"fb205cb04b6998fe7ba364f70227cfa1","original_name":"joe-gardner-149699.jpg","original_path":"/","queue":"live","queueTime":0,"size":141822,"ssl_url":"https://s3.amazonaws.com/demos.transloadit.com/b8/d12f6c517541ca86bf50c537cedb27/joe-gardner-149699.jpg","tus_upload_url":null,"type":"image","url":"http://demos.transloadit.com.s3.amazonaws.com/b8/d12f6c517541ca86bf50c537cedb27/joe-gardner-149699.jpg"}]},"running_jobs":[],"start_date":"2020/01/09 12:02:06 GMT","started_jobs":[":original:::original","faces_detected:::original","exported:::original","exported::faces_detected"],"started_tus_uploads":1,"template":null,"template_id":null,"transloadit_client":"node-sdk:2.0.8","tus_url":"https://api2-morven.transloadit.com/resumable/files/","update_stream_url":"https://api2-morven.transloadit.com/ws20074?assembly=7828446e5acd4aa996dce3455ec914e9","upload_duration":2.814,"upload_meta_data_extracted":true,"uploads":[{"basename":"joe-gardner-149699","ext":"jpg","field":"file","from_batch_import":false,"id":"a30bd0776e7f4ac3817b056d102e8219","is_tus_file":true,"md5hash":"fb205cb04b6998fe7ba364f70227cfa1","meta":{"aspect_ratio":"1.500","average_color":"#b09d96","colorspace":"RGB","date_file_modified":"2020/01/09 12:02:08 GMT","frame_count":1,"has_clipping_path":false,"has_transparency":false,"height":1667,"width":2500},"mime":"image/jpeg","name":"joe-gardner-149699.jpg","original_basename":"joe-gardner-149699","original_id":"a30bd0776e7f4ac3817b056d102e8219","original_md5hash":"fb205cb04b6998fe7ba364f70227cfa1","original_name":"joe-gardner-149699.jpg","original_path":"/","size":485784,"ssl_url":"https://s3.amazonaws.com/demos.transloadit.com/a3/0bd0776e7f4ac3817b056d102e8219/joe-gardner-149699.jpg","tus_upload_url":"https://api2-morven.transloadit.com/resumable/files/UPLOAD_ID+CAPABILITY_TOKEN","type":"image","url":"http://demos.transloadit.com.s3.amazonaws.com/a3/0bd0776e7f4ac3817b056d102e8219/joe-gardner-149699.jpg"}],"uppyserver_url":"https://api2-morven.transloadit.com/companion/","warnings":[],"websocket_url":"https://api2-morven.transloadit.com/ws20074"},"schema":{"$ref":"#/components/schemas/Schema_7def4758686ba84befe3cec9842c1f4ab2bcb40aeaa5a26a55c39b02734ba937"}},"text/plain; charset=utf-8":{"example":{"account_id":"4ce4fb3d9d1842b6ba5d6f3ccee4b066","assembly_id":"7828446e5acd4aa996dce3455ec914e9","assembly_ssl_url":"https://api2-morven.transloadit.com/assemblies/7828446e5acd4aa996dce3455ec914e9","assembly_url":"http://api2-morven.transloadit.com/assemblies/7828446e5acd4aa996dce3455ec914e9","build_id":"339","bytes_expected":486608,"bytes_received":486608,"bytes_usage":1097155,"client_agent":null,"client_ip":null,"client_referer":null,"companion_url":"https://api2-morven.transloadit.com/companion/","executing_jobs":[],"execution_duration":5.281,"execution_start":"2020/01/09 12:02:08 GMT","expected_tus_uploads":1,"fields":{},"finished_tus_uploads":1,"has_dupe_jobs":false,"instance":"morven.transloadit.com","is_infinite":false,"jobs_queue_duration":0.01,"last_job_completed":"2020/01/09 12:02:14 GMT","merged_params":"{\"steps\":{\":original\":{\"robot\":\"/upload/handle\"},\"faces_detected\":{\"use\":\":original\",\"robot\":\"/image/facedetect\",\"crop\":true,\"faces\":\"max-confidence\",\"format\":\"preserve\",\"crop_padding\":\"10%\"},\"exported\":{\"use\":[\"faces_detected\",\":original\"],\"robot\":\"/s3/store\",\"credentials\":\"demo_s3_credentials\"}},\"auth\":{\"key\":\"****\",\"expires\":\"2020-01-10T12:02:05.826Z\"}}","message":"The Assembly was successfully completed.","notify_duration":null,"notify_response_code":null,"notify_start":null,"notify_status":null,"notify_url":null,"ok":"ASSEMBLY_COMPLETED","params":"{\"steps\":{\":original\":{\"robot\":\"/upload/handle\"},\"faces_detected\":{\"use\":\":original\",\"robot\":\"/image/facedetect\",\"crop\":true,\"faces\":\"max-confidence\",\"format\":\"preserve\",\"crop_padding\":\"10%\"},\"exported\":{\"use\":[\"faces_detected\",\":original\"],\"robot\":\"/s3/store\",\"credentials\":\"demo_s3_credentials\"}},\"auth\":{\"key\":\"****\",\"expires\":\"2020-01-10T12:02:05.826Z\"}}","parent_assembly_status":null,"parent_id":null,"queue_duration":0.184,"results":{":original":[{"basename":"joe-gardner-149699","cost":97157,"execTime":0.81,"ext":"jpg","field":"file","from_batch_import":false,"id":"a30bd0776e7f4ac3817b056d102e8219","is_tus_file":false,"md5hash":"fb205cb04b6998fe7ba364f70227cfa1","meta":{"aspect_ratio":"1.500","average_color":"#b09d96","colorspace":"RGB","date_file_modified":"2020/01/09 12:02:08 GMT","frame_count":1,"has_clipping_path":false,"has_transparency":false,"height":1667,"width":2500},"mime":"image/jpeg","name":"joe-gardner-149699.jpg","original_basename":"joe-gardner-149699","original_id":"a30bd0776e7f4ac3817b056d102e8219","original_md5hash":"fb205cb04b6998fe7ba364f70227cfa1","original_name":"joe-gardner-149699.jpg","original_path":"/","queue":"live","queueTime":0.01,"size":485784,"ssl_url":"https://s3.amazonaws.com/demos.transloadit.com/a3/0bd0776e7f4ac3817b056d102e8219/joe-gardner-149699.jpg","tus_upload_url":null,"type":"image","url":"http://demos.transloadit.com.s3.amazonaws.com/a3/0bd0776e7f4ac3817b056d102e8219/joe-gardner-149699.jpg"}],"faces_detected":[{"basename":"joe-gardner-149699","cost":627606,"execTime":0.83,"ext":"jpg","field":"file","from_batch_import":false,"id":"b8d12f6c517541ca86bf50c537cedb27","is_tus_file":false,"md5hash":"2a5cd917f4281b9438956e489c63dfd2","meta":{"aspect_ratio":"0.739","average_color":"#8d654d","colorspace":"RGB","date_file_created":"2020/01/09 12:02:09 GMT","date_file_modified":"2020/01/09 12:02:12 GMT","faces":[{"confidence":99.99,"height":840,"width":621,"x1":981,"x2":1550,"y1":121,"y2":891}],"frame_count":1,"has_clipping_path":false,"has_transparency":false,"height":840,"width":621},"mime":"image/jpeg","name":"joe-gardner-149699.jpg","original_basename":"joe-gardner-149699","original_id":"a30bd0776e7f4ac3817b056d102e8219","original_md5hash":"fb205cb04b6998fe7ba364f70227cfa1","original_name":"joe-gardner-149699.jpg","original_path":"/","queue":"live","queueTime":0,"size":141822,"ssl_url":"https://s3.amazonaws.com/demos.transloadit.com/b8/d12f6c517541ca86bf50c537cedb27/joe-gardner-149699.jpg","tus_upload_url":null,"type":"image","url":"http://demos.transloadit.com.s3.amazonaws.com/b8/d12f6c517541ca86bf50c537cedb27/joe-gardner-149699.jpg"}]},"running_jobs":[],"start_date":"2020/01/09 12:02:06 GMT","started_jobs":[":original:::original","faces_detected:::original","exported:::original","exported::faces_detected"],"started_tus_uploads":1,"template":null,"template_id":null,"transloadit_client":"node-sdk:2.0.8","tus_url":"https://api2-morven.transloadit.com/resumable/files/","update_stream_url":"https://api2-morven.transloadit.com/ws20074?assembly=7828446e5acd4aa996dce3455ec914e9","upload_duration":2.814,"upload_meta_data_extracted":true,"uploads":[{"basename":"joe-gardner-149699","ext":"jpg","field":"file","from_batch_import":false,"id":"a30bd0776e7f4ac3817b056d102e8219","is_tus_file":true,"md5hash":"fb205cb04b6998fe7ba364f70227cfa1","meta":{"aspect_ratio":"1.500","average_color":"#b09d96","colorspace":"RGB","date_file_modified":"2020/01/09 12:02:08 GMT","frame_count":1,"has_clipping_path":false,"has_transparency":false,"height":1667,"width":2500},"mime":"image/jpeg","name":"joe-gardner-149699.jpg","original_basename":"joe-gardner-149699","original_id":"a30bd0776e7f4ac3817b056d102e8219","original_md5hash":"fb205cb04b6998fe7ba364f70227cfa1","original_name":"joe-gardner-149699.jpg","original_path":"/","size":485784,"ssl_url":"https://s3.amazonaws.com/demos.transloadit.com/a3/0bd0776e7f4ac3817b056d102e8219/joe-gardner-149699.jpg","tus_upload_url":"https://api2-morven.transloadit.com/resumable/files/UPLOAD_ID+CAPABILITY_TOKEN","type":"image","url":"http://demos.transloadit.com.s3.amazonaws.com/a3/0bd0776e7f4ac3817b056d102e8219/joe-gardner-149699.jpg"}],"uppyserver_url":"https://api2-morven.transloadit.com/companion/","warnings":[],"websocket_url":"https://api2-morven.transloadit.com/ws20074"},"schema":{"$ref":"#/components/schemas/Schema_7def4758686ba84befe3cec9842c1f4ab2bcb40aeaa5a26a55c39b02734ba937"}}},"description":"Successful response"},"4XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Client error response"},"5XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Server error response"}},"security":[],"summary":"Retrieve an Assembly Status","x-transloadit-auth":{"kind":"none"},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode"},"put":{"description":"Creates an Assembly at a fresh caller-selected Assembly ID.","operationId":"api2.replace-assembly","parameters":[{"in":"path","name":"assemblyId","required":true,"schema":{"pattern":"^[a-z0-9]{32}$","type":"string","x-transloadit-path-format":"assembly-id"}}],"requestBody":{"content":{"multipart/form-data":{"encoding":{"params":{"contentType":"application/json"}},"schema":{"additionalProperties":{"anyOf":[{"type":"string"},{"format":"binary","type":"string"}]},"properties":{"num_expected_upload_files":{"$ref":"#/components/schemas/Schema_a8973c25bd6af940d3d33b4cf66cd5e99c7c3d30e99223ce51cc0fd830d9ee3d","description":"When using resumable uploads, it specifies the number of files that will be uploaded. More\ndetails are provided in\n[Resumable Uploads](https://transloadit.com/docs/api/resumable-uploads/)."},"params":{"$ref":"#/components/schemas/Schema_595e00b6483c79caf575ce838e4163db37acaa8302be457463b5f82fe3dd607f"},"signature":{"type":"string"},"tus_num_expected_upload_files":{"$ref":"#/components/schemas/Schema_a8973c25bd6af940d3d33b4cf66cd5e99c7c3d30e99223ce51cc0fd830d9ee3d","description":"Legacy alias for `num_expected_upload_files`, retained for compatibility with older SDKs."}},"required":["params"],"type":"object","x-transloadit-normalized-params":"#/components/schemas/Schema_4e62d6446b6f1588fecf8b9d2712fda800d91985ada2c079608909f01bf82f74"}}},"required":true},"responses":{"2XX":{"content":{"application/json":{"example":{"account_id":"6c8b8d10d68b11e3a799b579dfce333a","assembly_id":"0fce5b1063e611e88d8eb130f7921d8a","assembly_ssl_url":"https://api2-morven.transloadit.com/assemblies/0fce5b1063e611e88d8eb130f7921d8a","assembly_url":"http://api2.morven.transloadit.com/assemblies/0fce5b1063e611e88d8eb130f7921d8a","bytes_expected":1687,"bytes_received":1687,"bytes_usage":0,"companion_url":"https://api2-morven.transloadit.com/companion/","execution_duration":0.001,"execution_start":"2018/05/30 08:47:19 GMT","fields":{},"instance":"morven.transloadit.com","jobs_queue_duration":0,"message":"The Assembly is currently being executed.","ok":"ASSEMBLY_EXECUTING","parent_id":null,"queue_duration":0.04,"results":{},"start_date":"2018/05/30 08:47:19 GMT","template":null,"template_id":null,"tus_url":"https://api2-morven.transloadit.com/resumable/files/","update_stream_url":"https://api2-morven.transloadit.com/ws20243?assembly=0fce5b1063e611e88d8eb130f7921d8a","upload_duration":0.049,"uploads":[],"uppyserver_url":"https://api2-morven.transloadit.com/companion/","warnings":[],"websocket_url":"https://api2-morven.transloadit.com/ws20243"},"schema":{"$ref":"#/components/schemas/Schema_7def4758686ba84befe3cec9842c1f4ab2bcb40aeaa5a26a55c39b02734ba937"}},"text/plain; charset=utf-8":{"example":{"account_id":"6c8b8d10d68b11e3a799b579dfce333a","assembly_id":"0fce5b1063e611e88d8eb130f7921d8a","assembly_ssl_url":"https://api2-morven.transloadit.com/assemblies/0fce5b1063e611e88d8eb130f7921d8a","assembly_url":"http://api2.morven.transloadit.com/assemblies/0fce5b1063e611e88d8eb130f7921d8a","bytes_expected":1687,"bytes_received":1687,"bytes_usage":0,"companion_url":"https://api2-morven.transloadit.com/companion/","execution_duration":0.001,"execution_start":"2018/05/30 08:47:19 GMT","fields":{},"instance":"morven.transloadit.com","jobs_queue_duration":0,"message":"The Assembly is currently being executed.","ok":"ASSEMBLY_EXECUTING","parent_id":null,"queue_duration":0.04,"results":{},"start_date":"2018/05/30 08:47:19 GMT","template":null,"template_id":null,"tus_url":"https://api2-morven.transloadit.com/resumable/files/","update_stream_url":"https://api2-morven.transloadit.com/ws20243?assembly=0fce5b1063e611e88d8eb130f7921d8a","upload_duration":0.049,"uploads":[],"uppyserver_url":"https://api2-morven.transloadit.com/companion/","warnings":[],"websocket_url":"https://api2-morven.transloadit.com/ws20243"},"schema":{"$ref":"#/components/schemas/Schema_7def4758686ba84befe3cec9842c1f4ab2bcb40aeaa5a26a55c39b02734ba937"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_dfdbed416b837e5e35b90b747799d553c4a573fb8b22060592b895fb68ffde6a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_dfdbed416b837e5e35b90b747799d553c4a573fb8b22060592b895fb68ffde6a"}}},"description":"HTTP 400 response"},"4XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Client error response"},"5XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Server error response"}},"security":[{"BearerAuth":["assemblies:write"]}],"summary":"Create an Assembly with a supplied ID","x-transloadit-auth":{"bearerBypassesSignature":true,"kind":"api-key","scopes":["assemblies:write"],"signature":"conditional"},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode"}},"/assemblies/{assemblyId}/replay":{"post":{"description":"Starts a new Assembly from the inputs and Instructions of an earlier Assembly.","operationId":"api2.replay-assembly","parameters":[{"in":"path","name":"assemblyId","required":true,"schema":{"pattern":"^[a-z0-9]{32}$","type":"string","x-transloadit-path-format":"assembly-id"}}],"requestBody":{"content":{"application/x-www-form-urlencoded":{"encoding":{"params":{"contentType":"application/json"}},"schema":{"additionalProperties":false,"properties":{"params":{"$ref":"#/components/schemas/Schema_4d7b727780bbd440ac6badfb50448cd58150f2f5d15740a9a4bef70fb652dcb4"},"signature":{"type":"string"}},"required":["params"],"type":"object","x-transloadit-normalized-params":"#/components/schemas/Schema_a433d309f81e26af9c0fca8fd57913f2795e553cf098114cf41d088d28b07169"}}},"required":true},"responses":{"2XX":{"content":{"application/json":{"example":{"assembly_id":"7828446e5acd4aa996dce3455ec914e9","assembly_ssl_url":"https://api2-example.transloadit.com/assemblies/7828446e5acd4aa996dce3455ec914e9","assembly_url":"http://api2.example.transloadit.com/assemblies/7828446e5acd4aa996dce3455ec914e9","message":"The Assembly is now in the process of being replayed.","notify_url":null,"ok":"ASSEMBLY_REPLAYING","success":true},"schema":{"$ref":"#/components/schemas/Schema_4b27e8e5c04053c4d2292db8063a7f4a9d05de6216158fd80fa50e693bd5f42e"}},"text/plain; charset=utf-8":{"example":{"assembly_id":"7828446e5acd4aa996dce3455ec914e9","assembly_ssl_url":"https://api2-example.transloadit.com/assemblies/7828446e5acd4aa996dce3455ec914e9","assembly_url":"http://api2.example.transloadit.com/assemblies/7828446e5acd4aa996dce3455ec914e9","message":"The Assembly is now in the process of being replayed.","notify_url":null,"ok":"ASSEMBLY_REPLAYING","success":true},"schema":{"$ref":"#/components/schemas/Schema_4b27e8e5c04053c4d2292db8063a7f4a9d05de6216158fd80fa50e693bd5f42e"}}},"description":"Successful response"},"4XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Client error response"},"5XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Server error response"}},"security":[{"BearerAuth":["assemblies:write"]}],"summary":"Replay an Assembly","x-transloadit-auth":{"bearerBypassesSignature":true,"kind":"api-key","scopes":["assemblies:write"],"signature":"required"},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode"}},"/assembly_notifications/{assemblyId}":{"get":{"description":"Lists the original Assembly Notification and saved manual replay records.","operationId":"api2.list-assembly-notifications","parameters":[{"in":"path","name":"assemblyId","required":true,"schema":{"pattern":"^[a-z0-9]{32}$","type":"string","x-transloadit-path-format":"assembly-id"}}],"responses":{"2XX":{"content":{"application/json":{"example":{"notifications":[{"assembly_id":"0fce5b1063e611e88d8eb130f7921d8a","error":null,"response_code":204,"response_data":"","start":"2026-09-12T10:00:00.000Z","status":"successful","url":"https://example.com/webhooks/transloadit"}],"ok":"ASSEMBLY_NOTIFICATIONS_LISTED"},"schema":{"$ref":"#/components/schemas/Schema_e3642be86c6c6c6967f55f59b763b22260fa1558484203d73992c05a5282b969"}},"text/plain; charset=utf-8":{"example":{"notifications":[{"assembly_id":"0fce5b1063e611e88d8eb130f7921d8a","error":null,"response_code":204,"response_data":"","start":"2026-09-12T10:00:00.000Z","status":"successful","url":"https://example.com/webhooks/transloadit"}],"ok":"ASSEMBLY_NOTIFICATIONS_LISTED"},"schema":{"$ref":"#/components/schemas/Schema_e3642be86c6c6c6967f55f59b763b22260fa1558484203d73992c05a5282b969"}}},"description":"Successful response"},"4XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Client error response"},"5XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Server error response"}},"security":[],"summary":"Retrieve Assembly Notifications","x-transloadit-auth":{"kind":"none"},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode"}},"/assembly_notifications/{assemblyId}/replay":{"post":{"description":"Retries delivery of an Assembly notification.","operationId":"api2.replay-assembly-notification","parameters":[{"in":"path","name":"assemblyId","required":true,"schema":{"pattern":"^[a-z0-9]{32}$","type":"string","x-transloadit-path-format":"assembly-id"}}],"requestBody":{"content":{"application/x-www-form-urlencoded":{"encoding":{"params":{"contentType":"application/json"}},"schema":{"additionalProperties":false,"properties":{"params":{"$ref":"#/components/schemas/Schema_3e33221f16421f1f4228978b5b8853262dc916128e27203154e6d3a1169096b5"},"signature":{"type":"string"}},"required":["params"],"type":"object","x-transloadit-normalized-params":"#/components/schemas/Schema_5d113597e4390c8a8a103f3a41e796804dca48410d929c8a8bed6822cde5cabc"}}},"required":true},"responses":{"2XX":{"content":{"application/json":{"example":{"notification_id":"notification-id","ok":"ASSEMBLY_NOTIFICATION_REPLAYED","success":true},"schema":{"$ref":"#/components/schemas/Schema_45c14a42dace2876551f3bdac7234ce437dfaf923d33738883e23ebe63580202"}},"text/plain; charset=utf-8":{"example":{"notification_id":"notification-id","ok":"ASSEMBLY_NOTIFICATION_REPLAYED","success":true},"schema":{"$ref":"#/components/schemas/Schema_45c14a42dace2876551f3bdac7234ce437dfaf923d33738883e23ebe63580202"}}},"description":"Successful response"},"4XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Client error response"},"5XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Server error response"}},"security":[{"BearerAuth":["assemblies:write"]}],"summary":"Replay Assembly Notification","x-transloadit-auth":{"bearerBypassesSignature":true,"kind":"api-key","scopes":["assemblies:write"],"signature":"required"},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode"}},"/assembly_stats":{"get":{"description":"Returns Assembly counts for a requested region and time range.","operationId":"api2.assembly-stats","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_48b9e2855d4585557d32d100b33f2f085af0d442b1f9e3328bb7ca98aad1a9e8"}}},"in":"query","name":"params","required":true,"x-transloadit-normalized-params":"#/components/schemas/Schema_b1c43384500c1774cd05e2a61ec5c61e12cd7bcf2bf59b5d0cc415cb574bfa04"},{"in":"query","name":"signature","required":false,"schema":{"type":"string"}}],"responses":{"2XX":{"content":{"application/json":{"example":{"errorStats":[{"data_from_ts":1789200000,"error":"FILE_IMPORT_FAILED","num_erroneous_assemblies":1}],"errorStatsGranularity":60,"errorStatsTotals":[{"error":"FILE_IMPORT_FAILED","num_erroneous_assemblies":1}],"granularity":60,"ok":"ASSEMBLY_STATS_FOUND","stats":[{"avg_execution_duration":2,"avg_input_file_sizes":100000,"avg_live_queue_duration":0.5,"avg_output_file_sizes":90000,"avg_processing_speed":0.4,"avg_upload_duration":1,"avg_upload_speed":0.8,"data_from_ts":1789200000,"num_assemblies":10,"num_bytes":1000000,"num_cancelled_assemblies":0,"num_erroneous_assemblies":1,"num_files":10,"num_request_aborted_assemblies":0,"num_successful_assemblies":9,"total_bytes_usage":1000000,"total_execution_duration":20,"total_live_queue_duration":5,"total_num_output_files":9,"total_num_uploaded_bytes":1000000,"total_output_file_sizes":900000,"total_upload_duration":10}],"totalAssemblies":10,"totalBytesProcessed":1000000,"totalBytesUploaded":1000000,"totalExecutionDuration":20,"totalFilesProcessed":10,"totalLiveQueueDuration":5,"totalOutputBytesProcessed":900000,"totalOutputFilesProcessed":9,"totalUploadDuration":10,"totalUsage":1000000},"schema":{"$ref":"#/components/schemas/Schema_2e0216fc013b9ddd584a8964b204b07d49397aa09b301bd88ae070dd53aaf242"}},"text/plain; charset=utf-8":{"example":{"errorStats":[{"data_from_ts":1789200000,"error":"FILE_IMPORT_FAILED","num_erroneous_assemblies":1}],"errorStatsGranularity":60,"errorStatsTotals":[{"error":"FILE_IMPORT_FAILED","num_erroneous_assemblies":1}],"granularity":60,"ok":"ASSEMBLY_STATS_FOUND","stats":[{"avg_execution_duration":2,"avg_input_file_sizes":100000,"avg_live_queue_duration":0.5,"avg_output_file_sizes":90000,"avg_processing_speed":0.4,"avg_upload_duration":1,"avg_upload_speed":0.8,"data_from_ts":1789200000,"num_assemblies":10,"num_bytes":1000000,"num_cancelled_assemblies":0,"num_erroneous_assemblies":1,"num_files":10,"num_request_aborted_assemblies":0,"num_successful_assemblies":9,"total_bytes_usage":1000000,"total_execution_duration":20,"total_live_queue_duration":5,"total_num_output_files":9,"total_num_uploaded_bytes":1000000,"total_output_file_sizes":900000,"total_upload_duration":10}],"totalAssemblies":10,"totalBytesProcessed":1000000,"totalBytesUploaded":1000000,"totalExecutionDuration":20,"totalFilesProcessed":10,"totalLiveQueueDuration":5,"totalOutputBytesProcessed":900000,"totalOutputFilesProcessed":9,"totalUploadDuration":10,"totalUsage":1000000},"schema":{"$ref":"#/components/schemas/Schema_2e0216fc013b9ddd584a8964b204b07d49397aa09b301bd88ae070dd53aaf242"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_12ebcd671256f01c78c2d44d3f886f8e31c2c321e4963a533c8f13e8fde79a2c"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_12ebcd671256f01c78c2d44d3f886f8e31c2c321e4963a533c8f13e8fde79a2c"}}},"description":"HTTP 400 response"},"4XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Client error response"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_9e6cbcbaa4b94736822983983a33d21b68b5dc374cb5a1d5c778cc9477a9fa5e"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_9e6cbcbaa4b94736822983983a33d21b68b5dc374cb5a1d5c778cc9477a9fa5e"}}},"description":"HTTP 500 response"},"5XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Server error response"}},"security":[{"BearerAuth":["assemblies:read"]}],"summary":"Retrieve Assembly statistics","x-transloadit-auth":{"bearerBypassesSignature":true,"kind":"api-key","scopes":["assemblies:read"],"signature":"required"},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode"}},"/auth_keys":{"get":{"description":"Lists the Auth Keys for the authenticated Workspace.","operationId":"api2.list-auth-keys","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_146734fd4a4c0227ab54a103609c97015ab510a50c0ec4eb47ec5b9d0f69f9cc"}}},"in":"query","name":"params","required":false,"x-transloadit-normalized-params":"#/components/schemas/Schema_1e8b1786bbc51354e572d21412b76290b2a7beedbdf23cad24b20c05b60fffc6"},{"in":"query","name":"signature","required":false,"schema":{"type":"string"}}],"responses":{"2XX":{"content":{"application/json":{"example":{"auth_keys":[{"auth_key":"example_auth_key","can_show_auth_secret":false,"created":"2026-09-12T10:00:00.000Z","description":"Backend Assembly integration","id":"ca7644b763c848e6af4f4ccf3eaea622","is_active":true,"is_allowed_for_smartcdn":false,"last_used":null,"modified":"2026-09-12T10:00:00.000Z","scope":"assemblies:read,assemblies:write","signature_algo":"sha384"}],"message":"Your auth keys were successfully found.","ok":"AUTH_KEYS_FOUND"},"schema":{"$ref":"#/components/schemas/Schema_6da3fb8f5d27dd56b80ee238180a201d96ab10810c2d1ef105b0e143ae7a4396"}},"text/plain; charset=utf-8":{"example":{"auth_keys":[{"auth_key":"example_auth_key","can_show_auth_secret":false,"created":"2026-09-12T10:00:00.000Z","description":"Backend Assembly integration","id":"ca7644b763c848e6af4f4ccf3eaea622","is_active":true,"is_allowed_for_smartcdn":false,"last_used":null,"modified":"2026-09-12T10:00:00.000Z","scope":"assemblies:read,assemblies:write","signature_algo":"sha384"}],"message":"Your auth keys were successfully found.","ok":"AUTH_KEYS_FOUND"},"schema":{"$ref":"#/components/schemas/Schema_6da3fb8f5d27dd56b80ee238180a201d96ab10810c2d1ef105b0e143ae7a4396"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_39ecfe30b7e7a6d240546aa94aca97ffa888ca37d561abb870b0b6ecd718b535"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_39ecfe30b7e7a6d240546aa94aca97ffa888ca37d561abb870b0b6ecd718b535"}}},"description":"HTTP 400 response"},"4XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Client error response"},"5XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Server error response"}},"security":[{"BearerAuth":["auth_keys:read"]}],"summary":"Retrieve list of Auth Keys","x-transloadit-auth":{"allowCancelledWorkspaces":true,"bearerBypassesSignature":true,"kind":"api-key","scopes":["auth_keys:read"],"signature":"required"},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode"},"post":{"description":"Creates a scoped Auth Key for the authenticated Workspace.","operationId":"api2.create-auth-key","requestBody":{"content":{"application/x-www-form-urlencoded":{"encoding":{"params":{"contentType":"application/json"}},"schema":{"additionalProperties":false,"properties":{"params":{"$ref":"#/components/schemas/Schema_b62f335230de45049d7f8c872c603400d9c3390e829ea06b146da44f2d1905d6"},"signature":{"type":"string"}},"required":["params"],"type":"object","x-transloadit-normalized-params":"#/components/schemas/Schema_80795bd6bd67bc4193d2c8da6172ae289b3b2c5c002c64e6a90a1a3c20bdd346"}}},"required":true},"responses":{"2XX":{"content":{"application/json":{"example":{"auth_key":{"auth_key":"example_auth_key","auth_secret":"example_secret_store_securely","can_show_auth_secret":false,"created":"2026-09-12T10:00:00.000Z","description":"Backend Assembly integration","id":"ca7644b763c848e6af4f4ccf3eaea622","is_active":true,"is_allowed_for_smartcdn":false,"last_used":null,"modified":"2026-09-12T10:00:00.000Z","scope":"assemblies:read,assemblies:write","signature_algo":"sha384"},"message":"Your auth key was successfully created.","ok":"AUTH_KEY_CREATED"},"schema":{"$ref":"#/components/schemas/Schema_6de12f9aed4f7f419d1359c0ac48531ebb48381d76dc819ef2b9a40e6c3b6369"}},"text/plain; charset=utf-8":{"example":{"auth_key":{"auth_key":"example_auth_key","auth_secret":"example_secret_store_securely","can_show_auth_secret":false,"created":"2026-09-12T10:00:00.000Z","description":"Backend Assembly integration","id":"ca7644b763c848e6af4f4ccf3eaea622","is_active":true,"is_allowed_for_smartcdn":false,"last_used":null,"modified":"2026-09-12T10:00:00.000Z","scope":"assemblies:read,assemblies:write","signature_algo":"sha384"},"message":"Your auth key was successfully created.","ok":"AUTH_KEY_CREATED"},"schema":{"$ref":"#/components/schemas/Schema_6de12f9aed4f7f419d1359c0ac48531ebb48381d76dc819ef2b9a40e6c3b6369"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_4cf32fac596c7c30ed22baa75d22beefa4ca3014f90c8c6798b68b186be3fd43"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_4cf32fac596c7c30ed22baa75d22beefa4ca3014f90c8c6798b68b186be3fd43"}}},"description":"HTTP 400 response"},"4XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Client error response"},"5XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Server error response"}},"security":[{"BearerAuth":["auth_keys:write"]}],"summary":"Create a new Auth Key","x-transloadit-auth":{"bearerBypassesSignature":true,"kind":"api-key","scopes":["auth_keys:write"],"signature":"required"},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode"}},"/auth_keys/scopes":{"get":{"description":"Lists the scopes that can be assigned to an Auth Key.","operationId":"api2.list-auth-key-scopes","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_146734fd4a4c0227ab54a103609c97015ab510a50c0ec4eb47ec5b9d0f69f9cc"}}},"in":"query","name":"params","required":false,"x-transloadit-normalized-params":"#/components/schemas/Schema_1e8b1786bbc51354e572d21412b76290b2a7beedbdf23cad24b20c05b60fffc6"},{"in":"query","name":"signature","required":false,"schema":{"type":"string"}}],"responses":{"2XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_fc7b6ea6cf1d3286b9bc1ba170e65f4eaeff8fb23e8e4fc88229947f67d30575"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_fc7b6ea6cf1d3286b9bc1ba170e65f4eaeff8fb23e8e4fc88229947f67d30575"}}},"description":"Successful response"},"4XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Client error response"},"5XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Server error response"}},"security":[{"BearerAuth":[]}],"summary":"Retrieve Auth Key scopes","x-transloadit-auth":{"allowCancelledWorkspaces":true,"bearerBypassesSignature":true,"kind":"api-key","scopes":[],"signature":"required"},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode"}},"/auth_keys/show_secret/{authKeyId}":{"post":{"description":"Returns the secret for a selected Auth Key.","operationId":"api2.show-auth-key-secret","parameters":[{"in":"path","name":"authKeyId","required":true,"schema":{"maxLength":32,"minLength":32,"pattern":"^[0-9a-f]{32}$","type":"string","x-transloadit-path-format":"lowercase-hex-32"}}],"requestBody":{"content":{"application/x-www-form-urlencoded":{"encoding":{"params":{"contentType":"application/json"}},"schema":{"additionalProperties":false,"properties":{"params":{"$ref":"#/components/schemas/Schema_146734fd4a4c0227ab54a103609c97015ab510a50c0ec4eb47ec5b9d0f69f9cc"},"signature":{"type":"string"}},"required":["params"],"type":"object","x-transloadit-normalized-params":"#/components/schemas/Schema_1e8b1786bbc51354e572d21412b76290b2a7beedbdf23cad24b20c05b60fffc6"}}},"required":true},"responses":{"2XX":{"content":{"application/json":{"example":{"auth_key":"example_auth_key","auth_secret":"example_secret_store_securely","message":"Your auth secret could be retrieved.","ok":"AUTH_SECRET_RETRIEVED"},"schema":{"$ref":"#/components/schemas/Schema_2c423647ef0f2f61cdae1199299b13ea0acb807f56b659e985b9270d3b8e2131"}},"text/plain; charset=utf-8":{"example":{"auth_key":"example_auth_key","auth_secret":"example_secret_store_securely","message":"Your auth secret could be retrieved.","ok":"AUTH_SECRET_RETRIEVED"},"schema":{"$ref":"#/components/schemas/Schema_2c423647ef0f2f61cdae1199299b13ea0acb807f56b659e985b9270d3b8e2131"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_ea7271b4a0525afc748a31b31ca4019a0b7fbee0f36fdf612984fa476b86d023"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_ea7271b4a0525afc748a31b31ca4019a0b7fbee0f36fdf612984fa476b86d023"}}},"description":"HTTP 400 response"},"4XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Client error response"},"5XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Server error response"}},"security":[{"BearerAuth":["auth_keys:read"]}],"summary":"Retrieve an Auth Key secret","x-transloadit-auth":{"bearerBypassesSignature":true,"kind":"api-key","scopes":["auth_keys:read"],"signature":"required"},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode"}},"/auth_keys/{authKeyId}":{"delete":{"description":"Deletes an Auth Key by its stable ID.","operationId":"api2.delete-auth-key","parameters":[{"in":"path","name":"authKeyId","required":true,"schema":{"maxLength":32,"minLength":32,"pattern":"^[0-9a-f]{32}$","type":"string","x-transloadit-path-format":"lowercase-hex-32"}}],"requestBody":{"content":{"application/x-www-form-urlencoded":{"encoding":{"params":{"contentType":"application/json"}},"schema":{"additionalProperties":false,"properties":{"params":{"$ref":"#/components/schemas/Schema_146734fd4a4c0227ab54a103609c97015ab510a50c0ec4eb47ec5b9d0f69f9cc"},"signature":{"type":"string"}},"required":["params"],"type":"object","x-transloadit-normalized-params":"#/components/schemas/Schema_1e8b1786bbc51354e572d21412b76290b2a7beedbdf23cad24b20c05b60fffc6"}}},"required":true},"responses":{"2XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_5fcc25a95bdd44695843249e31fe50ad080491e44a146346b64463b656defd54"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_5fcc25a95bdd44695843249e31fe50ad080491e44a146346b64463b656defd54"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_12a062eedcf9f188786a68eccbbe800b338c95e63a1596e5de35cbf14e12dde4"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_12a062eedcf9f188786a68eccbbe800b338c95e63a1596e5de35cbf14e12dde4"}}},"description":"HTTP 400 response"},"4XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Client error response"},"5XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Server error response"}},"security":[{"BearerAuth":["auth_keys:write"]}],"summary":"Delete an Auth Key","x-transloadit-auth":{"bearerBypassesSignature":true,"kind":"api-key","scopes":["auth_keys:write"],"signature":"required"},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode"},"put":{"description":"Updates the description, scopes, or enabled state of an Auth Key.","operationId":"api2.update-auth-key","parameters":[{"in":"path","name":"authKeyId","required":true,"schema":{"maxLength":32,"minLength":32,"pattern":"^[0-9a-f]{32}$","type":"string","x-transloadit-path-format":"lowercase-hex-32"}}],"requestBody":{"content":{"application/x-www-form-urlencoded":{"encoding":{"params":{"contentType":"application/json"}},"schema":{"additionalProperties":false,"properties":{"params":{"$ref":"#/components/schemas/Schema_33e05c219c5be36f5a4bbab5ae6d939b282e30c60d4b7be0ff52e0d01a50bdc4"},"signature":{"type":"string"}},"required":["params"],"type":"object","x-transloadit-normalized-params":"#/components/schemas/Schema_5e2549762be307b1046da493dc434f600e439b3460bb013fab20c2b5e04b953d"}}},"required":true},"responses":{"2XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_25031df86c9f90b79f3e4586592aeb1b10f4a964e4f7dc08ed88b5241225eb69"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_25031df86c9f90b79f3e4586592aeb1b10f4a964e4f7dc08ed88b5241225eb69"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_4530547e51cb1582b0e51815bba399955e6ca9806c68cbf1742c071a16ff0d9e"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_4530547e51cb1582b0e51815bba399955e6ca9806c68cbf1742c071a16ff0d9e"}}},"description":"HTTP 400 response"},"4XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Client error response"},"5XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Server error response"}},"security":[{"BearerAuth":["auth_keys:write"]}],"summary":"Edit an Auth Key","x-transloadit-auth":{"bearerBypassesSignature":true,"kind":"api-key","scopes":["auth_keys:write"],"signature":"required"},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode"}},"/bill/{billYearMonth}":{"get":{"description":"Returns billing details for a selected month.","operationId":"api2.get-bill","parameters":[{"in":"path","name":"billYearMonth","required":true,"schema":{"pattern":"^[0-9]{4}-(?:0[1-9]|1[0-2])$","type":"string","x-transloadit-path-format":"year-month"}},{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_29f7c9a77315ab00512f8f2e19c7860c092ec6442ad4516ee9035d111f1a3f48"}}},"in":"query","name":"params","required":false,"x-transloadit-normalized-params":"#/components/schemas/Schema_746f9be9d20864978e8adbc308556e9d52fe0b9a421c976a76d8079a26fb7d32"},{"in":"query","name":"signature","required":false,"schema":{"type":"string"}}],"responses":{"2XX":{"content":{"application/json":{"example":{"additional_gb":0,"additional_gb_fee":0,"address_1":"Jimbostreet 19","address_2":"","bill_limit":0,"city":"Berlin","company":"Jimbo Jones GmbH","country":"Germany","created":"2014-07-01T06:58:32.000Z","credit":0,"email":"testuser@example.org","invoice_id":"0d04b65924da41d4b68c80f776d196d5","is_prorated":false,"month":"2014-06","ok":"BILL_FOUND","plan":{"gb_included":35,"gb_limit":null,"has_lifetime_limit":false,"id":"3599821193a1f77baafb98e5f8fb17a6","price_per_gb":2.85,"price_per_month":99},"reverse_charge_vat":false,"reward_discount":1.98,"reward_discount_percent":2,"robots":{"/assemblies":{"factor":0,"freeGb":0,"gb":0,"gbFactorApplied":0,"rawGb":0},"/s3/store":{"factor":10,"freeGb":0.57,"gb":0.6,"gbFactorApplied":1.17,"rawGb":11.75},"/video/encode":{"factor":1,"freeGb":0,"gb":21.05,"gbFactorApplied":21.05,"rawGb":21.05},"/video/thumbs":{"factor":10,"freeGb":0,"gb":0.34,"gbFactorApplied":0.34,"rawGb":3.42}},"signup_discount":0,"signup_discount_percent":0,"state":null,"sub_total":99,"to":"Test User","total":115.45,"used_gb":21.99,"vat":18.43,"vat_id":"","vat_rate":0.19,"zip":"10117"},"schema":{"$ref":"#/components/schemas/Schema_a6d783a32061a00331d38b029a83933e29f4362644da01b15aee18c3de5ec710"}},"text/plain; charset=utf-8":{"example":{"additional_gb":0,"additional_gb_fee":0,"address_1":"Jimbostreet 19","address_2":"","bill_limit":0,"city":"Berlin","company":"Jimbo Jones GmbH","country":"Germany","created":"2014-07-01T06:58:32.000Z","credit":0,"email":"testuser@example.org","invoice_id":"0d04b65924da41d4b68c80f776d196d5","is_prorated":false,"month":"2014-06","ok":"BILL_FOUND","plan":{"gb_included":35,"gb_limit":null,"has_lifetime_limit":false,"id":"3599821193a1f77baafb98e5f8fb17a6","price_per_gb":2.85,"price_per_month":99},"reverse_charge_vat":false,"reward_discount":1.98,"reward_discount_percent":2,"robots":{"/assemblies":{"factor":0,"freeGb":0,"gb":0,"gbFactorApplied":0,"rawGb":0},"/s3/store":{"factor":10,"freeGb":0.57,"gb":0.6,"gbFactorApplied":1.17,"rawGb":11.75},"/video/encode":{"factor":1,"freeGb":0,"gb":21.05,"gbFactorApplied":21.05,"rawGb":21.05},"/video/thumbs":{"factor":10,"freeGb":0,"gb":0.34,"gbFactorApplied":0.34,"rawGb":3.42}},"signup_discount":0,"signup_discount_percent":0,"state":null,"sub_total":99,"to":"Test User","total":115.45,"used_gb":21.99,"vat":18.43,"vat_id":"","vat_rate":0.19,"zip":"10117"},"schema":{"$ref":"#/components/schemas/Schema_a6d783a32061a00331d38b029a83933e29f4362644da01b15aee18c3de5ec710"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_39ecfe30b7e7a6d240546aa94aca97ffa888ca37d561abb870b0b6ecd718b535"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_39ecfe30b7e7a6d240546aa94aca97ffa888ca37d561abb870b0b6ecd718b535"}}},"description":"HTTP 400 response"},"4XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Client error response"},"5XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Server error response"}},"security":[{"BearerAuth":["billing:read"]}],"summary":"Retrieve a month’s bill","x-transloadit-auth":{"allowCancelledWorkspaces":true,"bearerBypassesSignature":true,"kind":"api-key","scopes":["billing:read"],"signature":"required"},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode"}},"/dam/assets":{"get":{"description":"Lists bounded pages of Workspace assets with stable identities and current version metadata.","operationId":"api2.list-dam-assets","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_53beca5e62a1eebdfb1a706f8822f907e8b3c0aa0cc032c54f82d2545aae5630"}}},"in":"query","name":"params","required":false,"x-transloadit-normalized-params":"#/components/schemas/Schema_def4ab246696c47e7c29e6ab90960f2ebdc8b3d54ae517eee43af3f570f4a57f"},{"in":"query","name":"signature","required":false,"schema":{"type":"string"}}],"responses":{"2XX":{"content":{"application/json":{"example":{"assets":[{"asset_id":"AAAAAAAAAAAAAAAAAAAAAA","height":600,"mime":"image/jpeg","path":"renamed.jpg","size":12345,"version_id":"AAAAAAAAAAAAAAAAAAAAAQ","width":800,"workspace":"example-workspace"}],"message":"The Storage assets were successfully listed.","next_cursor":null,"ok":"DAM_ASSETS_LISTED","workspace":"example-workspace"},"schema":{"$ref":"#/components/schemas/Schema_8c987e88773d0f9f6d0093c337387d3211a2386c2e1c01403b1c26dc95f28c2a"}},"text/plain; charset=utf-8":{"example":{"assets":[{"asset_id":"AAAAAAAAAAAAAAAAAAAAAA","height":600,"mime":"image/jpeg","path":"renamed.jpg","size":12345,"version_id":"AAAAAAAAAAAAAAAAAAAAAQ","width":800,"workspace":"example-workspace"}],"message":"The Storage assets were successfully listed.","next_cursor":null,"ok":"DAM_ASSETS_LISTED","workspace":"example-workspace"},"schema":{"$ref":"#/components/schemas/Schema_8c987e88773d0f9f6d0093c337387d3211a2386c2e1c01403b1c26dc95f28c2a"}}},"description":"Successful response"},"4XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Client error response"},"5XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Server error response"}},"security":[{"BearerAuth":["dam:read"]},{"BearerAuth":["dam:write"]}],"summary":"List Storage assets","x-transloadit-auth":{"bearerBypassesSignature":true,"kind":"api-key","scopes":["dam:read","dam:write"],"signature":"required"},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode"}},"/dam/assets/bulk/delete":{"post":{"description":"Deletes several DAM assets in one atomic operation.\n\nThis endpoint is in alpha. Its URL, parameters, responses, and behavior may change substantially and break existing integrations.","operationId":"api2.bulk-delete-dam-assets","requestBody":{"content":{"application/x-www-form-urlencoded":{"encoding":{"params":{"contentType":"application/json"}},"schema":{"additionalProperties":false,"properties":{"params":{"$ref":"#/components/schemas/Schema_931c3d3fa0183a1ad90aa5e4dfb4cde8fd2e6fb6f48f16de37fbaf754b6bf430"},"signature":{"type":"string"}},"required":["params"],"type":"object","x-transloadit-normalized-params":"#/components/schemas/Schema_3f211b7388d433ec23d436cf6a312e34c5d264de2102f047aca416cdd143cc09"}}},"required":true},"responses":{"2XX":{"content":{"application/json":{"example":{"assets":[{"asset_id":"AAAAAAAAAAAAAAAAAAAAAA","deleted_at":"2026-09-12T10:00:00.000Z"},{"asset_id":"AAAAAAAAAAAAAAAAAAAAAQ","deleted_at":"2026-09-12T10:00:00.000Z"}],"message":"The DAM assets were successfully deleted.","ok":"DAM_ASSETS_DELETED"},"schema":{"$ref":"#/components/schemas/Schema_0144982ec4603cb590f811306ccc61b4adab1982c8d2428e72f553f5b6b29e60"}},"text/plain; charset=utf-8":{"example":{"assets":[{"asset_id":"AAAAAAAAAAAAAAAAAAAAAA","deleted_at":"2026-09-12T10:00:00.000Z"},{"asset_id":"AAAAAAAAAAAAAAAAAAAAAQ","deleted_at":"2026-09-12T10:00:00.000Z"}],"message":"The DAM assets were successfully deleted.","ok":"DAM_ASSETS_DELETED"},"schema":{"$ref":"#/components/schemas/Schema_0144982ec4603cb590f811306ccc61b4adab1982c8d2428e72f553f5b6b29e60"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_37ea2a1c3f0c82352d27fd067bde8757f1ec9a2be88635c84872ddbb0fbb4cba"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_37ea2a1c3f0c82352d27fd067bde8757f1ec9a2be88635c84872ddbb0fbb4cba"}}},"description":"HTTP 400 response"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_9a564b45babfab238f659d4b00dce08c3beff7bec4004a2b3e88d3d04dc499c4"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_9a564b45babfab238f659d4b00dce08c3beff7bec4004a2b3e88d3d04dc499c4"}}},"description":"HTTP 404 response"},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_a742cc0d1951a03f84d05d6e8333f208b82c4a8a18f977adbc62aa0e8a1cc30b"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_a742cc0d1951a03f84d05d6e8333f208b82c4a8a18f977adbc62aa0e8a1cc30b"}}},"description":"HTTP 409 response"},"4XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Client error response"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_8b7fe97abf49a0f1ab09b376d08f18200d03ada9e3307144dd075611afe5c6d7"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_8b7fe97abf49a0f1ab09b376d08f18200d03ada9e3307144dd075611afe5c6d7"}}},"description":"HTTP 500 response"},"5XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Server error response"}},"security":[{"BearerAuth":["dam:write"]}],"summary":"Delete DAM assets in bulk","x-transloadit-auth":{"bearerBypassesSignature":true,"kind":"api-key","scopes":["dam:write"],"signature":"required"},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode","x-transloadit-stage":"alpha"}},"/dam/assets/bulk/move":{"post":{"description":"Moves several DAM assets into one folder atomically.\n\nThis endpoint is in alpha. Its URL, parameters, responses, and behavior may change substantially and break existing integrations.","operationId":"api2.bulk-move-dam-assets","requestBody":{"content":{"application/x-www-form-urlencoded":{"encoding":{"params":{"contentType":"application/json"}},"schema":{"additionalProperties":false,"properties":{"params":{"$ref":"#/components/schemas/Schema_374a04102d318032e8f38cde1211d3593166608d83a09abc89c3c862a78f8a34"},"signature":{"type":"string"}},"required":["params"],"type":"object","x-transloadit-normalized-params":"#/components/schemas/Schema_b019f1a21f6e67971385b79a80b27dc74bace871419a217f78f51bd940b22d00"}}},"required":true},"responses":{"2XX":{"content":{"application/json":{"example":{"assets":[{"asset":{"asset_id":"AAAAAAAAAAAAAAAAAAAAAA","height":600,"mime":"image/jpeg","path":"renamed.jpg","size":12345,"version_id":"AAAAAAAAAAAAAAAAAAAAAQ","width":800,"workspace":"example-workspace"},"asset_id":"AAAAAAAAAAAAAAAAAAAAAA","deleted_at":null,"filename":"renamed.jpg","folder_id":null,"path":"renamed.jpg","updated_at":"2026-09-12T10:00:00.000Z"},{"asset":{"asset_id":"AAAAAAAAAAAAAAAAAAAAAQ","height":600,"mime":"image/jpeg","path":"second.jpg","size":12345,"version_id":"AAAAAAAAAAAAAAAAAAAAAQ","width":800,"workspace":"example-workspace"},"asset_id":"AAAAAAAAAAAAAAAAAAAAAQ","deleted_at":null,"filename":"second.jpg","folder_id":null,"path":"second.jpg","updated_at":"2026-09-12T10:00:00.000Z"}],"message":"The DAM assets were successfully moved.","ok":"DAM_ASSETS_MOVED"},"schema":{"$ref":"#/components/schemas/Schema_cdc51173ac516e6666b0b0e742c892d850b3f12d187fba2a0a5489667514639e"}},"text/plain; charset=utf-8":{"example":{"assets":[{"asset":{"asset_id":"AAAAAAAAAAAAAAAAAAAAAA","height":600,"mime":"image/jpeg","path":"renamed.jpg","size":12345,"version_id":"AAAAAAAAAAAAAAAAAAAAAQ","width":800,"workspace":"example-workspace"},"asset_id":"AAAAAAAAAAAAAAAAAAAAAA","deleted_at":null,"filename":"renamed.jpg","folder_id":null,"path":"renamed.jpg","updated_at":"2026-09-12T10:00:00.000Z"},{"asset":{"asset_id":"AAAAAAAAAAAAAAAAAAAAAQ","height":600,"mime":"image/jpeg","path":"second.jpg","size":12345,"version_id":"AAAAAAAAAAAAAAAAAAAAAQ","width":800,"workspace":"example-workspace"},"asset_id":"AAAAAAAAAAAAAAAAAAAAAQ","deleted_at":null,"filename":"second.jpg","folder_id":null,"path":"second.jpg","updated_at":"2026-09-12T10:00:00.000Z"}],"message":"The DAM assets were successfully moved.","ok":"DAM_ASSETS_MOVED"},"schema":{"$ref":"#/components/schemas/Schema_cdc51173ac516e6666b0b0e742c892d850b3f12d187fba2a0a5489667514639e"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_37ea2a1c3f0c82352d27fd067bde8757f1ec9a2be88635c84872ddbb0fbb4cba"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_37ea2a1c3f0c82352d27fd067bde8757f1ec9a2be88635c84872ddbb0fbb4cba"}}},"description":"HTTP 400 response"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_9a564b45babfab238f659d4b00dce08c3beff7bec4004a2b3e88d3d04dc499c4"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_9a564b45babfab238f659d4b00dce08c3beff7bec4004a2b3e88d3d04dc499c4"}}},"description":"HTTP 404 response"},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_a742cc0d1951a03f84d05d6e8333f208b82c4a8a18f977adbc62aa0e8a1cc30b"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_a742cc0d1951a03f84d05d6e8333f208b82c4a8a18f977adbc62aa0e8a1cc30b"}}},"description":"HTTP 409 response"},"4XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Client error response"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_8b7fe97abf49a0f1ab09b376d08f18200d03ada9e3307144dd075611afe5c6d7"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_8b7fe97abf49a0f1ab09b376d08f18200d03ada9e3307144dd075611afe5c6d7"}}},"description":"HTTP 500 response"},"5XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Server error response"}},"security":[{"BearerAuth":["dam:write"]}],"summary":"Move DAM assets in bulk","x-transloadit-auth":{"bearerBypassesSignature":true,"kind":"api-key","scopes":["dam:write"],"signature":"required"},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode","x-transloadit-stage":"alpha"}},"/dam/assets/{assetId}":{"delete":{"description":"Idempotently deletes a DAM asset from the Workspace library.\n\nThis endpoint is in alpha. Its URL, parameters, responses, and behavior may change substantially and break existing integrations.","operationId":"api2.delete-dam-asset","parameters":[{"in":"path","name":"assetId","required":true,"schema":{"maxLength":22,"minLength":22,"pattern":"^[A-Za-z0-9_-]{21}[AQgw]$","type":"string","x-transloadit-path-format":"dam-id"}}],"requestBody":{"content":{"application/x-www-form-urlencoded":{"encoding":{"params":{"contentType":"application/json"}},"schema":{"additionalProperties":false,"properties":{"params":{"$ref":"#/components/schemas/Schema_d548e8bb728f4595f7a0a92a813ce2d52b5c74cf68dc1c0cc98cd54dc37b90ff"},"signature":{"type":"string"}},"required":["params"],"type":"object","x-transloadit-normalized-params":"#/components/schemas/Schema_3d273dce7ec364dfcf8d49b59ffe8e8cae867238aa0463659924eb58e13317f1"}}},"required":true},"responses":{"2XX":{"content":{"application/json":{"example":{"asset_id":"AAAAAAAAAAAAAAAAAAAAAA","deleted_at":"2026-09-12T10:00:00.000Z","message":"The DAM asset was successfully deleted.","ok":"DAM_ASSET_DELETED"},"schema":{"$ref":"#/components/schemas/Schema_4f394a53613aec509099e13fb8b3936a55c804f705a83948f03818a3f17c379e"}},"text/plain; charset=utf-8":{"example":{"asset_id":"AAAAAAAAAAAAAAAAAAAAAA","deleted_at":"2026-09-12T10:00:00.000Z","message":"The DAM asset was successfully deleted.","ok":"DAM_ASSET_DELETED"},"schema":{"$ref":"#/components/schemas/Schema_4f394a53613aec509099e13fb8b3936a55c804f705a83948f03818a3f17c379e"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_37ea2a1c3f0c82352d27fd067bde8757f1ec9a2be88635c84872ddbb0fbb4cba"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_37ea2a1c3f0c82352d27fd067bde8757f1ec9a2be88635c84872ddbb0fbb4cba"}}},"description":"HTTP 400 response"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_9a564b45babfab238f659d4b00dce08c3beff7bec4004a2b3e88d3d04dc499c4"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_9a564b45babfab238f659d4b00dce08c3beff7bec4004a2b3e88d3d04dc499c4"}}},"description":"HTTP 404 response"},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_a742cc0d1951a03f84d05d6e8333f208b82c4a8a18f977adbc62aa0e8a1cc30b"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_a742cc0d1951a03f84d05d6e8333f208b82c4a8a18f977adbc62aa0e8a1cc30b"}}},"description":"HTTP 409 response"},"4XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Client error response"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_8b7fe97abf49a0f1ab09b376d08f18200d03ada9e3307144dd075611afe5c6d7"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_8b7fe97abf49a0f1ab09b376d08f18200d03ada9e3307144dd075611afe5c6d7"}}},"description":"HTTP 500 response"},"5XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Server error response"}},"security":[{"BearerAuth":["dam:write"]}],"summary":"Delete a DAM asset","x-transloadit-auth":{"bearerBypassesSignature":true,"kind":"api-key","scopes":["dam:write"],"signature":"required"},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode","x-transloadit-stage":"alpha"},"get":{"description":"Returns the current or explicitly retained version of a Workspace asset by stable identity.","operationId":"api2.get-dam-asset","parameters":[{"in":"path","name":"assetId","required":true,"schema":{"maxLength":22,"minLength":22,"pattern":"^[A-Za-z0-9_-]{21}[AQgw]$","type":"string","x-transloadit-path-format":"dam-id"}},{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a6cca1167ec53cf32aad9895761a59074b1e55553d5736c48cfea8d85a21f60"}}},"in":"query","name":"params","required":false,"x-transloadit-normalized-params":"#/components/schemas/Schema_666f02f54d466f201c9f10df8f8aecf760c439dae8ab1c419da2b73ac98ccf02"},{"in":"query","name":"signature","required":false,"schema":{"type":"string"}}],"responses":{"2XX":{"content":{"application/json":{"example":{"asset":{"asset_id":"AAAAAAAAAAAAAAAAAAAAAA","height":600,"mime":"image/jpeg","path":"renamed.jpg","size":12345,"version_id":"AAAAAAAAAAAAAAAAAAAAAQ","width":800,"workspace":"example-workspace"},"message":"The Storage asset was successfully found.","ok":"DAM_ASSET_FOUND"},"schema":{"$ref":"#/components/schemas/Schema_f04b6ce02541c0ac92aeb3b7b21b28cbab103013fc77eb84d09cdc64af3424c0"}},"text/plain; charset=utf-8":{"example":{"asset":{"asset_id":"AAAAAAAAAAAAAAAAAAAAAA","height":600,"mime":"image/jpeg","path":"renamed.jpg","size":12345,"version_id":"AAAAAAAAAAAAAAAAAAAAAQ","width":800,"workspace":"example-workspace"},"message":"The Storage asset was successfully found.","ok":"DAM_ASSET_FOUND"},"schema":{"$ref":"#/components/schemas/Schema_f04b6ce02541c0ac92aeb3b7b21b28cbab103013fc77eb84d09cdc64af3424c0"}}},"description":"Successful response"},"4XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Client error response"},"5XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Server error response"}},"security":[{"BearerAuth":["dam:read"]},{"BearerAuth":["dam:write"]}],"summary":"Retrieve a Storage asset","x-transloadit-auth":{"bearerBypassesSignature":true,"kind":"api-key","scopes":["dam:read","dam:write"],"signature":"required"},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode"},"patch":{"description":"Moves or renames a DAM asset without changing its stored object.\n\nThis endpoint is in alpha. Its URL, parameters, responses, and behavior may change substantially and break existing integrations.","operationId":"api2.move-dam-asset","parameters":[{"in":"path","name":"assetId","required":true,"schema":{"maxLength":22,"minLength":22,"pattern":"^[A-Za-z0-9_-]{21}[AQgw]$","type":"string","x-transloadit-path-format":"dam-id"}}],"requestBody":{"content":{"application/x-www-form-urlencoded":{"encoding":{"params":{"contentType":"application/json"}},"schema":{"additionalProperties":false,"properties":{"params":{"$ref":"#/components/schemas/Schema_6113602e9035ce2ed70abf9c197297cd76cdb648319bbdf9509f7e47bad34bdb"},"signature":{"type":"string"}},"required":["params"],"type":"object","x-transloadit-normalized-params":"#/components/schemas/Schema_3fa9307b01fcd52445e335843753d5341a12394171a9c5430ecaef4662224f7f"}}},"required":true},"responses":{"2XX":{"content":{"application/json":{"example":{"asset":{"asset_id":"AAAAAAAAAAAAAAAAAAAAAA","height":600,"mime":"image/jpeg","path":"renamed.jpg","size":12345,"version_id":"AAAAAAAAAAAAAAAAAAAAAQ","width":800,"workspace":"example-workspace"},"asset_id":"AAAAAAAAAAAAAAAAAAAAAA","deleted_at":null,"filename":"renamed.jpg","folder_id":null,"message":"The DAM asset was successfully moved.","ok":"DAM_ASSET_MOVED","path":"renamed.jpg","updated_at":"2026-09-12T10:00:00.000Z"},"schema":{"$ref":"#/components/schemas/Schema_0e29a201ae789e2bba4c4fa44bb1e8f7b7e882c7ee813dbbda87d9a784f07105"}},"text/plain; charset=utf-8":{"example":{"asset":{"asset_id":"AAAAAAAAAAAAAAAAAAAAAA","height":600,"mime":"image/jpeg","path":"renamed.jpg","size":12345,"version_id":"AAAAAAAAAAAAAAAAAAAAAQ","width":800,"workspace":"example-workspace"},"asset_id":"AAAAAAAAAAAAAAAAAAAAAA","deleted_at":null,"filename":"renamed.jpg","folder_id":null,"message":"The DAM asset was successfully moved.","ok":"DAM_ASSET_MOVED","path":"renamed.jpg","updated_at":"2026-09-12T10:00:00.000Z"},"schema":{"$ref":"#/components/schemas/Schema_0e29a201ae789e2bba4c4fa44bb1e8f7b7e882c7ee813dbbda87d9a784f07105"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_37ea2a1c3f0c82352d27fd067bde8757f1ec9a2be88635c84872ddbb0fbb4cba"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_37ea2a1c3f0c82352d27fd067bde8757f1ec9a2be88635c84872ddbb0fbb4cba"}}},"description":"HTTP 400 response"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_9a564b45babfab238f659d4b00dce08c3beff7bec4004a2b3e88d3d04dc499c4"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_9a564b45babfab238f659d4b00dce08c3beff7bec4004a2b3e88d3d04dc499c4"}}},"description":"HTTP 404 response"},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_a742cc0d1951a03f84d05d6e8333f208b82c4a8a18f977adbc62aa0e8a1cc30b"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_a742cc0d1951a03f84d05d6e8333f208b82c4a8a18f977adbc62aa0e8a1cc30b"}}},"description":"HTTP 409 response"},"4XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Client error response"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_8b7fe97abf49a0f1ab09b376d08f18200d03ada9e3307144dd075611afe5c6d7"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_8b7fe97abf49a0f1ab09b376d08f18200d03ada9e3307144dd075611afe5c6d7"}}},"description":"HTTP 500 response"},"5XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Server error response"}},"security":[{"BearerAuth":["dam:write"]}],"summary":"Move or rename a DAM asset","x-transloadit-auth":{"bearerBypassesSignature":true,"kind":"api-key","scopes":["dam:write"],"signature":"required"},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode","x-transloadit-stage":"alpha"}},"/dam/entries/move":{"post":{"description":"Moves a file or folder by path without changing retained asset or version identities.\n\nThis endpoint is in alpha. Its URL, parameters, responses, and behavior may change substantially and break existing integrations.","operationId":"api2.move-dam-entry","requestBody":{"content":{"application/x-www-form-urlencoded":{"encoding":{"params":{"contentType":"application/json"}},"schema":{"additionalProperties":false,"properties":{"params":{"$ref":"#/components/schemas/Schema_486cc443f063bae96742c4a1a0d3c186dbbde61087f657f5caf78ad6fb4d80ed"},"signature":{"type":"string"}},"required":["params"],"type":"object","x-transloadit-normalized-params":"#/components/schemas/Schema_fe143b5ec0cab88d44dce4a7bd0b626d5f8af5e117bb9caf6d463f23619e01e7"}}},"required":true},"responses":{"2XX":{"content":{"application/json":{"example":{"message":"The Storage file or folder was successfully moved.","ok":"DAM_ENTRY_MOVED","path":"photos/new.jpg"},"schema":{"$ref":"#/components/schemas/Schema_9b86f9302aa0a4c52f7a64bcdae9a755b8e4199db9c3272c5552aaf0026fcd93"}},"text/plain; charset=utf-8":{"example":{"message":"The Storage file or folder was successfully moved.","ok":"DAM_ENTRY_MOVED","path":"photos/new.jpg"},"schema":{"$ref":"#/components/schemas/Schema_9b86f9302aa0a4c52f7a64bcdae9a755b8e4199db9c3272c5552aaf0026fcd93"}}},"description":"Successful response"},"4XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Client error response"},"5XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Server error response"}},"security":[{"BearerAuth":["dam:write"]}],"summary":"Move a Storage file or folder","x-transloadit-auth":{"bearerBypassesSignature":true,"kind":"api-key","scopes":["dam:write"],"signature":"required"},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode","x-transloadit-stage":"alpha"}},"/priority_job_slot_stats":{"get":{"description":"Returns priority job slot statistics for a requested region and time range.","operationId":"api2.priority-job-slot-stats","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_491a627f0e857de61ccd9cab2f9cf97d04cdf7396b11748e89d3bd956ddf5af4"}}},"in":"query","name":"params","required":true,"x-transloadit-normalized-params":"#/components/schemas/Schema_f702affc3ceae4884617c5487aa1c1eca162192a129d26ced057f7e9521e13c5"},{"in":"query","name":"signature","required":false,"schema":{"type":"string"}}],"responses":{"2XX":{"content":{"application/json":{"example":{"aggregation":"avg","avgSlotCount":2,"granularity":300,"maxSlotCount":4,"ok":"PRIORITY_JOB_SLOT_STATS_FOUND","stats":[{"avg_slot_count":2,"data_from_ts":1789200000,"max_slot_count":4,"slot_count":2}]},"schema":{"$ref":"#/components/schemas/Schema_e00de4aa91ee10180d711a182f6a9b4c2f7b0915a7b99dcbca7a03584ccb6b73"}},"text/plain; charset=utf-8":{"example":{"aggregation":"avg","avgSlotCount":2,"granularity":300,"maxSlotCount":4,"ok":"PRIORITY_JOB_SLOT_STATS_FOUND","stats":[{"avg_slot_count":2,"data_from_ts":1789200000,"max_slot_count":4,"slot_count":2}]},"schema":{"$ref":"#/components/schemas/Schema_e00de4aa91ee10180d711a182f6a9b4c2f7b0915a7b99dcbca7a03584ccb6b73"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_2e92fa302416aa8e9248c786e77c870e4a6a4be6e499e30785e6e8ea12e8e5f1"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_2e92fa302416aa8e9248c786e77c870e4a6a4be6e499e30785e6e8ea12e8e5f1"}}},"description":"HTTP 400 response"},"4XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Client error response"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_f58bdcadc487b872f0c49761f43f99387ab2a557659891196b305093fbbe0d52"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_f58bdcadc487b872f0c49761f43f99387ab2a557659891196b305093fbbe0d52"}}},"description":"HTTP 500 response"},"5XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Server error response"}},"security":[{"BearerAuth":["queues:read"]}],"summary":"Retrieve priority job slot statistics","x-transloadit-auth":{"bearerBypassesSignature":true,"kind":"api-key","scopes":["queues:read"],"signature":"required"},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode"}},"/queues/job_slots":{"get":{"description":"Returns current priority job slot usage for the authenticated Workspace.","operationId":"api2.list-priority-job-slots","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_d9d4828fc01a896c5eabc2f73631169e8483a105a5d3565cbb2b57a490bb0316"}}},"in":"query","name":"params","required":false,"x-transloadit-normalized-params":"#/components/schemas/Schema_39339c540a27c4098b3e0f484700df44755ed6ba3680bbebbbcd88d327596220"},{"in":"query","name":"signature","required":false,"schema":{"type":"string"}}],"responses":{"2XX":{"content":{"application/json":{"example":{"message":"Your priority job slots were successfully found.","ok":"PRIORITY_JOB_SLOTS_FOUND","priority_job_slots":{"count":300,"slots":{"assembly-id-1":{"step_name1":{"job-id-1":60,"job-id-2":10,"job-id-3":30},"step_name2":{"job-id-4":60,"job-id-5":10,"job-id-6":30}},"assembly-id-2":{"step_name1":{"job-id-7":60},"step_name2":{"job-id-8":10,"job-id-9":30}}}}},"schema":{"$ref":"#/components/schemas/Schema_39863e43d23dd5d5fa6c9be76beb2a39c53510e09f788f84b3d41fb558406cae"}},"text/plain; charset=utf-8":{"example":{"message":"Your priority job slots were successfully found.","ok":"PRIORITY_JOB_SLOTS_FOUND","priority_job_slots":{"count":300,"slots":{"assembly-id-1":{"step_name1":{"job-id-1":60,"job-id-2":10,"job-id-3":30},"step_name2":{"job-id-4":60,"job-id-5":10,"job-id-6":30}},"assembly-id-2":{"step_name1":{"job-id-7":60},"step_name2":{"job-id-8":10,"job-id-9":30}}}}},"schema":{"$ref":"#/components/schemas/Schema_39863e43d23dd5d5fa6c9be76beb2a39c53510e09f788f84b3d41fb558406cae"}}},"description":"Successful response"},"4XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Client error response"},"5XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Server error response"}},"security":[{"BearerAuth":["queues:read"]}],"summary":"Retrieve currently used priority job slots","x-transloadit-auth":{"bearerBypassesSignature":true,"kind":"api-key","scopes":["queues:read"],"signature":"required"},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode"}},"/resumable/files":{"options":{"description":"Returns the tus protocol versions and extensions supported by the upload endpoint.","operationId":"tusd.options","responses":{"200":{"description":"HTTP 200 response","headers":{"tus-extension":{"required":true,"schema":{"const":"creation,creation-with-upload,termination,concatenation,creation-defer-length","type":"string"}},"tus-max-size":{"description":"A canonical unsigned base-10 byte count in the signed 64-bit range, without zero padding or a plus sign.","required":true,"schema":{"description":"A canonical unsigned base-10 byte count in the signed 64-bit range, without zero padding or a plus sign.","pattern":"^(?:0|[1-9][0-9]{0,17}|[1-8][0-9]{18}|9[0-1][0-9]{17}|92[0-1][0-9]{16}|922[0-2][0-9]{15}|9223[0-2][0-9]{14}|92233[0-6][0-9]{13}|922337[0-1][0-9]{12}|92233720[0-2][0-9]{10}|922337203[0-5][0-9]{9}|9223372036[0-7][0-9]{8}|92233720368[0-4][0-9]{7}|922337203685[0-3][0-9]{6}|9223372036854[0-6][0-9]{5}|92233720368547[0-6][0-9]{4}|922337203685477[0-4][0-9]{3}|9223372036854775[0-7][0-9]{2}|922337203685477580[0-6]|9223372036854775807)$","type":"string","x-transloadit-description-id":"tusCanonicalByteCount"}},"tus-resumable":{"required":true,"schema":{"const":"1.0.0","type":"string"}},"tus-version":{"required":true,"schema":{"const":"1.0.0","type":"string"}},"x-content-type-options":{"required":true,"schema":{"const":"nosniff","type":"string"}}},"x-transloadit-response-headers":"#/components/schemas/Schema_283526d231caa2a4d3f9adb8c45165a6860fca14025781fc0453f5ee4ef15f06"}},"security":[],"servers":[{"description":"Non-routable sentinel. Replace this origin only with the validated capability destination described by x-transloadit-destination.","url":"https://capability.invalid"}],"summary":"Discover tus capabilities","tags":["TUS Upload Protocol"],"x-transloadit-auth":{"kind":"none"},"x-transloadit-destination":{"kind":"tus-collection","source":{"field":"tus_url","kind":"validated-assembly-response","pairedField":"assembly_ssl_url"}},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode","x-transloadit-request-headers":"#/components/schemas/Schema_ebf76aa695739c793db45f6468d410233c496f5e4a54a4f7a425f5eec96f24c4","x-transloadit-tus-capability":"resumable-upload"},"post":{"description":"Creates a resumable upload resource from validated Assembly metadata.","operationId":"tusd.create-upload","parameters":[{"description":"The negotiated tus version.","in":"header","name":"tus-resumable","required":true,"schema":{"const":"1.0.0","description":"The negotiated tus version.","type":"string","x-transloadit-description-id":"tusVersion"}},{"in":"header","name":"upload-concat","required":false,"schema":{"anyOf":[{"const":"partial","type":"string"},{"maxLength":8192,"pattern":"^final;(?:https?:\\/\\/[^/\\x09-\\x0D\\x20\\xA0                　﻿]+)?\\/resumable\\/files\\/[^/\\x09-\\x0D\\x20\\xA0                　﻿]+(?:\\/[^/\\x09-\\x0D\\x20\\xA0                　﻿]+)*(?: (?:https?:\\/\\/[^/\\x09-\\x0D\\x20\\xA0                　﻿]+)?\\/resumable\\/files\\/[^/\\x09-\\x0D\\x20\\xA0                　﻿]+(?:\\/[^/\\x09-\\x0D\\x20\\xA0                　﻿]+)*)*$","type":"string"}]}},{"in":"header","name":"upload-defer-length","required":false,"schema":{"anyOf":[{"not":{}},{"const":"1","type":"string"}]}},{"description":"A canonical unsigned base-10 byte count in the signed 64-bit range, without zero padding or a plus sign.","in":"header","name":"upload-length","required":false,"schema":{"anyOf":[{"description":"A canonical unsigned base-10 byte count in the signed 64-bit range, without zero padding or a plus sign.","pattern":"^(?:0|[1-9][0-9]{0,17}|[1-8][0-9]{18}|9[0-1][0-9]{17}|92[0-1][0-9]{16}|922[0-2][0-9]{15}|9223[0-2][0-9]{14}|92233[0-6][0-9]{13}|922337[0-1][0-9]{12}|92233720[0-2][0-9]{10}|922337203[0-5][0-9]{9}|9223372036[0-7][0-9]{8}|92233720368[0-4][0-9]{7}|922337203685[0-3][0-9]{6}|9223372036854[0-6][0-9]{5}|92233720368547[0-6][0-9]{4}|922337203685477[0-4][0-9]{3}|9223372036854775[0-7][0-9]{2}|922337203685477580[0-6]|9223372036854775807)$","type":"string","x-transloadit-description-id":"tusCanonicalByteCount"},{"not":{}}]}},{"in":"header","name":"upload-metadata","required":true,"schema":{"$ref":"#/components/schemas/Schema_4628123852e2795740f3b1ddb1d557911a010ad427c6a85c4bb8b54491692385"}}],"requestBody":{"content":{"application/offset+octet-stream":{"schema":{"format":"binary","type":"string"}}},"required":false},"responses":{"201":{"description":"HTTP 201 response","headers":{"location":{"description":"The new upload resource URL. Clients must validate it as a returned capability.","required":true,"schema":{"description":"The new upload resource URL. Clients must validate it as a returned capability.","minLength":1,"type":"string","x-transloadit-description-id":"tusUploadLocation"}},"tus-resumable":{"required":true,"schema":{"const":"1.0.0","type":"string"}},"upload-offset":{"description":"A canonical unsigned base-10 byte count in the signed 64-bit range, without zero padding or a plus sign.","required":false,"schema":{"description":"A canonical unsigned base-10 byte count in the signed 64-bit range, without zero padding or a plus sign.","pattern":"^(?:0|[1-9][0-9]{0,17}|[1-8][0-9]{18}|9[0-1][0-9]{17}|92[0-1][0-9]{16}|922[0-2][0-9]{15}|9223[0-2][0-9]{14}|92233[0-6][0-9]{13}|922337[0-1][0-9]{12}|92233720[0-2][0-9]{10}|922337203[0-5][0-9]{9}|9223372036[0-7][0-9]{8}|92233720368[0-4][0-9]{7}|922337203685[0-3][0-9]{6}|9223372036854[0-6][0-9]{5}|92233720368547[0-6][0-9]{4}|922337203685477[0-4][0-9]{3}|9223372036854775[0-7][0-9]{2}|922337203685477580[0-6]|9223372036854775807)$","type":"string","x-transloadit-description-id":"tusCanonicalByteCount"}},"x-content-type-options":{"required":true,"schema":{"const":"nosniff","type":"string"}}},"x-transloadit-response-headers":"#/components/schemas/Schema_eaeeea929c7f276489855b08e125ab29a4d8b228609f8a6700f5015f813f3650"},"4XX":{"content":{"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_b860c1fcc87a06d67e6e95954b593681bc40014eb7078ba2c613f253eb6b2361"}}},"description":"Client error response","headers":{"tus-resumable":{"required":true,"schema":{"const":"1.0.0","type":"string"}},"x-content-type-options":{"required":true,"schema":{"const":"nosniff","type":"string"}}},"x-transloadit-response-headers":"#/components/schemas/Schema_7f25b58051081b331737944f9aae037f25dab15cb3961edbac57144acce9ae59"},"5XX":{"content":{"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_b860c1fcc87a06d67e6e95954b593681bc40014eb7078ba2c613f253eb6b2361"}}},"description":"Server error response","headers":{"tus-resumable":{"required":true,"schema":{"const":"1.0.0","type":"string"}},"x-content-type-options":{"required":true,"schema":{"const":"nosniff","type":"string"}}},"x-transloadit-response-headers":"#/components/schemas/Schema_7f25b58051081b331737944f9aae037f25dab15cb3961edbac57144acce9ae59"}},"security":[],"servers":[{"description":"Non-routable sentinel. Replace this origin only with the validated capability destination described by x-transloadit-destination.","url":"https://capability.invalid"}],"summary":"Create a tus upload","tags":["TUS Upload Protocol"],"x-transloadit-auth":{"encoding":"base64","headerName":"Upload-Metadata","kind":"tus-assembly-metadata","metadataName":"assembly_url","source":{"field":"assembly_ssl_url","kind":"validated-assembly-response"}},"x-transloadit-destination":{"kind":"tus-collection","source":{"field":"tus_url","kind":"validated-assembly-response","pairedField":"assembly_ssl_url"}},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode","x-transloadit-request-headers":"#/components/schemas/Schema_771bb5eb20c0ddd29660dc234a014a68c5d7c9f2816829adad5f377746d540fc","x-transloadit-tus-capability":"resumable-upload"}},"/resumable/files/{uploadId}":{"delete":{"description":"Terminates an unfinished resumable upload and releases its stored data. Completed uploads cannot be terminated; the server returns HTTP 400.","operationId":"tusd.delete-upload","parameters":[{"in":"path","name":"uploadId","required":true,"schema":{"minLength":1,"pattern":"^[^/]+$","type":"string","x-transloadit-path-format":"nonempty"},"x-transloadit-percent-decode":true},{"description":"The negotiated tus version.","in":"header","name":"tus-resumable","required":true,"schema":{"const":"1.0.0","description":"The negotiated tus version.","type":"string","x-transloadit-description-id":"tusVersion"}}],"responses":{"204":{"description":"HTTP 204 response","headers":{"tus-resumable":{"required":true,"schema":{"const":"1.0.0","type":"string"}},"x-content-type-options":{"required":true,"schema":{"const":"nosniff","type":"string"}}},"x-transloadit-response-headers":"#/components/schemas/Schema_d8e6f0037cd2b11aa73db84679cf3299be749b6953de57e36082d5b7d6d7ab74"},"4XX":{"content":{"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_b860c1fcc87a06d67e6e95954b593681bc40014eb7078ba2c613f253eb6b2361"}}},"description":"Client error response","headers":{"tus-resumable":{"required":true,"schema":{"const":"1.0.0","type":"string"}},"x-content-type-options":{"required":true,"schema":{"const":"nosniff","type":"string"}}},"x-transloadit-response-headers":"#/components/schemas/Schema_7f25b58051081b331737944f9aae037f25dab15cb3961edbac57144acce9ae59"},"5XX":{"content":{"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_b860c1fcc87a06d67e6e95954b593681bc40014eb7078ba2c613f253eb6b2361"}}},"description":"Server error response","headers":{"tus-resumable":{"required":true,"schema":{"const":"1.0.0","type":"string"}},"x-content-type-options":{"required":true,"schema":{"const":"nosniff","type":"string"}}},"x-transloadit-response-headers":"#/components/schemas/Schema_7f25b58051081b331737944f9aae037f25dab15cb3961edbac57144acce9ae59"}},"security":[],"servers":[{"description":"Non-routable sentinel. Replace this origin only with the validated capability destination described by x-transloadit-destination.","url":"https://capability.invalid"}],"summary":"Terminate a tus upload","tags":["TUS Upload Protocol"],"x-transloadit-auth":{"kind":"tus-upload-resource","source":{"kind":"validated-location"}},"x-transloadit-destination":{"kind":"tus-upload-resource","source":{"header":"location","kind":"validated-response","operationId":"tusd.create-upload","status":201}},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode","x-transloadit-request-headers":"#/components/schemas/Schema_7f097566eced15d91383f4594e6347c83bc019f301d60d1f97200b0c1bbf9f01","x-transloadit-tus-capability":"resumable-upload"},"get":{"description":"Downloads bytes from a resumable upload, including supported range responses.","operationId":"tusd.download-upload","parameters":[{"in":"path","name":"uploadId","required":true,"schema":{"minLength":1,"pattern":"^[^/]+$","type":"string","x-transloadit-path-format":"nonempty"},"x-transloadit-percent-decode":true},{"description":"An entity tag or wildcard that the upload must match.","in":"header","name":"if-match","required":false,"schema":{"description":"An entity tag or wildcard that the upload must match.","maxLength":8192,"minLength":1,"type":"string","x-transloadit-description-id":"tusIfMatch"}},{"description":"An HTTP date after which a modified upload is returned.","in":"header","name":"if-modified-since","required":false,"schema":{"description":"An HTTP date after which a modified upload is returned.","maxLength":8192,"minLength":1,"type":"string","x-transloadit-description-id":"tusIfModifiedSince"}},{"description":"An entity tag or wildcard that the upload must not match.","in":"header","name":"if-none-match","required":false,"schema":{"description":"An entity tag or wildcard that the upload must not match.","maxLength":8192,"minLength":1,"type":"string","x-transloadit-description-id":"tusIfNoneMatch"}},{"description":"An entity tag or HTTP date that makes a byte range conditional.","in":"header","name":"if-range","required":false,"schema":{"description":"An entity tag or HTTP date that makes a byte range conditional.","maxLength":8192,"minLength":1,"type":"string","x-transloadit-description-id":"tusIfRange"}},{"description":"An HTTP date after which a modified upload fails the precondition.","in":"header","name":"if-unmodified-since","required":false,"schema":{"description":"An HTTP date after which a modified upload fails the precondition.","maxLength":8192,"minLength":1,"type":"string","x-transloadit-description-id":"tusIfUnmodifiedSince"}},{"description":"One or more canonical byte ranges.","in":"header","name":"range","required":false,"schema":{"description":"One or more canonical byte ranges.","maxLength":8192,"pattern":"^bytes=(?:[0-9]+-[0-9]*|-[0-9]+)(?:,(?:[0-9]+-[0-9]*|-[0-9]+))*$","type":"string","x-transloadit-description-id":"tusByteRanges"}},{"description":"The negotiated tus version when the client supplies it.","in":"header","name":"tus-resumable","required":false,"schema":{"const":"1.0.0","description":"The negotiated tus version when the client supplies it.","type":"string","x-transloadit-description-id":"tusVersionOptional"}}],"responses":{"200":{"content":{"*/*":{"schema":{"format":"binary","type":"string"}}},"description":"HTTP 200 response","headers":{"accept-ranges":{"required":true,"schema":{"const":"bytes","type":"string"}},"content-disposition":{"required":true,"schema":{"minLength":1,"type":"string"}},"content-length":{"description":"A canonical unsigned base-10 byte count in the signed 64-bit range, without zero padding or a plus sign.","required":true,"schema":{"description":"A canonical unsigned base-10 byte count in the signed 64-bit range, without zero padding or a plus sign.","pattern":"^(?:0|[1-9][0-9]{0,17}|[1-8][0-9]{18}|9[0-1][0-9]{17}|92[0-1][0-9]{16}|922[0-2][0-9]{15}|9223[0-2][0-9]{14}|92233[0-6][0-9]{13}|922337[0-1][0-9]{12}|92233720[0-2][0-9]{10}|922337203[0-5][0-9]{9}|9223372036[0-7][0-9]{8}|92233720368[0-4][0-9]{7}|922337203685[0-3][0-9]{6}|9223372036854[0-6][0-9]{5}|92233720368547[0-6][0-9]{4}|922337203685477[0-4][0-9]{3}|9223372036854775[0-7][0-9]{2}|922337203685477580[0-6]|9223372036854775807)$","type":"string","x-transloadit-description-id":"tusCanonicalByteCount"}},"last-modified":{"required":true,"schema":{"minLength":1,"type":"string"}},"tus-resumable":{"required":true,"schema":{"const":"1.0.0","type":"string"}},"x-content-type-options":{"required":true,"schema":{"const":"nosniff","type":"string"}}},"x-transloadit-dynamic-media-type":true,"x-transloadit-response-headers":"#/components/schemas/Schema_7fb91907bbf2388744de3246f974a20fbb2af44487c059a0da70d58ed9774170"},"206":{"content":{"*/*":{"schema":{"format":"binary","type":"string"}}},"description":"HTTP 206 response","headers":{"accept-ranges":{"required":true,"schema":{"const":"bytes","type":"string"}},"content-disposition":{"required":true,"schema":{"minLength":1,"type":"string"}},"content-length":{"required":true,"schema":{"$ref":"#/components/schemas/Schema_b54f48fb2e4d0bf53206494c64de3ea8f644cbce7badf257a3b4b3e543b55c87"}},"content-range":{"description":"The inclusive returned byte range and current stored size, not the declared final upload length.","required":false,"schema":{"anyOf":[{"description":"The inclusive returned byte range and current stored size, not the declared final upload length.","pattern":"^bytes [0-9]+-[0-9]+\\/[0-9]+$","type":"string","x-transloadit-description-id":"tusContentRange"},{"not":{}}]}},"last-modified":{"required":true,"schema":{"minLength":1,"type":"string"}},"tus-resumable":{"required":true,"schema":{"const":"1.0.0","type":"string"}},"x-content-type-options":{"required":true,"schema":{"const":"nosniff","type":"string"}}},"x-transloadit-dynamic-media-type":true,"x-transloadit-response-headers":"#/components/schemas/Schema_890804d234d612ea9886169f8a823d94ff84c70cb7d3497c939d7c64c840c852"},"304":{"description":"HTTP 304 response","headers":{"content-disposition":{"required":true,"schema":{"minLength":1,"type":"string"}},"last-modified":{"required":true,"schema":{"minLength":1,"type":"string"}},"tus-resumable":{"required":true,"schema":{"const":"1.0.0","type":"string"}},"x-content-type-options":{"required":true,"schema":{"const":"nosniff","type":"string"}}},"x-transloadit-response-headers":"#/components/schemas/Schema_65d2319f0e4dd864a88a2861f4117fec3134ec793823ae46f1c2092f90e5e50e"},"412":{"description":"HTTP 412 response","headers":{"content-disposition":{"required":true,"schema":{"minLength":1,"type":"string"}},"last-modified":{"required":true,"schema":{"minLength":1,"type":"string"}},"tus-resumable":{"required":true,"schema":{"const":"1.0.0","type":"string"}},"x-content-type-options":{"required":true,"schema":{"const":"nosniff","type":"string"}}},"x-transloadit-response-headers":"#/components/schemas/Schema_9c510c8b82d350f15a96c981172e9e157a9d62193e3ddf9a410bf1f489b03a64"},"416":{"content":{"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_e59fe39c7b0268eb1544627f9f6f9fb7c6a62d9601e11f01c229d5aecd6d2069"}}},"description":"HTTP 416 response","headers":{"content-disposition":{"required":true,"schema":{"minLength":1,"type":"string"}},"content-range":{"description":"The current stored size for an unsatisfied byte range, not the declared final upload length.","required":false,"schema":{"anyOf":[{"description":"The current stored size for an unsatisfied byte range, not the declared final upload length.","pattern":"^bytes [*]\\/[0-9]+$","type":"string","x-transloadit-description-id":"tusUnsatisfiedContentRange"},{"not":{}}]}},"tus-resumable":{"required":true,"schema":{"const":"1.0.0","type":"string"}},"x-content-type-options":{"required":true,"schema":{"const":"nosniff","type":"string"}}},"x-transloadit-response-headers":"#/components/schemas/Schema_bae6deacf5c14f06cc120d232bd643d6ce773dd88c625a786bc95755afaff7a8"},"4XX":{"content":{"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_b860c1fcc87a06d67e6e95954b593681bc40014eb7078ba2c613f253eb6b2361"}}},"description":"Client error response","headers":{"tus-resumable":{"required":true,"schema":{"const":"1.0.0","type":"string"}},"x-content-type-options":{"required":true,"schema":{"const":"nosniff","type":"string"}}},"x-transloadit-response-headers":"#/components/schemas/Schema_7f25b58051081b331737944f9aae037f25dab15cb3961edbac57144acce9ae59"},"5XX":{"content":{"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_b860c1fcc87a06d67e6e95954b593681bc40014eb7078ba2c613f253eb6b2361"}}},"description":"Server error response","headers":{"tus-resumable":{"required":true,"schema":{"const":"1.0.0","type":"string"}},"x-content-type-options":{"required":true,"schema":{"const":"nosniff","type":"string"}}},"x-transloadit-response-headers":"#/components/schemas/Schema_7f25b58051081b331737944f9aae037f25dab15cb3961edbac57144acce9ae59"}},"security":[],"servers":[{"description":"Non-routable sentinel. Replace this origin only with the validated capability destination described by x-transloadit-destination.","url":"https://capability.invalid"}],"summary":"Download a tus upload","tags":["TUS Upload Protocol"],"x-transloadit-auth":{"kind":"tus-upload-resource","source":{"kind":"validated-location"}},"x-transloadit-destination":{"kind":"tus-upload-resource","source":{"header":"location","kind":"validated-response","operationId":"tusd.create-upload","status":201}},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode","x-transloadit-request-headers":"#/components/schemas/Schema_725dd98f63e82a0c440264fe7b6dbfd1f038ec5934b2fcfbeedee8aaeced022f","x-transloadit-tus-capability":"resumable-upload"},"head":{"description":"Returns the current byte offset and metadata for a resumable upload.","operationId":"tusd.get-upload-offset","parameters":[{"in":"path","name":"uploadId","required":true,"schema":{"minLength":1,"pattern":"^[^/]+$","type":"string","x-transloadit-path-format":"nonempty"},"x-transloadit-percent-decode":true},{"description":"The negotiated tus version.","in":"header","name":"tus-resumable","required":true,"schema":{"const":"1.0.0","description":"The negotiated tus version.","type":"string","x-transloadit-description-id":"tusVersion"}}],"responses":{"200":{"description":"HTTP 200 response","headers":{"cache-control":{"required":true,"schema":{"const":"no-store","type":"string"}},"content-length":{"required":false,"schema":{"anyOf":[{"$ref":"#/components/schemas/Schema_b54f48fb2e4d0bf53206494c64de3ea8f644cbce7badf257a3b4b3e543b55c87"},{"not":{}}]}},"tus-resumable":{"required":true,"schema":{"const":"1.0.0","type":"string"}},"upload-concat":{"required":false,"schema":{"$ref":"#/components/schemas/Schema_e8ee92bc15ed8461f1105f4905d570b69c97b11ab8856df69fcce70debe33a94"}},"upload-defer-length":{"required":false,"schema":{"anyOf":[{"not":{}},{"const":"1","type":"string"}]}},"upload-length":{"required":false,"schema":{"anyOf":[{"$ref":"#/components/schemas/Schema_b54f48fb2e4d0bf53206494c64de3ea8f644cbce7badf257a3b4b3e543b55c87"},{"not":{}}]}},"upload-metadata":{"required":false,"schema":{"$ref":"#/components/schemas/Schema_05bfded8bff85d456673951be6fccc1bc4f149589a64fb7d239467051b736eee"}},"upload-offset":{"required":true,"schema":{"$ref":"#/components/schemas/Schema_b54f48fb2e4d0bf53206494c64de3ea8f644cbce7badf257a3b4b3e543b55c87"}},"x-content-type-options":{"required":true,"schema":{"const":"nosniff","type":"string"}}},"x-transloadit-response-headers":"#/components/schemas/Schema_b5ef7605301d603a3ab8fb61bd98035e4122ba7cd615748f1a4530a0c260931a"},"4XX":{"description":"Client error response","headers":{"tus-resumable":{"required":true,"schema":{"const":"1.0.0","type":"string"}},"x-content-type-options":{"required":true,"schema":{"const":"nosniff","type":"string"}}},"x-transloadit-response-headers":"#/components/schemas/Schema_7f25b58051081b331737944f9aae037f25dab15cb3961edbac57144acce9ae59"},"5XX":{"description":"Server error response","headers":{"tus-resumable":{"required":true,"schema":{"const":"1.0.0","type":"string"}},"x-content-type-options":{"required":true,"schema":{"const":"nosniff","type":"string"}}},"x-transloadit-response-headers":"#/components/schemas/Schema_7f25b58051081b331737944f9aae037f25dab15cb3961edbac57144acce9ae59"}},"security":[],"servers":[{"description":"Non-routable sentinel. Replace this origin only with the validated capability destination described by x-transloadit-destination.","url":"https://capability.invalid"}],"summary":"Retrieve a tus upload offset","tags":["TUS Upload Protocol"],"x-transloadit-auth":{"kind":"tus-upload-resource","source":{"kind":"validated-location"}},"x-transloadit-destination":{"kind":"tus-upload-resource","source":{"header":"location","kind":"validated-response","operationId":"tusd.create-upload","status":201}},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode","x-transloadit-request-headers":"#/components/schemas/Schema_1edc8e081cc6cbe0dbb12b6a2cdd89633f84d90d3db25afbcc459d44163462cb","x-transloadit-tus-capability":"resumable-upload"},"patch":{"description":"Appends raw file bytes at the declared offset of a resumable upload.","operationId":"tusd.patch-upload","parameters":[{"in":"path","name":"uploadId","required":true,"schema":{"minLength":1,"pattern":"^[^/]+$","type":"string","x-transloadit-path-format":"nonempty"},"x-transloadit-percent-decode":true},{"description":"The negotiated tus version.","in":"header","name":"tus-resumable","required":true,"schema":{"const":"1.0.0","description":"The negotiated tus version.","type":"string","x-transloadit-description-id":"tusVersion"}},{"in":"header","name":"upload-length","required":false,"schema":{"$ref":"#/components/schemas/Schema_b54f48fb2e4d0bf53206494c64de3ea8f644cbce7badf257a3b4b3e543b55c87"}},{"in":"header","name":"upload-offset","required":true,"schema":{"$ref":"#/components/schemas/Schema_b54f48fb2e4d0bf53206494c64de3ea8f644cbce7badf257a3b4b3e543b55c87"}}],"requestBody":{"content":{"application/offset+octet-stream":{"schema":{"format":"binary","type":"string"}}},"required":true},"responses":{"204":{"description":"HTTP 204 response","headers":{"tus-resumable":{"required":true,"schema":{"const":"1.0.0","type":"string"}},"upload-offset":{"description":"A canonical unsigned base-10 byte count in the signed 64-bit range, without zero padding or a plus sign.","required":true,"schema":{"description":"A canonical unsigned base-10 byte count in the signed 64-bit range, without zero padding or a plus sign.","pattern":"^(?:0|[1-9][0-9]{0,17}|[1-8][0-9]{18}|9[0-1][0-9]{17}|92[0-1][0-9]{16}|922[0-2][0-9]{15}|9223[0-2][0-9]{14}|92233[0-6][0-9]{13}|922337[0-1][0-9]{12}|92233720[0-2][0-9]{10}|922337203[0-5][0-9]{9}|9223372036[0-7][0-9]{8}|92233720368[0-4][0-9]{7}|922337203685[0-3][0-9]{6}|9223372036854[0-6][0-9]{5}|92233720368547[0-6][0-9]{4}|922337203685477[0-4][0-9]{3}|9223372036854775[0-7][0-9]{2}|922337203685477580[0-6]|9223372036854775807)$","type":"string","x-transloadit-description-id":"tusCanonicalByteCount"}},"x-content-type-options":{"required":true,"schema":{"const":"nosniff","type":"string"}}},"x-transloadit-response-headers":"#/components/schemas/Schema_e6d158eeda8e2c70be2f5c01ae55404ba004d20a709509956b14383156b23680"},"4XX":{"content":{"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_b860c1fcc87a06d67e6e95954b593681bc40014eb7078ba2c613f253eb6b2361"}}},"description":"Client error response","headers":{"tus-resumable":{"required":true,"schema":{"const":"1.0.0","type":"string"}},"x-content-type-options":{"required":true,"schema":{"const":"nosniff","type":"string"}}},"x-transloadit-response-headers":"#/components/schemas/Schema_7f25b58051081b331737944f9aae037f25dab15cb3961edbac57144acce9ae59"},"5XX":{"content":{"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_b860c1fcc87a06d67e6e95954b593681bc40014eb7078ba2c613f253eb6b2361"}}},"description":"Server error response","headers":{"tus-resumable":{"required":true,"schema":{"const":"1.0.0","type":"string"}},"x-content-type-options":{"required":true,"schema":{"const":"nosniff","type":"string"}}},"x-transloadit-response-headers":"#/components/schemas/Schema_7f25b58051081b331737944f9aae037f25dab15cb3961edbac57144acce9ae59"}},"security":[],"servers":[{"description":"Non-routable sentinel. Replace this origin only with the validated capability destination described by x-transloadit-destination.","url":"https://capability.invalid"}],"summary":"Upload tus file bytes","tags":["TUS Upload Protocol"],"x-transloadit-auth":{"kind":"tus-upload-resource","source":{"kind":"validated-location"}},"x-transloadit-destination":{"kind":"tus-upload-resource","source":{"header":"location","kind":"validated-response","operationId":"tusd.create-upload","status":201}},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode","x-transloadit-request-headers":"#/components/schemas/Schema_ef2ca2de27549cab8ae95a245534f0b897b4adc6464909e2cd30017fedfc3386","x-transloadit-tus-capability":"resumable-upload"}},"/template_credentials":{"get":{"description":"Lists the Template Credentials for the authenticated Workspace.","operationId":"api2.list-template-credentials","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_612e698dda273481ce95cd95dd6b7d141b01f181ceb16bcda793b1c354c67c41"}}},"in":"query","name":"params","required":false,"x-transloadit-normalized-params":"#/components/schemas/Schema_59c75a0176439578ed0046b2a9926dfb45a391998622d22ef14cad17b954c691"},{"in":"query","name":"signature","required":false,"schema":{"type":"string"}}],"responses":{"2XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_996716d855dbed98c66aed68a18187ca6af0a3239d643c4c607922f044569190"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_996716d855dbed98c66aed68a18187ca6af0a3239d643c4c607922f044569190"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_3910b4b9bac8e1c19c75b8903ee27a48315d2e7d0756b8626743751b84843b34"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_3910b4b9bac8e1c19c75b8903ee27a48315d2e7d0756b8626743751b84843b34"}}},"description":"HTTP 400 response"},"4XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Client error response"},"5XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Server error response"}},"security":[{"BearerAuth":["template_credentials:read"]}],"summary":"Retrieve list of Template Credentials","x-transloadit-auth":{"allowCancelledWorkspaces":true,"bearerBypassesSignature":true,"kind":"api-key","scopes":["template_credentials:read"],"signature":"required"},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode"},"post":{"description":"Creates credentials that a Template can use with an external service.","operationId":"api2.create-template-credential","requestBody":{"content":{"application/x-www-form-urlencoded":{"encoding":{"params":{"contentType":"application/json"}},"schema":{"additionalProperties":false,"properties":{"params":{"$ref":"#/components/schemas/Schema_846fca23a9d7f02825d388ae1fb440b75a4c4f2366725d02b4ef60cb0263551a"},"signature":{"type":"string"}},"required":["params"],"type":"object","x-transloadit-normalized-params":"#/components/schemas/Schema_ade574c727e61bf4212a7bab355c2e9e5b7c692564acf70e0269b8e18f0e71fb"}}},"required":true},"responses":{"2XX":{"content":{"application/json":{"example":{"credential":{"account_id":"72a70fba93ce41cba617cfd7c2a44b1a","content":{"bucket":"your-bucket","bucket_region":"us-east-1","key":"YOUR_S3_KEY","secret":"YOUR_S3_SECRET"},"created":"2026-09-12T10:00:00.000Z","deleted":null,"id":"ca7644b763c848e6af4f4ccf3eaea622","modified":"2026-09-12T10:00:00.000Z","name":"s3-production","stringified":"{\"key\":\"YOUR_S3_KEY\",\"secret\":\"YOUR_S3_SECRET\",\"bucket\":\"your-bucket\",\"bucket_region\":\"us-east-1\"}","type":"s3"},"message":"Your Template Credentials were successfully created.","ok":"TEMPLATE_CREDENTIALS_CREATED"},"schema":{"$ref":"#/components/schemas/Schema_2baf3c46554957a1961ce19c9163bb8f1be3ca9407cc9841b12bb1b0492bb047"}},"text/plain; charset=utf-8":{"example":{"credential":{"account_id":"72a70fba93ce41cba617cfd7c2a44b1a","content":{"bucket":"your-bucket","bucket_region":"us-east-1","key":"YOUR_S3_KEY","secret":"YOUR_S3_SECRET"},"created":"2026-09-12T10:00:00.000Z","deleted":null,"id":"ca7644b763c848e6af4f4ccf3eaea622","modified":"2026-09-12T10:00:00.000Z","name":"s3-production","stringified":"{\"key\":\"YOUR_S3_KEY\",\"secret\":\"YOUR_S3_SECRET\",\"bucket\":\"your-bucket\",\"bucket_region\":\"us-east-1\"}","type":"s3"},"message":"Your Template Credentials were successfully created.","ok":"TEMPLATE_CREDENTIALS_CREATED"},"schema":{"$ref":"#/components/schemas/Schema_2baf3c46554957a1961ce19c9163bb8f1be3ca9407cc9841b12bb1b0492bb047"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_7644965addc4149f88074f52186d435ad8b8f8f4cb645c74726723b684bbbc55"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_7644965addc4149f88074f52186d435ad8b8f8f4cb645c74726723b684bbbc55"}}},"description":"HTTP 400 response"},"4XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Client error response"},"5XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Server error response"}},"security":[{"BearerAuth":["template_credentials:write"]}],"summary":"Create a new Template Credential","x-transloadit-auth":{"bearerBypassesSignature":true,"kind":"api-key","scopes":["template_credentials:write"],"signature":"required"},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode"}},"/template_credentials/types":{"get":{"description":"Lists the Template Credential types supported by Transloadit.","operationId":"api2.list-template-credential-types","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_612e698dda273481ce95cd95dd6b7d141b01f181ceb16bcda793b1c354c67c41"}}},"in":"query","name":"params","required":false,"x-transloadit-normalized-params":"#/components/schemas/Schema_59c75a0176439578ed0046b2a9926dfb45a391998622d22ef14cad17b954c691"},{"in":"query","name":"signature","required":false,"schema":{"type":"string"}}],"responses":{"2XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_9d51ab8cf7b7d84e4e24a4efb39e4d2d6358671a251b1cc544c6007f6fa55960"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_9d51ab8cf7b7d84e4e24a4efb39e4d2d6358671a251b1cc544c6007f6fa55960"}}},"description":"Successful response"},"4XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Client error response"},"5XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Server error response"}},"security":[{"BearerAuth":[]}],"summary":"Retrieve Template Credential types","x-transloadit-auth":{"allowCancelledWorkspaces":true,"bearerBypassesSignature":true,"kind":"api-key","scopes":[],"signature":"required"},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode"}},"/template_credentials/{templateCredentialId}":{"delete":{"description":"Deletes a Template Credential by its stable ID.","operationId":"api2.delete-template-credential","parameters":[{"in":"path","name":"templateCredentialId","required":true,"schema":{"maxLength":32,"minLength":32,"pattern":"^[0-9a-f]{32}$","type":"string","x-transloadit-path-format":"lowercase-hex-32"}}],"requestBody":{"content":{"application/x-www-form-urlencoded":{"encoding":{"params":{"contentType":"application/json"}},"schema":{"additionalProperties":false,"properties":{"params":{"$ref":"#/components/schemas/Schema_612e698dda273481ce95cd95dd6b7d141b01f181ceb16bcda793b1c354c67c41"},"signature":{"type":"string"}},"required":["params"],"type":"object","x-transloadit-normalized-params":"#/components/schemas/Schema_59c75a0176439578ed0046b2a9926dfb45a391998622d22ef14cad17b954c691"}}},"required":true},"responses":{"2XX":{"content":{"application/json":{"example":{"message":"Your Template Credentials were successfully deleted.","ok":"TEMPLATE_CREDENTIALS_DELETED"},"schema":{"$ref":"#/components/schemas/Schema_cb4297474f7736946a4e5460673b7bbc07fc5087f9ded06cc5da5201225bdd2a"}},"text/plain; charset=utf-8":{"example":{"message":"Your Template Credentials were successfully deleted.","ok":"TEMPLATE_CREDENTIALS_DELETED"},"schema":{"$ref":"#/components/schemas/Schema_cb4297474f7736946a4e5460673b7bbc07fc5087f9ded06cc5da5201225bdd2a"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_5af4bd9e1a35cca220e3cc528858c6dd4ea8f0e153b820e6d47ca9f386ff1007"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_5af4bd9e1a35cca220e3cc528858c6dd4ea8f0e153b820e6d47ca9f386ff1007"}}},"description":"HTTP 400 response"},"4XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Client error response"},"5XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Server error response"}},"security":[{"BearerAuth":["template_credentials:write"]}],"summary":"Delete a Template Credential","x-transloadit-auth":{"bearerBypassesSignature":true,"kind":"api-key","scopes":["template_credentials:write"],"signature":"required"},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode"},"get":{"description":"Returns a Template Credential by its stable ID.","operationId":"api2.get-template-credential","parameters":[{"in":"path","name":"templateCredentialId","required":true,"schema":{"maxLength":32,"minLength":32,"pattern":"^[0-9a-f]{32}$","type":"string","x-transloadit-path-format":"lowercase-hex-32"}},{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_612e698dda273481ce95cd95dd6b7d141b01f181ceb16bcda793b1c354c67c41"}}},"in":"query","name":"params","required":false,"x-transloadit-normalized-params":"#/components/schemas/Schema_59c75a0176439578ed0046b2a9926dfb45a391998622d22ef14cad17b954c691"},{"in":"query","name":"signature","required":false,"schema":{"type":"string"}}],"responses":{"2XX":{"content":{"application/json":{"example":{"credential":{"account_id":"72a70fba93ce41cba617cfd7c2a44b1a","content":{"bucket":"your-bucket","bucket_region":"us-east-1","key":"YOUR_S3_KEY","secret":"YOUR_S3_SECRET"},"created":"2026-09-12T10:00:00.000Z","deleted":null,"id":"ca7644b763c848e6af4f4ccf3eaea622","modified":"2026-09-12T10:00:00.000Z","name":"s3-production","stringified":"{\"key\":\"YOUR_S3_KEY\",\"secret\":\"YOUR_S3_SECRET\",\"bucket\":\"your-bucket\",\"bucket_region\":\"us-east-1\"}","type":"s3"},"message":"Your Template Credentials were successfully read.","ok":"TEMPLATE_CREDENTIALS_READ"},"schema":{"$ref":"#/components/schemas/Schema_6eae50596431e57a3adbeb024d3ca6f273d9f392eecf6f7fa7f4c725faa33dbd"}},"text/plain; charset=utf-8":{"example":{"credential":{"account_id":"72a70fba93ce41cba617cfd7c2a44b1a","content":{"bucket":"your-bucket","bucket_region":"us-east-1","key":"YOUR_S3_KEY","secret":"YOUR_S3_SECRET"},"created":"2026-09-12T10:00:00.000Z","deleted":null,"id":"ca7644b763c848e6af4f4ccf3eaea622","modified":"2026-09-12T10:00:00.000Z","name":"s3-production","stringified":"{\"key\":\"YOUR_S3_KEY\",\"secret\":\"YOUR_S3_SECRET\",\"bucket\":\"your-bucket\",\"bucket_region\":\"us-east-1\"}","type":"s3"},"message":"Your Template Credentials were successfully read.","ok":"TEMPLATE_CREDENTIALS_READ"},"schema":{"$ref":"#/components/schemas/Schema_6eae50596431e57a3adbeb024d3ca6f273d9f392eecf6f7fa7f4c725faa33dbd"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_7f16f56b3c70f4e47af9b47f6c4b31aa85b568bc1de2916dd411803ed341ee7b"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_7f16f56b3c70f4e47af9b47f6c4b31aa85b568bc1de2916dd411803ed341ee7b"}}},"description":"HTTP 400 response"},"4XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Client error response"},"5XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Server error response"}},"security":[{"BearerAuth":["template_credentials:read"]}],"summary":"Retrieve a Template Credential","x-transloadit-auth":{"bearerBypassesSignature":true,"kind":"api-key","scopes":["template_credentials:read"],"signature":"required"},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode"},"put":{"description":"Updates a Template Credential by its stable ID.","operationId":"api2.update-template-credential","parameters":[{"in":"path","name":"templateCredentialId","required":true,"schema":{"maxLength":32,"minLength":32,"pattern":"^[0-9a-f]{32}$","type":"string","x-transloadit-path-format":"lowercase-hex-32"}}],"requestBody":{"content":{"application/x-www-form-urlencoded":{"encoding":{"params":{"contentType":"application/json"}},"schema":{"additionalProperties":false,"properties":{"params":{"$ref":"#/components/schemas/Schema_425e1baf23d4ea0f0f5526bf481a5c52ee080b5d83194124c3c4e9ee161c22a9"},"signature":{"type":"string"}},"required":["params"],"type":"object","x-transloadit-normalized-params":"#/components/schemas/Schema_814f073e849c70953228d4708d1a835d0d5699d222f4aa21f68821d93c3ba91e"}}},"required":true},"responses":{"2XX":{"content":{"application/json":{"example":{"credential":{"account_id":"72a70fba93ce41cba617cfd7c2a44b1a","content":{"bucket":"your-bucket","bucket_region":"us-east-1","key":"YOUR_S3_KEY","secret":"YOUR_S3_SECRET"},"created":"2026-09-12T10:00:00.000Z","deleted":null,"id":"ca7644b763c848e6af4f4ccf3eaea622","modified":"2026-09-12T10:05:00.000Z","name":"s3-renamed","stringified":"{\"key\":\"YOUR_S3_KEY\",\"secret\":\"YOUR_S3_SECRET\",\"bucket\":\"your-bucket\",\"bucket_region\":\"us-east-1\"}","type":"s3"},"message":"Your Template Credentials were successfully updated.","ok":"TEMPLATE_CREDENTIALS_UPDATED"},"schema":{"$ref":"#/components/schemas/Schema_37a8dffd7b93124ac2ecb3a08c8bece4cc46105992936d6381be8bcd037d8052"}},"text/plain; charset=utf-8":{"example":{"credential":{"account_id":"72a70fba93ce41cba617cfd7c2a44b1a","content":{"bucket":"your-bucket","bucket_region":"us-east-1","key":"YOUR_S3_KEY","secret":"YOUR_S3_SECRET"},"created":"2026-09-12T10:00:00.000Z","deleted":null,"id":"ca7644b763c848e6af4f4ccf3eaea622","modified":"2026-09-12T10:05:00.000Z","name":"s3-renamed","stringified":"{\"key\":\"YOUR_S3_KEY\",\"secret\":\"YOUR_S3_SECRET\",\"bucket\":\"your-bucket\",\"bucket_region\":\"us-east-1\"}","type":"s3"},"message":"Your Template Credentials were successfully updated.","ok":"TEMPLATE_CREDENTIALS_UPDATED"},"schema":{"$ref":"#/components/schemas/Schema_37a8dffd7b93124ac2ecb3a08c8bece4cc46105992936d6381be8bcd037d8052"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_4f5da1519725aabe0787c2784a2d9cc0510dbbfb66f5d569071a349ac67a2c6c"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_4f5da1519725aabe0787c2784a2d9cc0510dbbfb66f5d569071a349ac67a2c6c"}}},"description":"HTTP 400 response"},"4XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Client error response"},"5XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Server error response"}},"security":[{"BearerAuth":["template_credentials:write"]}],"summary":"Edit a Template Credential","x-transloadit-auth":{"bearerBypassesSignature":true,"kind":"api-key","scopes":["template_credentials:write"],"signature":"required"},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode"}},"/templates":{"get":{"description":"Lists the Templates available to the authenticated Workspace.","operationId":"api2.list-templates","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_31ed678904691333add35107cedec66bbd07701bd8ffd4b105219921bf61418c"}}},"in":"query","name":"params","required":false,"x-transloadit-normalized-params":"#/components/schemas/Schema_7f9c24af80e16d6034ea444d5f1a6c15d4dc6fd9a7d7b64377d8fe3de8d744e6"},{"in":"query","name":"signature","required":false,"schema":{"type":"string"}}],"responses":{"2XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_195d641292f62478b58c9929515ea3e42f50eac7164939ca37c10d89f501dbbb"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_195d641292f62478b58c9929515ea3e42f50eac7164939ca37c10d89f501dbbb"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0da0c6cf83511319a2e357bd80e4040b47a1af8ded95b26c2ab7775d8bed90a8"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0da0c6cf83511319a2e357bd80e4040b47a1af8ded95b26c2ab7775d8bed90a8"}}},"description":"HTTP 400 response"},"4XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Client error response"},"5XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Server error response"}},"security":[{"BearerAuth":["templates:read"]}],"summary":"Retrieve list of Templates","x-transloadit-auth":{"allowCancelledWorkspaces":true,"bearerBypassesSignature":true,"kind":"api-key","scopes":["templates:read"],"signature":"required"},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode"},"post":{"description":"Creates a reusable Template from Assembly Instructions.","operationId":"api2.create-template","requestBody":{"content":{"application/x-www-form-urlencoded":{"encoding":{"params":{"contentType":"application/json"}},"schema":{"additionalProperties":false,"properties":{"params":{"$ref":"#/components/schemas/Schema_3d3645811c041c41c65f471a7527e619bdc6a1b5a0f31ce631fcff3645053b21"},"signature":{"type":"string"}},"required":["params"],"type":"object","x-transloadit-normalized-params":"#/components/schemas/Schema_a5345e8de1c4a63908fa71e0ea4cfbff275562b82e222c7a389606e16db872ce"}}},"required":true},"responses":{"2XX":{"content":{"application/json":{"example":{"assembly_status_expiry":null,"content":{"steps":{"resize":{"robot":"/image/resize","use":":original","width":320}}},"id":"8fc3b9166c784afd824acf24269ebd11","message":"Your Template was successfully created.","name":"resize-images","ok":"TEMPLATE_CREATED","require_signature_auth":0,"transcoding_result_expiry":null},"schema":{"$ref":"#/components/schemas/Schema_8c4ad79bf6bd7b482c47fde8c3be8d8a73fc7d70dc89a0a1ab1c67e06d82bd82"}},"text/plain; charset=utf-8":{"example":{"assembly_status_expiry":null,"content":{"steps":{"resize":{"robot":"/image/resize","use":":original","width":320}}},"id":"8fc3b9166c784afd824acf24269ebd11","message":"Your Template was successfully created.","name":"resize-images","ok":"TEMPLATE_CREATED","require_signature_auth":0,"transcoding_result_expiry":null},"schema":{"$ref":"#/components/schemas/Schema_8c4ad79bf6bd7b482c47fde8c3be8d8a73fc7d70dc89a0a1ab1c67e06d82bd82"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_f7d6eb3dd4ff5545f1e3227fdd79c832b4a6ffb14430af9c4d5cec50b9989d0d"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_f7d6eb3dd4ff5545f1e3227fdd79c832b4a6ffb14430af9c4d5cec50b9989d0d"}}},"description":"HTTP 400 response"},"4XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Client error response"},"5XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Server error response"}},"security":[{"BearerAuth":["templates:write"]}],"summary":"Create a new Template","x-transloadit-auth":{"bearerBypassesSignature":true,"kind":"api-key","scopes":["templates:write"],"signature":"required"},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode"}},"/templates/{templateIdOrName}":{"delete":{"description":"Deletes a Template by its ID or name.","operationId":"api2.delete-template","parameters":[{"in":"path","name":"templateIdOrName","required":true,"schema":{"minLength":1,"pattern":"^[a-z0-9-]+$","type":"string","x-transloadit-path-format":"lowercase-id"}}],"requestBody":{"content":{"application/x-www-form-urlencoded":{"encoding":{"params":{"contentType":"application/json"}},"schema":{"additionalProperties":false,"properties":{"params":{"$ref":"#/components/schemas/Schema_47769952929597405852490ac5292d00bd64967542e39c913eb26a7457785dbc"},"signature":{"type":"string"}},"required":["params"],"type":"object","x-transloadit-normalized-params":"#/components/schemas/Schema_34ab76fcc1ec17539195370cb94ae9fe84d15fba2331d1df3c2f596e86c2809c"}}},"required":true},"responses":{"2XX":{"content":{"application/json":{"example":{"message":"Your Template was successfully deleted.","ok":"TEMPLATE_DELETED"},"schema":{"$ref":"#/components/schemas/Schema_b7ca27e4d0e52342c6ff62aa26a6197224968214c97b47c706dff5e448b13d95"}},"text/plain; charset=utf-8":{"example":{"message":"Your Template was successfully deleted.","ok":"TEMPLATE_DELETED"},"schema":{"$ref":"#/components/schemas/Schema_b7ca27e4d0e52342c6ff62aa26a6197224968214c97b47c706dff5e448b13d95"}}},"description":"Successful response"},"4XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Client error response"},"5XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Server error response"}},"security":[{"BearerAuth":["templates:write"]}],"summary":"Delete a Template","x-transloadit-auth":{"bearerBypassesSignature":true,"kind":"api-key","scopes":["templates:write"],"signature":"required"},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode"},"get":{"description":"Returns a Template by its ID or name.","operationId":"api2.get-template","parameters":[{"in":"path","name":"templateIdOrName","required":true,"schema":{"minLength":1,"pattern":"^[a-z0-9-]+$","type":"string","x-transloadit-path-format":"lowercase-id"}},{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_47769952929597405852490ac5292d00bd64967542e39c913eb26a7457785dbc"}}},"in":"query","name":"params","required":false,"x-transloadit-normalized-params":"#/components/schemas/Schema_34ab76fcc1ec17539195370cb94ae9fe84d15fba2331d1df3c2f596e86c2809c"},{"in":"query","name":"signature","required":false,"schema":{"type":"string"}}],"responses":{"2XX":{"content":{"application/json":{"example":{"assembly_status_expiry":null,"content":{"steps":{"resize":{"robot":"/image/resize","use":":original","width":320}}},"id":"8fc3b9166c784afd824acf24269ebd11","message":"Your Template was successfully found.","name":"resize-images","ok":"TEMPLATE_FOUND","require_signature_auth":0,"transcoding_result_expiry":null},"schema":{"$ref":"#/components/schemas/Schema_2d2318eaa4936120548ada88d4daa508dc9a9f16d1a5a9d1fc676de095a6eeb0"}},"text/plain; charset=utf-8":{"example":{"assembly_status_expiry":null,"content":{"steps":{"resize":{"robot":"/image/resize","use":":original","width":320}}},"id":"8fc3b9166c784afd824acf24269ebd11","message":"Your Template was successfully found.","name":"resize-images","ok":"TEMPLATE_FOUND","require_signature_auth":0,"transcoding_result_expiry":null},"schema":{"$ref":"#/components/schemas/Schema_2d2318eaa4936120548ada88d4daa508dc9a9f16d1a5a9d1fc676de095a6eeb0"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_39ecfe30b7e7a6d240546aa94aca97ffa888ca37d561abb870b0b6ecd718b535"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_39ecfe30b7e7a6d240546aa94aca97ffa888ca37d561abb870b0b6ecd718b535"}}},"description":"HTTP 400 response"},"4XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Client error response"},"5XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Server error response"}},"security":[{"BearerAuth":["templates:read"]}],"summary":"Retrieve a Template","x-transloadit-auth":{"allowCancelledWorkspaces":true,"bearerBypassesSignature":true,"kind":"api-key","scopes":["templates:read"],"signature":"required"},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode"},"put":{"description":"Updates an existing Template by its ID or name.","operationId":"api2.update-template","parameters":[{"in":"path","name":"templateIdOrName","required":true,"schema":{"minLength":1,"pattern":"^[a-z0-9-]+$","type":"string","x-transloadit-path-format":"lowercase-id"}}],"requestBody":{"content":{"application/x-www-form-urlencoded":{"encoding":{"params":{"contentType":"application/json"}},"schema":{"additionalProperties":false,"properties":{"params":{"$ref":"#/components/schemas/Schema_8be2cd1ead5dc3bef9e45523f716cffa2e21710d1e93da7905dc608d7be4af00"},"signature":{"type":"string"}},"required":["params"],"type":"object","x-transloadit-normalized-params":"#/components/schemas/Schema_d5ef7d974dc01ece7e15c421fcd577c7886fd9f9330c331592204e0444cb2683"}}},"required":true},"responses":{"2XX":{"content":{"application/json":{"example":{"assembly_status_expiry":null,"content":{"steps":{"resize":{"robot":"/image/resize","use":":original","width":320}}},"id":"8fc3b9166c784afd824acf24269ebd11","message":"Your Template was successfully updated.","name":"resized-images","ok":"TEMPLATE_UPDATED","require_signature_auth":0,"transcoding_result_expiry":null},"schema":{"$ref":"#/components/schemas/Schema_c7337d096604fb46c58182801f96da22b63394c2e51ccc20f734a68bdb207a31"}},"text/plain; charset=utf-8":{"example":{"assembly_status_expiry":null,"content":{"steps":{"resize":{"robot":"/image/resize","use":":original","width":320}}},"id":"8fc3b9166c784afd824acf24269ebd11","message":"Your Template was successfully updated.","name":"resized-images","ok":"TEMPLATE_UPDATED","require_signature_auth":0,"transcoding_result_expiry":null},"schema":{"$ref":"#/components/schemas/Schema_c7337d096604fb46c58182801f96da22b63394c2e51ccc20f734a68bdb207a31"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_f7d6eb3dd4ff5545f1e3227fdd79c832b4a6ffb14430af9c4d5cec50b9989d0d"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_f7d6eb3dd4ff5545f1e3227fdd79c832b4a6ffb14430af9c4d5cec50b9989d0d"}}},"description":"HTTP 400 response"},"4XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Client error response"},"5XX":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}},"text/plain; charset=utf-8":{"schema":{"$ref":"#/components/schemas/Schema_0a9d3b24294c6f86c169dc1210bc7367870dfce91846950f7f2478a82774b31a"}}},"description":"Server error response"}},"security":[{"BearerAuth":["templates:write"]}],"summary":"Edit a Template","x-transloadit-auth":{"bearerBypassesSignature":true,"kind":"api-key","scopes":["templates:write"],"signature":"required"},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode"}},"/token":{"post":{"description":"Exchanges Auth Key credentials for a scoped bearer token.","operationId":"api2.issue-bearer-token","requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Schema_271f26d115904a7d08f7ffbe09699208ce0db6b05b8f50edcadeca580d188099"}}},"required":true},"responses":{"2XX":{"content":{"application/json":{"example":{"access_token":"opaque-token","expires_in":21600,"scope":"assemblies:read assemblies:write","token_type":"Bearer"},"schema":{"$ref":"#/components/schemas/Schema_ba861e76f246f2a09240e7253fbded07ec889e50b94992dc0549cb6c956d1e1c"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_d889f8bfd6f563d7f74d92219790b5ab4b0b84cbfa7f6b9b7dd6ef66d5219d1e"}}},"description":"HTTP 400 response"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_b939c38111ab32f8f8dc284a163a1e5a83e530b952c30259d9922a06cc606c67"}}},"description":"HTTP 401 response"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_6774bbc3a7fa1b457ac496fe0ef178483df19de3dcd6eddcbb55e86119b5402e"}}},"description":"HTTP 403 response"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_7540fd1b06c89ae9009b0560f56a0a82446f22491e572d5bc08b1fb39f540772"}}},"description":"HTTP 429 response"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schema_cac575b2a0acce3cfe4158d03351c785fafb3936fe83a0505ce6674d6c1845b3"}}},"description":"HTTP 500 response"}},"security":[{"BasicAuth":[]},{}],"summary":"Create a bearer token","x-transloadit-auth":{"byFormField":{"field":"grant_type","values":{"authorization_code":"none","client_credentials":"basic","refresh_token":"none"}},"kind":"basic","optional":true},"x-transloadit-json-number-model":"finite-ieee-754-binary64","x-transloadit-regex-dialect":"ecma-262-unicode"}}},"servers":[{"url":"https://api2.transloadit.com"}],"tags":[{"description":"Raw tus 1.0 wire operations for resumable uploads.","name":"TUS Upload Protocol"}],"webhooks":{"assemblyNotification":{"post":{"description":"Transloadit sends this request to your configured notify_url. A successful HTTP acknowledgment confirms delivery, not Assembly success. Verify the signature before parsing transloadit and inspect the payload’s ok or error field.","operationId":"assemblyNotification","requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Schema_bb5b2278b0a4a01b6074fa176b1d2b8118bd586b278ee5cbdbd10b69dd33d5e1"}}},"required":true},"responses":{"2XX":{"description":"Delivery acknowledged. This does not indicate Assembly success."}},"security":[],"summary":"Receive an Assembly Notification","x-transloadit-webhook":{"payload":{"field":"transloadit","schema":{"$ref":"#/components/schemas/assemblyNotificationPayload"}},"signature":{"algorithm":"sha1","encoding":"hex","field":"signature","prefix":"none"}}},"servers":[{"url":"{notify_url}","variables":{"notify_url":{"default":"https://your-server.example/webhook"}}}]}},"x-transloadit-capability-policy":{"assemblyField":"assembly_ssl_url","collectionField":"tus_url","creationStatus":201,"identityField":"assembly_id","locationHeader":"location","metadataHeader":"upload-metadata","metadataName":"assembly_url","publicHostPattern":"^api2-(?!xn--)[a-z0-9](?:[a-z0-9-]{0,56}[a-z0-9])?\\.transloadit\\.com$","routes":[{"headers":{"alternatives":[[]]},"kind":"create-assembly","method":"POST","operationId":"api2.create-assembly","parameters":[],"path":"/assemblies"},{"headers":{"alternatives":[[{"name":"accept","required":true,"values":["text/event-stream"]}]]},"kind":"status-stream","method":"GET","operationId":"api2.stream-assembly-status","parameters":[{"name":"statusStream","pattern":"^ws[0-9]+$","percentDecode":false}],"path":"/{statusStream}"},{"headers":{"alternatives":[[]]},"kind":"assembly","method":"DELETE","operationId":"api2.cancel-assembly","parameters":[{"name":"assemblyId","pattern":"^[a-z0-9]{32}$","percentDecode":false}],"path":"/assemblies/{assemblyId}"},{"headers":{"alternatives":[[]]},"kind":"assembly","method":"GET","operationId":"api2.get-assembly","parameters":[{"name":"assemblyId","pattern":"^[a-z0-9]{32}$","percentDecode":false}],"path":"/assemblies/{assemblyId}"},{"headers":{"alternatives":[[]]},"kind":"create-assembly","method":"PUT","operationId":"api2.replace-assembly","parameters":[{"name":"assemblyId","pattern":"^[a-z0-9]{32}$","percentDecode":false}],"path":"/assemblies/{assemblyId}"},{"headers":{"alternatives":[[]]},"kind":"tus-collection","method":"OPTIONS","operationId":"tusd.options","parameters":[],"path":"/resumable/files"},{"headers":{"alternatives":[[{"name":"content-type","required":false,"values":["application/offset+octet-stream"]},{"name":"tus-resumable","required":true,"values":["1.0.0"]},{"name":"upload-concat","required":false,"values":["partial"]},{"name":"upload-length","pattern":"^(?:0|[1-9][0-9]{0,17}|[1-8][0-9]{18}|9[0-1][0-9]{17}|92[0-1][0-9]{16}|922[0-2][0-9]{15}|9223[0-2][0-9]{14}|92233[0-6][0-9]{13}|922337[0-1][0-9]{12}|92233720[0-2][0-9]{10}|922337203[0-5][0-9]{9}|9223372036[0-7][0-9]{8}|92233720368[0-4][0-9]{7}|922337203685[0-3][0-9]{6}|9223372036854[0-6][0-9]{5}|92233720368547[0-6][0-9]{4}|922337203685477[0-4][0-9]{3}|9223372036854775[0-7][0-9]{2}|922337203685477580[0-6]|9223372036854775807)$","required":true},{"name":"upload-metadata","pattern":"^[\\x21-\\x2b\\x2d-\\x7e]+(?: (?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?)?(?:,[\\x21-\\x2b\\x2d-\\x7e]+(?: (?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?)?)*$","required":true}],[{"name":"content-type","required":false,"values":["application/offset+octet-stream"]},{"name":"tus-resumable","required":true,"values":["1.0.0"]},{"name":"upload-concat","required":false,"values":["partial"]},{"name":"upload-defer-length","required":true,"values":["1"]},{"name":"upload-metadata","pattern":"^[\\x21-\\x2b\\x2d-\\x7e]+(?: (?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?)?(?:,[\\x21-\\x2b\\x2d-\\x7e]+(?: (?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?)?)*$","required":true}],[{"name":"tus-resumable","required":true,"values":["1.0.0"]},{"maxLength":8192,"name":"upload-concat","pattern":"^final;(?:https?:\\/\\/[^/\\x09-\\x0D\\x20\\xA0                　﻿]+)?\\/resumable\\/files\\/[^/\\x09-\\x0D\\x20\\xA0                　﻿]+(?:\\/[^/\\x09-\\x0D\\x20\\xA0                　﻿]+)*(?: (?:https?:\\/\\/[^/\\x09-\\x0D\\x20\\xA0                　﻿]+)?\\/resumable\\/files\\/[^/\\x09-\\x0D\\x20\\xA0                　﻿]+(?:\\/[^/\\x09-\\x0D\\x20\\xA0                　﻿]+)*)*$","required":true},{"name":"upload-metadata","pattern":"^[\\x21-\\x2b\\x2d-\\x7e]+(?: (?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?)?(?:,[\\x21-\\x2b\\x2d-\\x7e]+(?: (?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?)?)*$","required":true}]]},"kind":"tus-collection","method":"POST","operationId":"tusd.create-upload","parameters":[],"path":"/resumable/files"},{"headers":{"alternatives":[[{"name":"tus-resumable","required":true,"values":["1.0.0"]}]]},"kind":"tus-upload-resource","method":"HEAD","operationId":"tusd.get-upload-offset","parameters":[{"minLength":1,"name":"uploadId","percentDecode":true}],"path":"/resumable/files/{uploadId}"},{"headers":{"alternatives":[[{"name":"content-type","required":true,"values":["application/offset+octet-stream"]},{"name":"tus-resumable","required":true,"values":["1.0.0"]},{"name":"upload-length","pattern":"^(?:0|[1-9][0-9]{0,17}|[1-8][0-9]{18}|9[0-1][0-9]{17}|92[0-1][0-9]{16}|922[0-2][0-9]{15}|9223[0-2][0-9]{14}|92233[0-6][0-9]{13}|922337[0-1][0-9]{12}|92233720[0-2][0-9]{10}|922337203[0-5][0-9]{9}|9223372036[0-7][0-9]{8}|92233720368[0-4][0-9]{7}|922337203685[0-3][0-9]{6}|9223372036854[0-6][0-9]{5}|92233720368547[0-6][0-9]{4}|922337203685477[0-4][0-9]{3}|9223372036854775[0-7][0-9]{2}|922337203685477580[0-6]|9223372036854775807)$","required":false},{"name":"upload-offset","pattern":"^(?:0|[1-9][0-9]{0,17}|[1-8][0-9]{18}|9[0-1][0-9]{17}|92[0-1][0-9]{16}|922[0-2][0-9]{15}|9223[0-2][0-9]{14}|92233[0-6][0-9]{13}|922337[0-1][0-9]{12}|92233720[0-2][0-9]{10}|922337203[0-5][0-9]{9}|9223372036[0-7][0-9]{8}|92233720368[0-4][0-9]{7}|922337203685[0-3][0-9]{6}|9223372036854[0-6][0-9]{5}|92233720368547[0-6][0-9]{4}|922337203685477[0-4][0-9]{3}|9223372036854775[0-7][0-9]{2}|922337203685477580[0-6]|9223372036854775807)$","required":true}]]},"kind":"tus-upload-resource","method":"PATCH","operationId":"tusd.patch-upload","parameters":[{"minLength":1,"name":"uploadId","percentDecode":true}],"path":"/resumable/files/{uploadId}"},{"headers":{"alternatives":[[{"maxLength":8192,"minLength":1,"name":"if-match","required":false},{"maxLength":8192,"minLength":1,"name":"if-modified-since","required":false},{"maxLength":8192,"minLength":1,"name":"if-none-match","required":false},{"maxLength":8192,"minLength":1,"name":"if-range","required":false},{"maxLength":8192,"minLength":1,"name":"if-unmodified-since","required":false},{"maxLength":8192,"name":"range","pattern":"^bytes=(?:[0-9]+-[0-9]*|-[0-9]+)(?:,(?:[0-9]+-[0-9]*|-[0-9]+))*$","required":false},{"name":"tus-resumable","required":false,"values":["1.0.0"]}]]},"kind":"tus-upload-resource","method":"GET","operationId":"tusd.download-upload","parameters":[{"minLength":1,"name":"uploadId","percentDecode":true}],"path":"/resumable/files/{uploadId}"},{"headers":{"alternatives":[[{"name":"tus-resumable","required":true,"values":["1.0.0"]}]]},"kind":"tus-upload-resource","method":"DELETE","operationId":"tusd.delete-upload","parameters":[{"minLength":1,"name":"uploadId","percentDecode":true}],"path":"/resumable/files/{uploadId}"}],"streamField":"update_stream_url","streamQuery":"assembly","unsupportedHeaders":["upload-concat","x-http-method-override","x-method-override"],"version":2}}
