@giveitsmaller/contracts 0.53.0 → 0.54.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (467) hide show
  1. package/accepted-options/accepted-options.json +1 -1
  2. package/accepted-options/image-output-routes.json +1 -1
  3. package/availability/availability.json +1 -1
  4. package/code-builder/code-builder-metadata.json +2 -2
  5. package/dist/openapi/models/AccountLimitEntry.d.ts +1 -1
  6. package/dist/openapi/models/AccountLimitEntry.js +1 -1
  7. package/dist/openapi/models/AccountLimits.d.ts +1 -1
  8. package/dist/openapi/models/AccountLimits.js +1 -1
  9. package/dist/openapi/models/AccountLimitsLimits.d.ts +1 -1
  10. package/dist/openapi/models/AccountLimitsLimits.js +1 -1
  11. package/dist/openapi/models/AccountLimitsSuccessEnvelope.d.ts +1 -1
  12. package/dist/openapi/models/AccountLimitsSuccessEnvelope.js +1 -1
  13. package/dist/openapi/models/AudioWatermarkDecodeRequest.d.ts +1 -1
  14. package/dist/openapi/models/AudioWatermarkDecodeRequest.js +1 -1
  15. package/dist/openapi/models/AudioWatermarkDecodeResponse.d.ts +1 -1
  16. package/dist/openapi/models/AudioWatermarkDecodeResponse.js +1 -1
  17. package/dist/openapi/models/AuthErrorResponse.d.ts +1 -1
  18. package/dist/openapi/models/AuthErrorResponse.js +1 -1
  19. package/dist/openapi/models/AuthErrorType.d.ts +1 -1
  20. package/dist/openapi/models/AuthErrorType.js +1 -1
  21. package/dist/openapi/models/AuthRejectionEnvelope.d.ts +1 -1
  22. package/dist/openapi/models/AuthRejectionEnvelope.js +1 -1
  23. package/dist/openapi/models/AvailabilityValue.d.ts +1 -1
  24. package/dist/openapi/models/AvailabilityValue.js +1 -1
  25. package/dist/openapi/models/BalanceExhaustedResponse.d.ts +1 -1
  26. package/dist/openapi/models/BalanceExhaustedResponse.js +1 -1
  27. package/dist/openapi/models/BalanceExhaustedResponseAllOfLinks.d.ts +1 -1
  28. package/dist/openapi/models/BalanceExhaustedResponseAllOfLinks.js +1 -1
  29. package/dist/openapi/models/BillingCheckoutRequest.d.ts +1 -1
  30. package/dist/openapi/models/BillingCheckoutRequest.js +1 -1
  31. package/dist/openapi/models/BillingCheckoutSession.d.ts +1 -1
  32. package/dist/openapi/models/BillingCheckoutSession.js +1 -1
  33. package/dist/openapi/models/BillingCheckoutSuccessEnvelope.d.ts +1 -1
  34. package/dist/openapi/models/BillingCheckoutSuccessEnvelope.js +1 -1
  35. package/dist/openapi/models/CallbackEventType.d.ts +1 -1
  36. package/dist/openapi/models/CallbackEventType.js +1 -1
  37. package/dist/openapi/models/CapabilityCondition.d.ts +1 -1
  38. package/dist/openapi/models/CapabilityCondition.js +1 -1
  39. package/dist/openapi/models/CapabilityConditionOneOf.d.ts +1 -1
  40. package/dist/openapi/models/CapabilityConditionOneOf.js +1 -1
  41. package/dist/openapi/models/CapabilityConditionOneOf1.d.ts +1 -1
  42. package/dist/openapi/models/CapabilityConditionOneOf1.js +1 -1
  43. package/dist/openapi/models/CapabilityConditionOneOf2.d.ts +1 -1
  44. package/dist/openapi/models/CapabilityConditionOneOf2.js +1 -1
  45. package/dist/openapi/models/CapabilityConditionOneOf3.d.ts +1 -1
  46. package/dist/openapi/models/CapabilityConditionOneOf3.js +1 -1
  47. package/dist/openapi/models/CapabilityConditionOneOf4.d.ts +1 -1
  48. package/dist/openapi/models/CapabilityConditionOneOf4.js +1 -1
  49. package/dist/openapi/models/CapabilityConditionOneOf5.d.ts +1 -1
  50. package/dist/openapi/models/CapabilityConditionOneOf5.js +1 -1
  51. package/dist/openapi/models/CapabilityConditionOneOf6.d.ts +1 -1
  52. package/dist/openapi/models/CapabilityConditionOneOf6.js +1 -1
  53. package/dist/openapi/models/CapabilityConstraint.d.ts +1 -1
  54. package/dist/openapi/models/CapabilityConstraint.js +1 -1
  55. package/dist/openapi/models/CapabilityInputSpec.d.ts +1 -1
  56. package/dist/openapi/models/CapabilityInputSpec.js +1 -1
  57. package/dist/openapi/models/CapabilityProduces.d.ts +1 -1
  58. package/dist/openapi/models/CapabilityProduces.js +1 -1
  59. package/dist/openapi/models/CapabilityProducesOneOf.d.ts +1 -1
  60. package/dist/openapi/models/CapabilityProducesOneOf.js +1 -1
  61. package/dist/openapi/models/CapabilityProducesOneOf1.d.ts +1 -1
  62. package/dist/openapi/models/CapabilityProducesOneOf1.js +1 -1
  63. package/dist/openapi/models/CapabilityProducesOneOf2.d.ts +1 -1
  64. package/dist/openapi/models/CapabilityProducesOneOf2.js +1 -1
  65. package/dist/openapi/models/ChangePasswordRequest.d.ts +1 -1
  66. package/dist/openapi/models/ChangePasswordRequest.js +1 -1
  67. package/dist/openapi/models/CodegenSource.d.ts +1 -1
  68. package/dist/openapi/models/CodegenSource.js +1 -1
  69. package/dist/openapi/models/CodegenSourceInput.d.ts +1 -1
  70. package/dist/openapi/models/CodegenSourceInput.js +1 -1
  71. package/dist/openapi/models/CodegenSourceJob.d.ts +1 -1
  72. package/dist/openapi/models/CodegenSourceJob.js +1 -1
  73. package/dist/openapi/models/CodegenSourceJobSource.d.ts +1 -1
  74. package/dist/openapi/models/CodegenSourceJobSource.js +1 -1
  75. package/dist/openapi/models/CodegenSourceOperation.d.ts +1 -1
  76. package/dist/openapi/models/CodegenSourceOperation.js +1 -1
  77. package/dist/openapi/models/CodegenUploadPlaceholder.d.ts +1 -1
  78. package/dist/openapi/models/CodegenUploadPlaceholder.js +1 -1
  79. package/dist/openapi/models/CompositionPlan.d.ts +1 -1
  80. package/dist/openapi/models/CompositionPlan.js +1 -1
  81. package/dist/openapi/models/CompositionPlanJob.d.ts +1 -1
  82. package/dist/openapi/models/CompositionPlanJob.js +1 -1
  83. package/dist/openapi/models/CompositionPlanOperation.d.ts +1 -1
  84. package/dist/openapi/models/CompositionPlanOperation.js +1 -1
  85. package/dist/openapi/models/ConfirmEmailChange200Response.d.ts +1 -1
  86. package/dist/openapi/models/ConfirmEmailChange200Response.js +1 -1
  87. package/dist/openapi/models/ConfirmEmailChange200ResponseData.d.ts +1 -1
  88. package/dist/openapi/models/ConfirmEmailChange200ResponseData.js +1 -1
  89. package/dist/openapi/models/ConfirmEmailChangeRequest.d.ts +1 -1
  90. package/dist/openapi/models/ConfirmEmailChangeRequest.js +1 -1
  91. package/dist/openapi/models/ConnectionSource.d.ts +1 -1
  92. package/dist/openapi/models/ConnectionSource.js +1 -1
  93. package/dist/openapi/models/ContactRequest.d.ts +1 -1
  94. package/dist/openapi/models/ContactRequest.js +1 -1
  95. package/dist/openapi/models/ContactSubject.d.ts +1 -1
  96. package/dist/openapi/models/ContactSubject.js +1 -1
  97. package/dist/openapi/models/ContactValidationErrorResponse.d.ts +1 -1
  98. package/dist/openapi/models/ContactValidationErrorResponse.js +1 -1
  99. package/dist/openapi/models/CreateApiKey201Response.d.ts +1 -1
  100. package/dist/openapi/models/CreateApiKey201Response.js +1 -1
  101. package/dist/openapi/models/CreateApiKey201ResponseData.d.ts +1 -1
  102. package/dist/openapi/models/CreateApiKey201ResponseData.js +1 -1
  103. package/dist/openapi/models/CreateApiKeyRequest.d.ts +1 -1
  104. package/dist/openapi/models/CreateApiKeyRequest.js +1 -1
  105. package/dist/openapi/models/CreateBillingCheckoutSession422Response.d.ts +1 -1
  106. package/dist/openapi/models/CreateBillingCheckoutSession422Response.js +1 -1
  107. package/dist/openapi/models/CreateExternalImport403Response.d.ts +1 -1
  108. package/dist/openapi/models/CreateExternalImport403Response.js +1 -1
  109. package/dist/openapi/models/CreateExternalImport422Response.d.ts +1 -1
  110. package/dist/openapi/models/CreateExternalImport422Response.js +1 -1
  111. package/dist/openapi/models/CreateWorkflow422Response.d.ts +1 -1
  112. package/dist/openapi/models/CreateWorkflow422Response.js +1 -1
  113. package/dist/openapi/models/CreditTransaction.d.ts +1 -1
  114. package/dist/openapi/models/CreditTransaction.js +1 -1
  115. package/dist/openapi/models/CreditTransactionSourceBucket.d.ts +1 -1
  116. package/dist/openapi/models/CreditTransactionSourceBucket.js +1 -1
  117. package/dist/openapi/models/CreditsBalanceResponse.d.ts +1 -1
  118. package/dist/openapi/models/CreditsBalanceResponse.js +1 -1
  119. package/dist/openapi/models/CreditsBalanceSuccessEnvelope.d.ts +1 -1
  120. package/dist/openapi/models/CreditsBalanceSuccessEnvelope.js +1 -1
  121. package/dist/openapi/models/CreditsUsageResponse.d.ts +1 -1
  122. package/dist/openapi/models/CreditsUsageResponse.js +1 -1
  123. package/dist/openapi/models/CreditsUsageSuccessEnvelope.d.ts +1 -1
  124. package/dist/openapi/models/CreditsUsageSuccessEnvelope.js +1 -1
  125. package/dist/openapi/models/Delivery.d.ts +1 -1
  126. package/dist/openapi/models/Delivery.js +1 -1
  127. package/dist/openapi/models/DeliveryOutputRef.d.ts +1 -1
  128. package/dist/openapi/models/DeliveryOutputRef.js +1 -1
  129. package/dist/openapi/models/DeliveryPlan.d.ts +1 -1
  130. package/dist/openapi/models/DeliveryPlan.js +1 -1
  131. package/dist/openapi/models/DeliveryPlanOutput.d.ts +1 -1
  132. package/dist/openapi/models/DeliveryPlanOutput.js +1 -1
  133. package/dist/openapi/models/DeliveryPlanReason.d.ts +1 -1
  134. package/dist/openapi/models/DeliveryPlanReason.js +1 -1
  135. package/dist/openapi/models/DeliverySelection.d.ts +1 -1
  136. package/dist/openapi/models/DeliverySelection.js +1 -1
  137. package/dist/openapi/models/DownloadBundle.d.ts +1 -1
  138. package/dist/openapi/models/DownloadBundle.js +1 -1
  139. package/dist/openapi/models/EmptySuccessEnvelope.d.ts +1 -1
  140. package/dist/openapi/models/EmptySuccessEnvelope.js +1 -1
  141. package/dist/openapi/models/EndpointProjection.d.ts +1 -1
  142. package/dist/openapi/models/EndpointProjection.js +1 -1
  143. package/dist/openapi/models/ErrorEnvelope.d.ts +1 -1
  144. package/dist/openapi/models/ErrorEnvelope.js +1 -1
  145. package/dist/openapi/models/EstimateQuality.d.ts +1 -1
  146. package/dist/openapi/models/EstimateQuality.js +1 -1
  147. package/dist/openapi/models/EstimateRange.d.ts +1 -1
  148. package/dist/openapi/models/EstimateRange.js +1 -1
  149. package/dist/openapi/models/ExternalDestination.d.ts +1 -1
  150. package/dist/openapi/models/ExternalDestination.js +1 -1
  151. package/dist/openapi/models/ExternalImportCreatedResponse.d.ts +1 -1
  152. package/dist/openapi/models/ExternalImportCreatedResponse.js +1 -1
  153. package/dist/openapi/models/ExternalImportCreatedSuccessEnvelope.d.ts +1 -1
  154. package/dist/openapi/models/ExternalImportCreatedSuccessEnvelope.js +1 -1
  155. package/dist/openapi/models/ExternalImportRequest.d.ts +1 -1
  156. package/dist/openapi/models/ExternalImportRequest.js +1 -1
  157. package/dist/openapi/models/ExternalImportToken.d.ts +1 -1
  158. package/dist/openapi/models/ExternalImportToken.js +1 -1
  159. package/dist/openapi/models/ExternalSource.d.ts +1 -1
  160. package/dist/openapi/models/ExternalSource.js +1 -1
  161. package/dist/openapi/models/FeatureNotAvailableResponse.d.ts +1 -1
  162. package/dist/openapi/models/FeatureNotAvailableResponse.js +1 -1
  163. package/dist/openapi/models/FeatureTierRestrictedResponse.d.ts +1 -1
  164. package/dist/openapi/models/FeatureTierRestrictedResponse.js +1 -1
  165. package/dist/openapi/models/FeatureViolation.d.ts +1 -1
  166. package/dist/openapi/models/FeatureViolation.js +1 -1
  167. package/dist/openapi/models/ForgotPasswordRequest.d.ts +1 -1
  168. package/dist/openapi/models/ForgotPasswordRequest.js +1 -1
  169. package/dist/openapi/models/ImageEncodeCapabilities.d.ts +1 -1
  170. package/dist/openapi/models/ImageEncodeCapabilities.js +1 -1
  171. package/dist/openapi/models/JobDefinition.d.ts +1 -1
  172. package/dist/openapi/models/JobDefinition.js +1 -1
  173. package/dist/openapi/models/JobDownload.d.ts +1 -1
  174. package/dist/openapi/models/JobDownload.js +1 -1
  175. package/dist/openapi/models/JobInputV2.d.ts +1 -1
  176. package/dist/openapi/models/JobInputV2.js +1 -1
  177. package/dist/openapi/models/JobMediaClass.d.ts +1 -1
  178. package/dist/openapi/models/JobMediaClass.js +1 -1
  179. package/dist/openapi/models/JobOutputSource.d.ts +1 -1
  180. package/dist/openapi/models/JobOutputSource.js +1 -1
  181. package/dist/openapi/models/JobResponse.d.ts +1 -1
  182. package/dist/openapi/models/JobResponse.js +1 -1
  183. package/dist/openapi/models/JobStatus.d.ts +1 -1
  184. package/dist/openapi/models/JobStatus.js +1 -1
  185. package/dist/openapi/models/JobType.d.ts +1 -1
  186. package/dist/openapi/models/JobType.js +1 -1
  187. package/dist/openapi/models/LivenessResponse.d.ts +1 -1
  188. package/dist/openapi/models/LivenessResponse.js +1 -1
  189. package/dist/openapi/models/LoginUser200Response.d.ts +1 -1
  190. package/dist/openapi/models/LoginUser200Response.js +1 -1
  191. package/dist/openapi/models/LoginUser200ResponseData.d.ts +1 -1
  192. package/dist/openapi/models/LoginUser200ResponseData.js +1 -1
  193. package/dist/openapi/models/LoginUser200ResponseDataUser.d.ts +1 -1
  194. package/dist/openapi/models/LoginUser200ResponseDataUser.js +1 -1
  195. package/dist/openapi/models/LoginUserRequest.d.ts +1 -1
  196. package/dist/openapi/models/LoginUserRequest.js +1 -1
  197. package/dist/openapi/models/LongFormConcurrencyLimitResponse.d.ts +1 -1
  198. package/dist/openapi/models/LongFormConcurrencyLimitResponse.js +1 -1
  199. package/dist/openapi/models/LongFormConcurrencyLimitResponseAllOfLinks.d.ts +1 -1
  200. package/dist/openapi/models/LongFormConcurrencyLimitResponseAllOfLinks.js +1 -1
  201. package/dist/openapi/models/MetadataResponse.d.ts +1 -1
  202. package/dist/openapi/models/MetadataResponse.js +1 -1
  203. package/dist/openapi/models/MetadataResponseDimensions.d.ts +1 -1
  204. package/dist/openapi/models/MetadataResponseDimensions.js +1 -1
  205. package/dist/openapi/models/MetadataResponseExif.d.ts +1 -1
  206. package/dist/openapi/models/MetadataResponseExif.js +1 -1
  207. package/dist/openapi/models/MetadataResponseExifGps.d.ts +1 -1
  208. package/dist/openapi/models/MetadataResponseExifGps.js +1 -1
  209. package/dist/openapi/models/MetadataSuccessEnvelope.d.ts +1 -1
  210. package/dist/openapi/models/MetadataSuccessEnvelope.js +1 -1
  211. package/dist/openapi/models/MimeGroupSchema.d.ts +1 -1
  212. package/dist/openapi/models/MimeGroupSchema.js +1 -1
  213. package/dist/openapi/models/MultiInputSource.d.ts +1 -1
  214. package/dist/openapi/models/MultiInputSource.js +1 -1
  215. package/dist/openapi/models/MultipartCompleteRequest.d.ts +1 -1
  216. package/dist/openapi/models/MultipartCompleteRequest.js +1 -1
  217. package/dist/openapi/models/MultipartCompleteRequestPartsInner.d.ts +1 -1
  218. package/dist/openapi/models/MultipartCompleteRequestPartsInner.js +1 -1
  219. package/dist/openapi/models/MultipartCompleteResponse.d.ts +1 -1
  220. package/dist/openapi/models/MultipartCompleteResponse.js +1 -1
  221. package/dist/openapi/models/MultipartCompleteSuccessEnvelope.d.ts +1 -1
  222. package/dist/openapi/models/MultipartCompleteSuccessEnvelope.js +1 -1
  223. package/dist/openapi/models/MultipartInitiateRequestMetadataHint.d.ts +1 -1
  224. package/dist/openapi/models/MultipartInitiateRequestMetadataHint.js +1 -1
  225. package/dist/openapi/models/MultipartInitiateResponse.d.ts +1 -1
  226. package/dist/openapi/models/MultipartInitiateResponse.js +1 -1
  227. package/dist/openapi/models/MultipartInitiateSuccessEnvelope.d.ts +1 -1
  228. package/dist/openapi/models/MultipartInitiateSuccessEnvelope.js +1 -1
  229. package/dist/openapi/models/MultipartKeepaliveResponse.d.ts +1 -1
  230. package/dist/openapi/models/MultipartKeepaliveResponse.js +1 -1
  231. package/dist/openapi/models/MultipartKeepaliveSuccessEnvelope.d.ts +1 -1
  232. package/dist/openapi/models/MultipartKeepaliveSuccessEnvelope.js +1 -1
  233. package/dist/openapi/models/MultipartPartListing.d.ts +1 -1
  234. package/dist/openapi/models/MultipartPartListing.js +1 -1
  235. package/dist/openapi/models/MultipartPresignRequest.d.ts +1 -1
  236. package/dist/openapi/models/MultipartPresignRequest.js +1 -1
  237. package/dist/openapi/models/MultipartPresignResponse.d.ts +1 -1
  238. package/dist/openapi/models/MultipartPresignResponse.js +1 -1
  239. package/dist/openapi/models/MultipartPresignSuccessEnvelope.d.ts +1 -1
  240. package/dist/openapi/models/MultipartPresignSuccessEnvelope.js +1 -1
  241. package/dist/openapi/models/MultipartStatusResponse.d.ts +1 -1
  242. package/dist/openapi/models/MultipartStatusResponse.js +1 -1
  243. package/dist/openapi/models/MultipartStatusSuccessEnvelope.d.ts +1 -1
  244. package/dist/openapi/models/MultipartStatusSuccessEnvelope.js +1 -1
  245. package/dist/openapi/models/OperationCapability.d.ts +1 -1
  246. package/dist/openapi/models/OperationCapability.js +1 -1
  247. package/dist/openapi/models/OperationDefinition.d.ts +1 -1
  248. package/dist/openapi/models/OperationDefinition.js +1 -1
  249. package/dist/openapi/models/OperationDownload.d.ts +1 -1
  250. package/dist/openapi/models/OperationDownload.js +1 -1
  251. package/dist/openapi/models/OperationInputModel.d.ts +1 -1
  252. package/dist/openapi/models/OperationInputModel.js +1 -1
  253. package/dist/openapi/models/OperationResponse.d.ts +1 -1
  254. package/dist/openapi/models/OperationResponse.js +1 -1
  255. package/dist/openapi/models/OperationResult.d.ts +1 -1
  256. package/dist/openapi/models/OperationResult.js +1 -1
  257. package/dist/openapi/models/OperationResultMetadata.d.ts +1 -1
  258. package/dist/openapi/models/OperationResultMetadata.js +1 -1
  259. package/dist/openapi/models/OperationResultMetrics.d.ts +1 -1
  260. package/dist/openapi/models/OperationResultMetrics.js +1 -1
  261. package/dist/openapi/models/OperationSchemaDefinition.d.ts +1 -1
  262. package/dist/openapi/models/OperationSchemaDefinition.js +1 -1
  263. package/dist/openapi/models/OperationStatus.d.ts +1 -1
  264. package/dist/openapi/models/OperationStatus.js +1 -1
  265. package/dist/openapi/models/OperationType.d.ts +1 -1
  266. package/dist/openapi/models/OperationType.js +1 -1
  267. package/dist/openapi/models/OperationsSchemaResponse.d.ts +1 -1
  268. package/dist/openapi/models/OperationsSchemaResponse.js +1 -1
  269. package/dist/openapi/models/OperationsSchemaResponseWorkflowFeatures.d.ts +1 -1
  270. package/dist/openapi/models/OperationsSchemaResponseWorkflowFeatures.js +1 -1
  271. package/dist/openapi/models/OperationsSchemaResponseWorkflowFeaturesDelivery.d.ts +1 -1
  272. package/dist/openapi/models/OperationsSchemaResponseWorkflowFeaturesDelivery.js +1 -1
  273. package/dist/openapi/models/OperationsSchemaResponseWorkflowFeaturesDeliveryMode.d.ts +1 -1
  274. package/dist/openapi/models/OperationsSchemaResponseWorkflowFeaturesDeliveryMode.js +1 -1
  275. package/dist/openapi/models/OperationsSchemaResponseWorkflowFeaturesDeliverySelection.d.ts +1 -1
  276. package/dist/openapi/models/OperationsSchemaResponseWorkflowFeaturesDeliverySelection.js +1 -1
  277. package/dist/openapi/models/OptionSchema.d.ts +1 -1
  278. package/dist/openapi/models/OptionSchema.js +1 -1
  279. package/dist/openapi/models/OutputProperties.d.ts +1 -1
  280. package/dist/openapi/models/OutputProperties.js +1 -1
  281. package/dist/openapi/models/OutputPropertiesIsAnimated.d.ts +1 -1
  282. package/dist/openapi/models/OutputPropertiesIsAnimated.js +1 -1
  283. package/dist/openapi/models/PerRoleCardinalityEntry.d.ts +1 -1
  284. package/dist/openapi/models/PerRoleCardinalityEntry.js +1 -1
  285. package/dist/openapi/models/PerValueAvailabilityEntry.d.ts +1 -1
  286. package/dist/openapi/models/PerValueAvailabilityEntry.js +1 -1
  287. package/dist/openapi/models/PresignedUrlPart.d.ts +1 -1
  288. package/dist/openapi/models/PresignedUrlPart.js +1 -1
  289. package/dist/openapi/models/ProbePendingResponse.d.ts +1 -1
  290. package/dist/openapi/models/ProbePendingResponse.js +1 -1
  291. package/dist/openapi/models/ProcessingClass.d.ts +1 -1
  292. package/dist/openapi/models/ProcessingClass.js +1 -1
  293. package/dist/openapi/models/ProcessingClassBandViolation.d.ts +1 -1
  294. package/dist/openapi/models/ProcessingClassBandViolation.js +1 -1
  295. package/dist/openapi/models/ProcessingClassConstraints.d.ts +1 -1
  296. package/dist/openapi/models/ProcessingClassConstraints.js +1 -1
  297. package/dist/openapi/models/ProcessingClassEntry.d.ts +1 -1
  298. package/dist/openapi/models/ProcessingClassEntry.js +1 -1
  299. package/dist/openapi/models/ProcessingClassExceedsBandResponse.d.ts +1 -1
  300. package/dist/openapi/models/ProcessingClassExceedsBandResponse.js +1 -1
  301. package/dist/openapi/models/ProcessingClassHint.d.ts +1 -1
  302. package/dist/openapi/models/ProcessingClassHint.js +1 -1
  303. package/dist/openapi/models/ProcessingClassReason.d.ts +1 -1
  304. package/dist/openapi/models/ProcessingClassReason.js +1 -1
  305. package/dist/openapi/models/ProcessingClassRejectReason.d.ts +1 -1
  306. package/dist/openapi/models/ProcessingClassRejectReason.js +1 -1
  307. package/dist/openapi/models/ProcessingPlan.d.ts +1 -1
  308. package/dist/openapi/models/ProcessingPlan.js +1 -1
  309. package/dist/openapi/models/ProcessingPlanJob.d.ts +1 -1
  310. package/dist/openapi/models/ProcessingPlanJob.js +1 -1
  311. package/dist/openapi/models/ReEncodeDecision.d.ts +1 -1
  312. package/dist/openapi/models/ReEncodeDecision.js +1 -1
  313. package/dist/openapi/models/ReadinessResponse.d.ts +1 -1
  314. package/dist/openapi/models/ReadinessResponse.js +1 -1
  315. package/dist/openapi/models/RegisterUser422Response.d.ts +1 -1
  316. package/dist/openapi/models/RegisterUser422Response.js +1 -1
  317. package/dist/openapi/models/RegisterUserRequest.d.ts +1 -1
  318. package/dist/openapi/models/RegisterUserRequest.js +1 -1
  319. package/dist/openapi/models/ResetPasswordRequest.d.ts +1 -1
  320. package/dist/openapi/models/ResetPasswordRequest.js +1 -1
  321. package/dist/openapi/models/ResponseEnvelope.d.ts +1 -1
  322. package/dist/openapi/models/ResponseEnvelope.js +1 -1
  323. package/dist/openapi/models/RetryResponse.d.ts +1 -1
  324. package/dist/openapi/models/RetryResponse.js +1 -1
  325. package/dist/openapi/models/RetrySuccessEnvelope.d.ts +1 -1
  326. package/dist/openapi/models/RetrySuccessEnvelope.js +1 -1
  327. package/dist/openapi/models/SseCompletionBase.d.ts +1 -1
  328. package/dist/openapi/models/SseCompletionBase.js +1 -1
  329. package/dist/openapi/models/SseEventType.d.ts +1 -1
  330. package/dist/openapi/models/SseEventType.js +1 -1
  331. package/dist/openapi/models/SseJobCompletedData.d.ts +1 -1
  332. package/dist/openapi/models/SseJobCompletedData.js +1 -1
  333. package/dist/openapi/models/SseJobFailedData.d.ts +1 -1
  334. package/dist/openapi/models/SseJobFailedData.js +1 -1
  335. package/dist/openapi/models/SseMultiOutputCompletion.d.ts +1 -1
  336. package/dist/openapi/models/SseMultiOutputCompletion.js +1 -1
  337. package/dist/openapi/models/SseMultiOutputCompletionMetrics.d.ts +1 -1
  338. package/dist/openapi/models/SseMultiOutputCompletionMetrics.js +1 -1
  339. package/dist/openapi/models/SseMultiOutputCompletionWithKind.d.ts +1 -1
  340. package/dist/openapi/models/SseMultiOutputCompletionWithKind.js +1 -1
  341. package/dist/openapi/models/SseMultiOutputResultEntry.d.ts +1 -1
  342. package/dist/openapi/models/SseMultiOutputResultEntry.js +1 -1
  343. package/dist/openapi/models/SseOperationCompletedData.d.ts +1 -1
  344. package/dist/openapi/models/SseOperationCompletedData.js +1 -1
  345. package/dist/openapi/models/SseOperationCompletionResult.d.ts +1 -1
  346. package/dist/openapi/models/SseOperationCompletionResult.js +1 -1
  347. package/dist/openapi/models/SseOperationFailedData.d.ts +1 -1
  348. package/dist/openapi/models/SseOperationFailedData.js +1 -1
  349. package/dist/openapi/models/SseOperationProgressData.d.ts +1 -1
  350. package/dist/openapi/models/SseOperationProgressData.js +1 -1
  351. package/dist/openapi/models/SseSingleOutputCompletion.d.ts +1 -1
  352. package/dist/openapi/models/SseSingleOutputCompletion.js +1 -1
  353. package/dist/openapi/models/SseWorkflowTerminalData.d.ts +1 -1
  354. package/dist/openapi/models/SseWorkflowTerminalData.js +1 -1
  355. package/dist/openapi/models/TierRestrictionKind.d.ts +1 -1
  356. package/dist/openapi/models/TierRestrictionKind.js +1 -1
  357. package/dist/openapi/models/TierRestrictionResponse.d.ts +1 -1
  358. package/dist/openapi/models/TierRestrictionResponse.js +1 -1
  359. package/dist/openapi/models/UpdateProfile200Response.d.ts +1 -1
  360. package/dist/openapi/models/UpdateProfile200Response.js +1 -1
  361. package/dist/openapi/models/UpdateProfile200ResponseData.d.ts +1 -1
  362. package/dist/openapi/models/UpdateProfile200ResponseData.js +1 -1
  363. package/dist/openapi/models/UpdateProfile422Response.d.ts +1 -1
  364. package/dist/openapi/models/UpdateProfile422Response.js +1 -1
  365. package/dist/openapi/models/UpdateProfileRequest.d.ts +1 -1
  366. package/dist/openapi/models/UpdateProfileRequest.js +1 -1
  367. package/dist/openapi/models/UploadConstraintsApplied.d.ts +1 -1
  368. package/dist/openapi/models/UploadConstraintsApplied.js +1 -1
  369. package/dist/openapi/models/UploadDurationExceedsTierResponse.d.ts +1 -1
  370. package/dist/openapi/models/UploadDurationExceedsTierResponse.js +1 -1
  371. package/dist/openapi/models/UploadFile403Response.d.ts +1 -1
  372. package/dist/openapi/models/UploadFile403Response.js +1 -1
  373. package/dist/openapi/models/UploadFile422Response.d.ts +1 -1
  374. package/dist/openapi/models/UploadFile422Response.js +1 -1
  375. package/dist/openapi/models/UploadProbeMediaMetadata.d.ts +1 -1
  376. package/dist/openapi/models/UploadProbeMediaMetadata.js +1 -1
  377. package/dist/openapi/models/UploadProbeProcessingClass.d.ts +1 -1
  378. package/dist/openapi/models/UploadProbeProcessingClass.js +1 -1
  379. package/dist/openapi/models/UploadProbeResponse.d.ts +1 -1
  380. package/dist/openapi/models/UploadProbeResponse.js +1 -1
  381. package/dist/openapi/models/UploadProbeStatus.d.ts +1 -1
  382. package/dist/openapi/models/UploadProbeStatus.js +1 -1
  383. package/dist/openapi/models/UploadProbeSuccessEnvelope.d.ts +1 -1
  384. package/dist/openapi/models/UploadProbeSuccessEnvelope.js +1 -1
  385. package/dist/openapi/models/UploadResponse.d.ts +1 -1
  386. package/dist/openapi/models/UploadResponse.js +1 -1
  387. package/dist/openapi/models/UploadSizeExceedsTierResponse.d.ts +1 -1
  388. package/dist/openapi/models/UploadSizeExceedsTierResponse.js +1 -1
  389. package/dist/openapi/models/UploadSource.d.ts +1 -1
  390. package/dist/openapi/models/UploadSource.js +1 -1
  391. package/dist/openapi/models/UploadSuccessEnvelope.d.ts +1 -1
  392. package/dist/openapi/models/UploadSuccessEnvelope.js +1 -1
  393. package/dist/openapi/models/UploadThresholds.d.ts +1 -1
  394. package/dist/openapi/models/UploadThresholds.js +1 -1
  395. package/dist/openapi/models/UserTier.d.ts +1 -1
  396. package/dist/openapi/models/UserTier.js +1 -1
  397. package/dist/openapi/models/ValidationErrorEnvelope.d.ts +1 -1
  398. package/dist/openapi/models/ValidationErrorEnvelope.js +1 -1
  399. package/dist/openapi/models/ValidationErrorEnvelopeDetailsInner.d.ts +1 -1
  400. package/dist/openapi/models/ValidationErrorEnvelopeDetailsInner.js +1 -1
  401. package/dist/openapi/models/VerifyEmailRequest.d.ts +1 -1
  402. package/dist/openapi/models/VerifyEmailRequest.js +1 -1
  403. package/dist/openapi/models/WarningType.d.ts +1 -1
  404. package/dist/openapi/models/WarningType.js +1 -1
  405. package/dist/openapi/models/WebhookOperationContext.d.ts +1 -1
  406. package/dist/openapi/models/WebhookOperationContext.js +1 -1
  407. package/dist/openapi/models/WebhookPayload.d.ts +1 -1
  408. package/dist/openapi/models/WebhookPayload.js +1 -1
  409. package/dist/openapi/models/WorkflowCancelBillingEffect.d.ts +1 -1
  410. package/dist/openapi/models/WorkflowCancelBillingEffect.js +1 -1
  411. package/dist/openapi/models/WorkflowCancelResponse.d.ts +1 -1
  412. package/dist/openapi/models/WorkflowCancelResponse.js +1 -1
  413. package/dist/openapi/models/WorkflowCancelSuccessEnvelope.d.ts +1 -1
  414. package/dist/openapi/models/WorkflowCancelSuccessEnvelope.js +1 -1
  415. package/dist/openapi/models/WorkflowCreateRequest.d.ts +1 -1
  416. package/dist/openapi/models/WorkflowCreateRequest.js +1 -1
  417. package/dist/openapi/models/WorkflowCreateResponse.d.ts +1 -1
  418. package/dist/openapi/models/WorkflowCreateResponse.js +1 -1
  419. package/dist/openapi/models/WorkflowCreateSuccessEnvelope.d.ts +1 -1
  420. package/dist/openapi/models/WorkflowCreateSuccessEnvelope.js +1 -1
  421. package/dist/openapi/models/WorkflowCreditSummary.d.ts +1 -1
  422. package/dist/openapi/models/WorkflowCreditSummary.js +1 -1
  423. package/dist/openapi/models/WorkflowDownloadResponse.d.ts +26 -1
  424. package/dist/openapi/models/WorkflowDownloadResponse.js +3 -1
  425. package/dist/openapi/models/WorkflowDownloadSuccessEnvelope.d.ts +1 -1
  426. package/dist/openapi/models/WorkflowDownloadSuccessEnvelope.js +1 -1
  427. package/dist/openapi/models/WorkflowEdge.d.ts +1 -1
  428. package/dist/openapi/models/WorkflowEdge.js +1 -1
  429. package/dist/openapi/models/WorkflowExpiredResponse.d.ts +1 -1
  430. package/dist/openapi/models/WorkflowExpiredResponse.js +1 -1
  431. package/dist/openapi/models/WorkflowListResponse.d.ts +1 -1
  432. package/dist/openapi/models/WorkflowListResponse.js +1 -1
  433. package/dist/openapi/models/WorkflowListSuccessEnvelope.d.ts +1 -1
  434. package/dist/openapi/models/WorkflowListSuccessEnvelope.js +1 -1
  435. package/dist/openapi/models/WorkflowPauseRequiredAction.d.ts +1 -1
  436. package/dist/openapi/models/WorkflowPauseRequiredAction.js +1 -1
  437. package/dist/openapi/models/WorkflowPausedDetail.d.ts +1 -1
  438. package/dist/openapi/models/WorkflowPausedDetail.js +1 -1
  439. package/dist/openapi/models/WorkflowPausedDetailLinks.d.ts +1 -1
  440. package/dist/openapi/models/WorkflowPausedDetailLinks.js +1 -1
  441. package/dist/openapi/models/WorkflowProcessing.d.ts +1 -1
  442. package/dist/openapi/models/WorkflowProcessing.js +1 -1
  443. package/dist/openapi/models/WorkflowResumeResponse.d.ts +1 -1
  444. package/dist/openapi/models/WorkflowResumeResponse.js +1 -1
  445. package/dist/openapi/models/WorkflowResumeSuccessEnvelope.d.ts +1 -1
  446. package/dist/openapi/models/WorkflowResumeSuccessEnvelope.js +1 -1
  447. package/dist/openapi/models/WorkflowSource.d.ts +1 -1
  448. package/dist/openapi/models/WorkflowSource.js +1 -1
  449. package/dist/openapi/models/WorkflowStatus.d.ts +1 -1
  450. package/dist/openapi/models/WorkflowStatus.js +1 -1
  451. package/dist/openapi/models/WorkflowStatusResponse.d.ts +19 -1
  452. package/dist/openapi/models/WorkflowStatusResponse.js +3 -1
  453. package/dist/openapi/models/WorkflowStatusSuccessEnvelope.d.ts +1 -1
  454. package/dist/openapi/models/WorkflowStatusSuccessEnvelope.js +1 -1
  455. package/dist/openapi/models/WorkflowSummary.d.ts +16 -1
  456. package/dist/openapi/models/WorkflowSummary.js +3 -1
  457. package/dist/openapi/models/WorkflowSummaryJob.d.ts +1 -1
  458. package/dist/openapi/models/WorkflowSummaryJob.js +1 -1
  459. package/dist/openapi/models/WorkflowWarning.d.ts +1 -1
  460. package/dist/openapi/models/WorkflowWarning.js +1 -1
  461. package/dist/openapi/models/WorkflowWarningSeverity.d.ts +1 -1
  462. package/dist/openapi/models/WorkflowWarningSeverity.js +1 -1
  463. package/dist/openapi/runtime.d.ts +1 -1
  464. package/dist/openapi/runtime.js +1 -1
  465. package/openapi/api.yaml +53 -1
  466. package/operation-capabilities/operation-capabilities.json +111 -3
  467. package/package.json +1 -1
@@ -2,7 +2,7 @@
2
2
  * GISL Compression API
3
3
  * REST API for the GISL (Give It Smaller) file compression and processing service. **Architecture:** - Upload files to get a `file_id` - Create workflows referencing uploaded files with operations (compress, thumbnail, image_watermark, text_watermark, merge, archive, convert, custom_luma, audio_overlay, audio_watermark) - Poll status, stream SSE events, or receive webhook callbacks - Download results per operation output **Response envelope:** All mutation and query endpoints return `{ success: true, data: {...} }` on success and `{ success: false, error: \"...\", details: [...] }` on failure. Exceptions: `GET /api/operations/schema` returns raw JSON (per-tier private caching with ETag revalidation per ADR-0002 + I3), health probes return flat objects, and `POST /api/contact` returns 204 with no body. **Availability metadata.** This spec uses the `x-availability` vendor extension as **decorative documentation only**. Per [ADR-0001](../docs/decisions/0001-contract-first-availability.md) §1.5, the runtime endpoint `GET /api/operations/schema` (ticket I3) is the authoritative source; the sidecar `availability.json` (ticket I3b) is the authoritative companion (generated, never hand-edited; CI cross-checks runtime ⇄ sidecar). SDKs MUST NOT depend on `x-availability` reaching generated code — code-generators that surface vendor extensions may emit it as documentation, but consumers read availability from the runtime endpoint, not from the generated bindings. The 5-value vocabulary (`stable | beta | experimental | planned | deprecated`) is defined in the `AvailabilityValue` schema. See `schemas/FORMAT.md` §Availability Taxonomy for the operational rules (parser obligation: absent = stable; per-enum-value granularity is the `per_value_availability` primitive landed via ticket I17). **Localisation (per ticket [I26](https://trello.com/c/rcnqwgI4)).** Error responses + paused/blocked workflow statuses carry a localised human-readable `message` alongside a stable, never-localised `message_key`. Machine-readable fields (`error`, enum values, status codes) stay canonical English. - **Currently committed locales:** `en-GB` only (per ticket [`4GKyuYo6`](https://trello.com/c/4GKyuYo6)). The I26 carrier shape (`Accept-Language` + `Content-Language` + `Vary` headers + `locale` envelope field + `message_key` + `message_params`) is stable and exercised; the **catalog** of translated `message` strings is en-GB-only at runtime today. Additional locales (e.g. `pt-PT`) will be advertised by name when their catalogs ship — the request/response carrier shape does NOT change when a new locale lands. Treat unrequested locales as \"machine-code + `message_key` path is committed; localised `message` prose is not\" until this prose enumerates them by name. - **Request:** `Accept-Language` header per RFC 9110 §12.5.4 (q-value negotiation supported). The server selects the best-match locale from its supported list; falls back to `en-GB` when no match — which, until additional catalogs land, is every non-`en-GB` `Accept-Language`. - **Response:** `Content-Language: <locale>` echo on every localised response; `Vary: Accept-Language` on every response (CDN/cache correctness — different `Accept-Language` requests produce different responses). `Vary` is emitted unconditionally so the header contract does not flip when a second locale ships. - **Fallback locale:** `en-GB` (also the canonical locale for `message_key` translations and English `message` prose). - **SDK guidance:** switch on `error` (machine code) for typed error branches; surface `message_key` to client-side i18n catalogs (SDK companion work tracked at X19, cross-repo); display `message` for end-user UI; **never parse `message` for control flow** — it changes per locale. Carrier shape lives on `ErrorEnvelope` (envelope-level optional `message_key` + `message` + `locale` + `message_params`) and `ValidationErrorEnvelope` (also per-`details[]` entry). Existing 402 / 403 / 422 envelopes (`BalanceExhaustedResponse`, `FeatureNotAvailableResponse`, `FeatureTierRestrictedResponse`, `WorkflowPausedDetail`) inherit the convention. **Upload thresholds (per tickets [u0ar7Yye](https://trello.com/c/u0ar7Yye) + [58nBQLWQ](https://trello.com/c/58nBQLWQ)).** Canonical upload constants (single-shot cap, multipart chunk size, multipart concurrency default, multipart first-chunk size) live on the `UploadThresholds` schema with `const:`-pinned values. SDK generators emit these as typed binding constants so frontend / API / SDKs reference one source of truth instead of hardcoding magic numbers. A runtime `GET /api/uploads/limits` endpoint for dynamic discovery (per-tier / per-environment overrides) is a deferred follow-up.
4
4
  *
5
- * The version of the OpenAPI document: 2.154.0
5
+ * The version of the OpenAPI document: 2.158.0
6
6
  *
7
7
  *
8
8
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -4,7 +4,7 @@
4
4
  * GISL Compression API
5
5
  * REST API for the GISL (Give It Smaller) file compression and processing service. **Architecture:** - Upload files to get a `file_id` - Create workflows referencing uploaded files with operations (compress, thumbnail, image_watermark, text_watermark, merge, archive, convert, custom_luma, audio_overlay, audio_watermark) - Poll status, stream SSE events, or receive webhook callbacks - Download results per operation output **Response envelope:** All mutation and query endpoints return `{ success: true, data: {...} }` on success and `{ success: false, error: \"...\", details: [...] }` on failure. Exceptions: `GET /api/operations/schema` returns raw JSON (per-tier private caching with ETag revalidation per ADR-0002 + I3), health probes return flat objects, and `POST /api/contact` returns 204 with no body. **Availability metadata.** This spec uses the `x-availability` vendor extension as **decorative documentation only**. Per [ADR-0001](../docs/decisions/0001-contract-first-availability.md) §1.5, the runtime endpoint `GET /api/operations/schema` (ticket I3) is the authoritative source; the sidecar `availability.json` (ticket I3b) is the authoritative companion (generated, never hand-edited; CI cross-checks runtime ⇄ sidecar). SDKs MUST NOT depend on `x-availability` reaching generated code — code-generators that surface vendor extensions may emit it as documentation, but consumers read availability from the runtime endpoint, not from the generated bindings. The 5-value vocabulary (`stable | beta | experimental | planned | deprecated`) is defined in the `AvailabilityValue` schema. See `schemas/FORMAT.md` §Availability Taxonomy for the operational rules (parser obligation: absent = stable; per-enum-value granularity is the `per_value_availability` primitive landed via ticket I17). **Localisation (per ticket [I26](https://trello.com/c/rcnqwgI4)).** Error responses + paused/blocked workflow statuses carry a localised human-readable `message` alongside a stable, never-localised `message_key`. Machine-readable fields (`error`, enum values, status codes) stay canonical English. - **Currently committed locales:** `en-GB` only (per ticket [`4GKyuYo6`](https://trello.com/c/4GKyuYo6)). The I26 carrier shape (`Accept-Language` + `Content-Language` + `Vary` headers + `locale` envelope field + `message_key` + `message_params`) is stable and exercised; the **catalog** of translated `message` strings is en-GB-only at runtime today. Additional locales (e.g. `pt-PT`) will be advertised by name when their catalogs ship — the request/response carrier shape does NOT change when a new locale lands. Treat unrequested locales as \"machine-code + `message_key` path is committed; localised `message` prose is not\" until this prose enumerates them by name. - **Request:** `Accept-Language` header per RFC 9110 §12.5.4 (q-value negotiation supported). The server selects the best-match locale from its supported list; falls back to `en-GB` when no match — which, until additional catalogs land, is every non-`en-GB` `Accept-Language`. - **Response:** `Content-Language: <locale>` echo on every localised response; `Vary: Accept-Language` on every response (CDN/cache correctness — different `Accept-Language` requests produce different responses). `Vary` is emitted unconditionally so the header contract does not flip when a second locale ships. - **Fallback locale:** `en-GB` (also the canonical locale for `message_key` translations and English `message` prose). - **SDK guidance:** switch on `error` (machine code) for typed error branches; surface `message_key` to client-side i18n catalogs (SDK companion work tracked at X19, cross-repo); display `message` for end-user UI; **never parse `message` for control flow** — it changes per locale. Carrier shape lives on `ErrorEnvelope` (envelope-level optional `message_key` + `message` + `locale` + `message_params`) and `ValidationErrorEnvelope` (also per-`details[]` entry). Existing 402 / 403 / 422 envelopes (`BalanceExhaustedResponse`, `FeatureNotAvailableResponse`, `FeatureTierRestrictedResponse`, `WorkflowPausedDetail`) inherit the convention. **Upload thresholds (per tickets [u0ar7Yye](https://trello.com/c/u0ar7Yye) + [58nBQLWQ](https://trello.com/c/58nBQLWQ)).** Canonical upload constants (single-shot cap, multipart chunk size, multipart concurrency default, multipart first-chunk size) live on the `UploadThresholds` schema with `const:`-pinned values. SDK generators emit these as typed binding constants so frontend / API / SDKs reference one source of truth instead of hardcoding magic numbers. A runtime `GET /api/uploads/limits` endpoint for dynamic discovery (per-tier / per-environment overrides) is a deferred follow-up.
6
6
  *
7
- * The version of the OpenAPI document: 2.154.0
7
+ * The version of the OpenAPI document: 2.158.0
8
8
  *
9
9
  *
10
10
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -2,7 +2,7 @@
2
2
  * GISL Compression API
3
3
  * REST API for the GISL (Give It Smaller) file compression and processing service. **Architecture:** - Upload files to get a `file_id` - Create workflows referencing uploaded files with operations (compress, thumbnail, image_watermark, text_watermark, merge, archive, convert, custom_luma, audio_overlay, audio_watermark) - Poll status, stream SSE events, or receive webhook callbacks - Download results per operation output **Response envelope:** All mutation and query endpoints return `{ success: true, data: {...} }` on success and `{ success: false, error: \"...\", details: [...] }` on failure. Exceptions: `GET /api/operations/schema` returns raw JSON (per-tier private caching with ETag revalidation per ADR-0002 + I3), health probes return flat objects, and `POST /api/contact` returns 204 with no body. **Availability metadata.** This spec uses the `x-availability` vendor extension as **decorative documentation only**. Per [ADR-0001](../docs/decisions/0001-contract-first-availability.md) §1.5, the runtime endpoint `GET /api/operations/schema` (ticket I3) is the authoritative source; the sidecar `availability.json` (ticket I3b) is the authoritative companion (generated, never hand-edited; CI cross-checks runtime ⇄ sidecar). SDKs MUST NOT depend on `x-availability` reaching generated code — code-generators that surface vendor extensions may emit it as documentation, but consumers read availability from the runtime endpoint, not from the generated bindings. The 5-value vocabulary (`stable | beta | experimental | planned | deprecated`) is defined in the `AvailabilityValue` schema. See `schemas/FORMAT.md` §Availability Taxonomy for the operational rules (parser obligation: absent = stable; per-enum-value granularity is the `per_value_availability` primitive landed via ticket I17). **Localisation (per ticket [I26](https://trello.com/c/rcnqwgI4)).** Error responses + paused/blocked workflow statuses carry a localised human-readable `message` alongside a stable, never-localised `message_key`. Machine-readable fields (`error`, enum values, status codes) stay canonical English. - **Currently committed locales:** `en-GB` only (per ticket [`4GKyuYo6`](https://trello.com/c/4GKyuYo6)). The I26 carrier shape (`Accept-Language` + `Content-Language` + `Vary` headers + `locale` envelope field + `message_key` + `message_params`) is stable and exercised; the **catalog** of translated `message` strings is en-GB-only at runtime today. Additional locales (e.g. `pt-PT`) will be advertised by name when their catalogs ship — the request/response carrier shape does NOT change when a new locale lands. Treat unrequested locales as \"machine-code + `message_key` path is committed; localised `message` prose is not\" until this prose enumerates them by name. - **Request:** `Accept-Language` header per RFC 9110 §12.5.4 (q-value negotiation supported). The server selects the best-match locale from its supported list; falls back to `en-GB` when no match — which, until additional catalogs land, is every non-`en-GB` `Accept-Language`. - **Response:** `Content-Language: <locale>` echo on every localised response; `Vary: Accept-Language` on every response (CDN/cache correctness — different `Accept-Language` requests produce different responses). `Vary` is emitted unconditionally so the header contract does not flip when a second locale ships. - **Fallback locale:** `en-GB` (also the canonical locale for `message_key` translations and English `message` prose). - **SDK guidance:** switch on `error` (machine code) for typed error branches; surface `message_key` to client-side i18n catalogs (SDK companion work tracked at X19, cross-repo); display `message` for end-user UI; **never parse `message` for control flow** — it changes per locale. Carrier shape lives on `ErrorEnvelope` (envelope-level optional `message_key` + `message` + `locale` + `message_params`) and `ValidationErrorEnvelope` (also per-`details[]` entry). Existing 402 / 403 / 422 envelopes (`BalanceExhaustedResponse`, `FeatureNotAvailableResponse`, `FeatureTierRestrictedResponse`, `WorkflowPausedDetail`) inherit the convention. **Upload thresholds (per tickets [u0ar7Yye](https://trello.com/c/u0ar7Yye) + [58nBQLWQ](https://trello.com/c/58nBQLWQ)).** Canonical upload constants (single-shot cap, multipart chunk size, multipart concurrency default, multipart first-chunk size) live on the `UploadThresholds` schema with `const:`-pinned values. SDK generators emit these as typed binding constants so frontend / API / SDKs reference one source of truth instead of hardcoding magic numbers. A runtime `GET /api/uploads/limits` endpoint for dynamic discovery (per-tier / per-environment overrides) is a deferred follow-up.
4
4
  *
5
- * The version of the OpenAPI document: 2.154.0
5
+ * The version of the OpenAPI document: 2.158.0
6
6
  *
7
7
  *
8
8
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -54,6 +54,24 @@ export interface WorkflowStatusResponse {
54
54
  * @memberof WorkflowStatusResponse
55
55
  */
56
56
  updatedAt: Date;
57
+ /**
58
+ * ISO-8601 timestamp at which the workflow reached a TERMINAL
59
+ * status (`completed` / `failed` / `partially_failed` /
60
+ * `cancelled` / `expired`) — the authoritative completion instant.
61
+ * Unlike `updated_at`, this does NOT move once set: a later
62
+ * credit-settlement (or any other post-terminal row update) bumps
63
+ * `updated_at` but never `completed_at`, so `completed_at` is the
64
+ * reliable basis for a run's wall-clock duration
65
+ * (`completed_at − created_at`).
66
+ * OPTIONAL (additive) — absent while the workflow is non-terminal
67
+ * (`pending` / `in_progress` / `paused_insufficient_credits`) and
68
+ * for legacy rows with no recorded completion instant. Per ticket
69
+ * [`gpXrJwuI`](https://trello.com/c/gpXrJwuI).
70
+ *
71
+ * @type {Date}
72
+ * @memberof WorkflowStatusResponse
73
+ */
74
+ completedAt?: Date;
57
75
  /**
58
76
  *
59
77
  * @type {Array<JobResponse>}
@@ -4,7 +4,7 @@
4
4
  * GISL Compression API
5
5
  * REST API for the GISL (Give It Smaller) file compression and processing service. **Architecture:** - Upload files to get a `file_id` - Create workflows referencing uploaded files with operations (compress, thumbnail, image_watermark, text_watermark, merge, archive, convert, custom_luma, audio_overlay, audio_watermark) - Poll status, stream SSE events, or receive webhook callbacks - Download results per operation output **Response envelope:** All mutation and query endpoints return `{ success: true, data: {...} }` on success and `{ success: false, error: \"...\", details: [...] }` on failure. Exceptions: `GET /api/operations/schema` returns raw JSON (per-tier private caching with ETag revalidation per ADR-0002 + I3), health probes return flat objects, and `POST /api/contact` returns 204 with no body. **Availability metadata.** This spec uses the `x-availability` vendor extension as **decorative documentation only**. Per [ADR-0001](../docs/decisions/0001-contract-first-availability.md) §1.5, the runtime endpoint `GET /api/operations/schema` (ticket I3) is the authoritative source; the sidecar `availability.json` (ticket I3b) is the authoritative companion (generated, never hand-edited; CI cross-checks runtime ⇄ sidecar). SDKs MUST NOT depend on `x-availability` reaching generated code — code-generators that surface vendor extensions may emit it as documentation, but consumers read availability from the runtime endpoint, not from the generated bindings. The 5-value vocabulary (`stable | beta | experimental | planned | deprecated`) is defined in the `AvailabilityValue` schema. See `schemas/FORMAT.md` §Availability Taxonomy for the operational rules (parser obligation: absent = stable; per-enum-value granularity is the `per_value_availability` primitive landed via ticket I17). **Localisation (per ticket [I26](https://trello.com/c/rcnqwgI4)).** Error responses + paused/blocked workflow statuses carry a localised human-readable `message` alongside a stable, never-localised `message_key`. Machine-readable fields (`error`, enum values, status codes) stay canonical English. - **Currently committed locales:** `en-GB` only (per ticket [`4GKyuYo6`](https://trello.com/c/4GKyuYo6)). The I26 carrier shape (`Accept-Language` + `Content-Language` + `Vary` headers + `locale` envelope field + `message_key` + `message_params`) is stable and exercised; the **catalog** of translated `message` strings is en-GB-only at runtime today. Additional locales (e.g. `pt-PT`) will be advertised by name when their catalogs ship — the request/response carrier shape does NOT change when a new locale lands. Treat unrequested locales as \"machine-code + `message_key` path is committed; localised `message` prose is not\" until this prose enumerates them by name. - **Request:** `Accept-Language` header per RFC 9110 §12.5.4 (q-value negotiation supported). The server selects the best-match locale from its supported list; falls back to `en-GB` when no match — which, until additional catalogs land, is every non-`en-GB` `Accept-Language`. - **Response:** `Content-Language: <locale>` echo on every localised response; `Vary: Accept-Language` on every response (CDN/cache correctness — different `Accept-Language` requests produce different responses). `Vary` is emitted unconditionally so the header contract does not flip when a second locale ships. - **Fallback locale:** `en-GB` (also the canonical locale for `message_key` translations and English `message` prose). - **SDK guidance:** switch on `error` (machine code) for typed error branches; surface `message_key` to client-side i18n catalogs (SDK companion work tracked at X19, cross-repo); display `message` for end-user UI; **never parse `message` for control flow** — it changes per locale. Carrier shape lives on `ErrorEnvelope` (envelope-level optional `message_key` + `message` + `locale` + `message_params`) and `ValidationErrorEnvelope` (also per-`details[]` entry). Existing 402 / 403 / 422 envelopes (`BalanceExhaustedResponse`, `FeatureNotAvailableResponse`, `FeatureTierRestrictedResponse`, `WorkflowPausedDetail`) inherit the convention. **Upload thresholds (per tickets [u0ar7Yye](https://trello.com/c/u0ar7Yye) + [58nBQLWQ](https://trello.com/c/58nBQLWQ)).** Canonical upload constants (single-shot cap, multipart chunk size, multipart concurrency default, multipart first-chunk size) live on the `UploadThresholds` schema with `const:`-pinned values. SDK generators emit these as typed binding constants so frontend / API / SDKs reference one source of truth instead of hardcoding magic numbers. A runtime `GET /api/uploads/limits` endpoint for dynamic discovery (per-tier / per-environment overrides) is a deferred follow-up.
6
6
  *
7
- * The version of the OpenAPI document: 2.154.0
7
+ * The version of the OpenAPI document: 2.158.0
8
8
  *
9
9
  *
10
10
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -45,6 +45,7 @@ export function WorkflowStatusResponseFromJSONTyped(json, ignoreDiscriminator) {
45
45
  'status': WorkflowStatusFromJSON(json['status']),
46
46
  'createdAt': (new Date(json['created_at'])),
47
47
  'updatedAt': (new Date(json['updated_at'])),
48
+ 'completedAt': json['completed_at'] == null ? undefined : (new Date(json['completed_at'])),
48
49
  'jobs': (json['jobs'].map(JobResponseFromJSON)),
49
50
  'pausedDetail': json['paused_detail'] == null ? undefined : WorkflowPausedDetailFromJSON(json['paused_detail']),
50
51
  'compositionPlan': json['composition_plan'] == null ? undefined : CompositionPlanFromJSON(json['composition_plan']),
@@ -64,6 +65,7 @@ export function WorkflowStatusResponseToJSONTyped(value, ignoreDiscriminator = f
64
65
  'status': WorkflowStatusToJSON(value['status']),
65
66
  'created_at': value['createdAt'].toISOString(),
66
67
  'updated_at': value['updatedAt'].toISOString(),
68
+ 'completed_at': value['completedAt'] == null ? value['completedAt'] : value['completedAt'].toISOString(),
67
69
  'jobs': (value['jobs'].map(JobResponseToJSON)),
68
70
  'paused_detail': WorkflowPausedDetailToJSON(value['pausedDetail']),
69
71
  'composition_plan': CompositionPlanToJSON(value['compositionPlan']),
@@ -2,7 +2,7 @@
2
2
  * GISL Compression API
3
3
  * REST API for the GISL (Give It Smaller) file compression and processing service. **Architecture:** - Upload files to get a `file_id` - Create workflows referencing uploaded files with operations (compress, thumbnail, image_watermark, text_watermark, merge, archive, convert, custom_luma, audio_overlay, audio_watermark) - Poll status, stream SSE events, or receive webhook callbacks - Download results per operation output **Response envelope:** All mutation and query endpoints return `{ success: true, data: {...} }` on success and `{ success: false, error: \"...\", details: [...] }` on failure. Exceptions: `GET /api/operations/schema` returns raw JSON (per-tier private caching with ETag revalidation per ADR-0002 + I3), health probes return flat objects, and `POST /api/contact` returns 204 with no body. **Availability metadata.** This spec uses the `x-availability` vendor extension as **decorative documentation only**. Per [ADR-0001](../docs/decisions/0001-contract-first-availability.md) §1.5, the runtime endpoint `GET /api/operations/schema` (ticket I3) is the authoritative source; the sidecar `availability.json` (ticket I3b) is the authoritative companion (generated, never hand-edited; CI cross-checks runtime ⇄ sidecar). SDKs MUST NOT depend on `x-availability` reaching generated code — code-generators that surface vendor extensions may emit it as documentation, but consumers read availability from the runtime endpoint, not from the generated bindings. The 5-value vocabulary (`stable | beta | experimental | planned | deprecated`) is defined in the `AvailabilityValue` schema. See `schemas/FORMAT.md` §Availability Taxonomy for the operational rules (parser obligation: absent = stable; per-enum-value granularity is the `per_value_availability` primitive landed via ticket I17). **Localisation (per ticket [I26](https://trello.com/c/rcnqwgI4)).** Error responses + paused/blocked workflow statuses carry a localised human-readable `message` alongside a stable, never-localised `message_key`. Machine-readable fields (`error`, enum values, status codes) stay canonical English. - **Currently committed locales:** `en-GB` only (per ticket [`4GKyuYo6`](https://trello.com/c/4GKyuYo6)). The I26 carrier shape (`Accept-Language` + `Content-Language` + `Vary` headers + `locale` envelope field + `message_key` + `message_params`) is stable and exercised; the **catalog** of translated `message` strings is en-GB-only at runtime today. Additional locales (e.g. `pt-PT`) will be advertised by name when their catalogs ship — the request/response carrier shape does NOT change when a new locale lands. Treat unrequested locales as \"machine-code + `message_key` path is committed; localised `message` prose is not\" until this prose enumerates them by name. - **Request:** `Accept-Language` header per RFC 9110 §12.5.4 (q-value negotiation supported). The server selects the best-match locale from its supported list; falls back to `en-GB` when no match — which, until additional catalogs land, is every non-`en-GB` `Accept-Language`. - **Response:** `Content-Language: <locale>` echo on every localised response; `Vary: Accept-Language` on every response (CDN/cache correctness — different `Accept-Language` requests produce different responses). `Vary` is emitted unconditionally so the header contract does not flip when a second locale ships. - **Fallback locale:** `en-GB` (also the canonical locale for `message_key` translations and English `message` prose). - **SDK guidance:** switch on `error` (machine code) for typed error branches; surface `message_key` to client-side i18n catalogs (SDK companion work tracked at X19, cross-repo); display `message` for end-user UI; **never parse `message` for control flow** — it changes per locale. Carrier shape lives on `ErrorEnvelope` (envelope-level optional `message_key` + `message` + `locale` + `message_params`) and `ValidationErrorEnvelope` (also per-`details[]` entry). Existing 402 / 403 / 422 envelopes (`BalanceExhaustedResponse`, `FeatureNotAvailableResponse`, `FeatureTierRestrictedResponse`, `WorkflowPausedDetail`) inherit the convention. **Upload thresholds (per tickets [u0ar7Yye](https://trello.com/c/u0ar7Yye) + [58nBQLWQ](https://trello.com/c/58nBQLWQ)).** Canonical upload constants (single-shot cap, multipart chunk size, multipart concurrency default, multipart first-chunk size) live on the `UploadThresholds` schema with `const:`-pinned values. SDK generators emit these as typed binding constants so frontend / API / SDKs reference one source of truth instead of hardcoding magic numbers. A runtime `GET /api/uploads/limits` endpoint for dynamic discovery (per-tier / per-environment overrides) is a deferred follow-up.
4
4
  *
5
- * The version of the OpenAPI document: 2.154.0
5
+ * The version of the OpenAPI document: 2.158.0
6
6
  *
7
7
  *
8
8
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -4,7 +4,7 @@
4
4
  * GISL Compression API
5
5
  * REST API for the GISL (Give It Smaller) file compression and processing service. **Architecture:** - Upload files to get a `file_id` - Create workflows referencing uploaded files with operations (compress, thumbnail, image_watermark, text_watermark, merge, archive, convert, custom_luma, audio_overlay, audio_watermark) - Poll status, stream SSE events, or receive webhook callbacks - Download results per operation output **Response envelope:** All mutation and query endpoints return `{ success: true, data: {...} }` on success and `{ success: false, error: \"...\", details: [...] }` on failure. Exceptions: `GET /api/operations/schema` returns raw JSON (per-tier private caching with ETag revalidation per ADR-0002 + I3), health probes return flat objects, and `POST /api/contact` returns 204 with no body. **Availability metadata.** This spec uses the `x-availability` vendor extension as **decorative documentation only**. Per [ADR-0001](../docs/decisions/0001-contract-first-availability.md) §1.5, the runtime endpoint `GET /api/operations/schema` (ticket I3) is the authoritative source; the sidecar `availability.json` (ticket I3b) is the authoritative companion (generated, never hand-edited; CI cross-checks runtime ⇄ sidecar). SDKs MUST NOT depend on `x-availability` reaching generated code — code-generators that surface vendor extensions may emit it as documentation, but consumers read availability from the runtime endpoint, not from the generated bindings. The 5-value vocabulary (`stable | beta | experimental | planned | deprecated`) is defined in the `AvailabilityValue` schema. See `schemas/FORMAT.md` §Availability Taxonomy for the operational rules (parser obligation: absent = stable; per-enum-value granularity is the `per_value_availability` primitive landed via ticket I17). **Localisation (per ticket [I26](https://trello.com/c/rcnqwgI4)).** Error responses + paused/blocked workflow statuses carry a localised human-readable `message` alongside a stable, never-localised `message_key`. Machine-readable fields (`error`, enum values, status codes) stay canonical English. - **Currently committed locales:** `en-GB` only (per ticket [`4GKyuYo6`](https://trello.com/c/4GKyuYo6)). The I26 carrier shape (`Accept-Language` + `Content-Language` + `Vary` headers + `locale` envelope field + `message_key` + `message_params`) is stable and exercised; the **catalog** of translated `message` strings is en-GB-only at runtime today. Additional locales (e.g. `pt-PT`) will be advertised by name when their catalogs ship — the request/response carrier shape does NOT change when a new locale lands. Treat unrequested locales as \"machine-code + `message_key` path is committed; localised `message` prose is not\" until this prose enumerates them by name. - **Request:** `Accept-Language` header per RFC 9110 §12.5.4 (q-value negotiation supported). The server selects the best-match locale from its supported list; falls back to `en-GB` when no match — which, until additional catalogs land, is every non-`en-GB` `Accept-Language`. - **Response:** `Content-Language: <locale>` echo on every localised response; `Vary: Accept-Language` on every response (CDN/cache correctness — different `Accept-Language` requests produce different responses). `Vary` is emitted unconditionally so the header contract does not flip when a second locale ships. - **Fallback locale:** `en-GB` (also the canonical locale for `message_key` translations and English `message` prose). - **SDK guidance:** switch on `error` (machine code) for typed error branches; surface `message_key` to client-side i18n catalogs (SDK companion work tracked at X19, cross-repo); display `message` for end-user UI; **never parse `message` for control flow** — it changes per locale. Carrier shape lives on `ErrorEnvelope` (envelope-level optional `message_key` + `message` + `locale` + `message_params`) and `ValidationErrorEnvelope` (also per-`details[]` entry). Existing 402 / 403 / 422 envelopes (`BalanceExhaustedResponse`, `FeatureNotAvailableResponse`, `FeatureTierRestrictedResponse`, `WorkflowPausedDetail`) inherit the convention. **Upload thresholds (per tickets [u0ar7Yye](https://trello.com/c/u0ar7Yye) + [58nBQLWQ](https://trello.com/c/58nBQLWQ)).** Canonical upload constants (single-shot cap, multipart chunk size, multipart concurrency default, multipart first-chunk size) live on the `UploadThresholds` schema with `const:`-pinned values. SDK generators emit these as typed binding constants so frontend / API / SDKs reference one source of truth instead of hardcoding magic numbers. A runtime `GET /api/uploads/limits` endpoint for dynamic discovery (per-tier / per-environment overrides) is a deferred follow-up.
6
6
  *
7
- * The version of the OpenAPI document: 2.154.0
7
+ * The version of the OpenAPI document: 2.158.0
8
8
  *
9
9
  *
10
10
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -2,7 +2,7 @@
2
2
  * GISL Compression API
3
3
  * REST API for the GISL (Give It Smaller) file compression and processing service. **Architecture:** - Upload files to get a `file_id` - Create workflows referencing uploaded files with operations (compress, thumbnail, image_watermark, text_watermark, merge, archive, convert, custom_luma, audio_overlay, audio_watermark) - Poll status, stream SSE events, or receive webhook callbacks - Download results per operation output **Response envelope:** All mutation and query endpoints return `{ success: true, data: {...} }` on success and `{ success: false, error: \"...\", details: [...] }` on failure. Exceptions: `GET /api/operations/schema` returns raw JSON (per-tier private caching with ETag revalidation per ADR-0002 + I3), health probes return flat objects, and `POST /api/contact` returns 204 with no body. **Availability metadata.** This spec uses the `x-availability` vendor extension as **decorative documentation only**. Per [ADR-0001](../docs/decisions/0001-contract-first-availability.md) §1.5, the runtime endpoint `GET /api/operations/schema` (ticket I3) is the authoritative source; the sidecar `availability.json` (ticket I3b) is the authoritative companion (generated, never hand-edited; CI cross-checks runtime ⇄ sidecar). SDKs MUST NOT depend on `x-availability` reaching generated code — code-generators that surface vendor extensions may emit it as documentation, but consumers read availability from the runtime endpoint, not from the generated bindings. The 5-value vocabulary (`stable | beta | experimental | planned | deprecated`) is defined in the `AvailabilityValue` schema. See `schemas/FORMAT.md` §Availability Taxonomy for the operational rules (parser obligation: absent = stable; per-enum-value granularity is the `per_value_availability` primitive landed via ticket I17). **Localisation (per ticket [I26](https://trello.com/c/rcnqwgI4)).** Error responses + paused/blocked workflow statuses carry a localised human-readable `message` alongside a stable, never-localised `message_key`. Machine-readable fields (`error`, enum values, status codes) stay canonical English. - **Currently committed locales:** `en-GB` only (per ticket [`4GKyuYo6`](https://trello.com/c/4GKyuYo6)). The I26 carrier shape (`Accept-Language` + `Content-Language` + `Vary` headers + `locale` envelope field + `message_key` + `message_params`) is stable and exercised; the **catalog** of translated `message` strings is en-GB-only at runtime today. Additional locales (e.g. `pt-PT`) will be advertised by name when their catalogs ship — the request/response carrier shape does NOT change when a new locale lands. Treat unrequested locales as \"machine-code + `message_key` path is committed; localised `message` prose is not\" until this prose enumerates them by name. - **Request:** `Accept-Language` header per RFC 9110 §12.5.4 (q-value negotiation supported). The server selects the best-match locale from its supported list; falls back to `en-GB` when no match — which, until additional catalogs land, is every non-`en-GB` `Accept-Language`. - **Response:** `Content-Language: <locale>` echo on every localised response; `Vary: Accept-Language` on every response (CDN/cache correctness — different `Accept-Language` requests produce different responses). `Vary` is emitted unconditionally so the header contract does not flip when a second locale ships. - **Fallback locale:** `en-GB` (also the canonical locale for `message_key` translations and English `message` prose). - **SDK guidance:** switch on `error` (machine code) for typed error branches; surface `message_key` to client-side i18n catalogs (SDK companion work tracked at X19, cross-repo); display `message` for end-user UI; **never parse `message` for control flow** — it changes per locale. Carrier shape lives on `ErrorEnvelope` (envelope-level optional `message_key` + `message` + `locale` + `message_params`) and `ValidationErrorEnvelope` (also per-`details[]` entry). Existing 402 / 403 / 422 envelopes (`BalanceExhaustedResponse`, `FeatureNotAvailableResponse`, `FeatureTierRestrictedResponse`, `WorkflowPausedDetail`) inherit the convention. **Upload thresholds (per tickets [u0ar7Yye](https://trello.com/c/u0ar7Yye) + [58nBQLWQ](https://trello.com/c/58nBQLWQ)).** Canonical upload constants (single-shot cap, multipart chunk size, multipart concurrency default, multipart first-chunk size) live on the `UploadThresholds` schema with `const:`-pinned values. SDK generators emit these as typed binding constants so frontend / API / SDKs reference one source of truth instead of hardcoding magic numbers. A runtime `GET /api/uploads/limits` endpoint for dynamic discovery (per-tier / per-environment overrides) is a deferred follow-up.
4
4
  *
5
- * The version of the OpenAPI document: 2.154.0
5
+ * The version of the OpenAPI document: 2.158.0
6
6
  *
7
7
  *
8
8
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -44,6 +44,21 @@ export interface WorkflowSummary {
44
44
  * @memberof WorkflowSummary
45
45
  */
46
46
  createdAt: Date;
47
+ /**
48
+ * ISO-8601 timestamp at which the workflow reached a TERMINAL
49
+ * status — the authoritative completion instant, stable once set (a
50
+ * later credit-settlement update never moves it, unlike a plain
51
+ * last-updated timestamp). The list row derives a run's wall-clock
52
+ * duration from `completed_at − created_at`.
53
+ * OPTIONAL (additive) — absent while the workflow is non-terminal
54
+ * and for legacy rows with no recorded completion instant. Mirrors
55
+ * `WorkflowStatusResponse.completed_at`. Per ticket
56
+ * [`gpXrJwuI`](https://trello.com/c/gpXrJwuI).
57
+ *
58
+ * @type {Date}
59
+ * @memberof WorkflowSummary
60
+ */
61
+ completedAt?: Date;
47
62
  /**
48
63
  *
49
64
  * @type {Array<WorkflowSummaryJob>}
@@ -4,7 +4,7 @@
4
4
  * GISL Compression API
5
5
  * REST API for the GISL (Give It Smaller) file compression and processing service. **Architecture:** - Upload files to get a `file_id` - Create workflows referencing uploaded files with operations (compress, thumbnail, image_watermark, text_watermark, merge, archive, convert, custom_luma, audio_overlay, audio_watermark) - Poll status, stream SSE events, or receive webhook callbacks - Download results per operation output **Response envelope:** All mutation and query endpoints return `{ success: true, data: {...} }` on success and `{ success: false, error: \"...\", details: [...] }` on failure. Exceptions: `GET /api/operations/schema` returns raw JSON (per-tier private caching with ETag revalidation per ADR-0002 + I3), health probes return flat objects, and `POST /api/contact` returns 204 with no body. **Availability metadata.** This spec uses the `x-availability` vendor extension as **decorative documentation only**. Per [ADR-0001](../docs/decisions/0001-contract-first-availability.md) §1.5, the runtime endpoint `GET /api/operations/schema` (ticket I3) is the authoritative source; the sidecar `availability.json` (ticket I3b) is the authoritative companion (generated, never hand-edited; CI cross-checks runtime ⇄ sidecar). SDKs MUST NOT depend on `x-availability` reaching generated code — code-generators that surface vendor extensions may emit it as documentation, but consumers read availability from the runtime endpoint, not from the generated bindings. The 5-value vocabulary (`stable | beta | experimental | planned | deprecated`) is defined in the `AvailabilityValue` schema. See `schemas/FORMAT.md` §Availability Taxonomy for the operational rules (parser obligation: absent = stable; per-enum-value granularity is the `per_value_availability` primitive landed via ticket I17). **Localisation (per ticket [I26](https://trello.com/c/rcnqwgI4)).** Error responses + paused/blocked workflow statuses carry a localised human-readable `message` alongside a stable, never-localised `message_key`. Machine-readable fields (`error`, enum values, status codes) stay canonical English. - **Currently committed locales:** `en-GB` only (per ticket [`4GKyuYo6`](https://trello.com/c/4GKyuYo6)). The I26 carrier shape (`Accept-Language` + `Content-Language` + `Vary` headers + `locale` envelope field + `message_key` + `message_params`) is stable and exercised; the **catalog** of translated `message` strings is en-GB-only at runtime today. Additional locales (e.g. `pt-PT`) will be advertised by name when their catalogs ship — the request/response carrier shape does NOT change when a new locale lands. Treat unrequested locales as \"machine-code + `message_key` path is committed; localised `message` prose is not\" until this prose enumerates them by name. - **Request:** `Accept-Language` header per RFC 9110 §12.5.4 (q-value negotiation supported). The server selects the best-match locale from its supported list; falls back to `en-GB` when no match — which, until additional catalogs land, is every non-`en-GB` `Accept-Language`. - **Response:** `Content-Language: <locale>` echo on every localised response; `Vary: Accept-Language` on every response (CDN/cache correctness — different `Accept-Language` requests produce different responses). `Vary` is emitted unconditionally so the header contract does not flip when a second locale ships. - **Fallback locale:** `en-GB` (also the canonical locale for `message_key` translations and English `message` prose). - **SDK guidance:** switch on `error` (machine code) for typed error branches; surface `message_key` to client-side i18n catalogs (SDK companion work tracked at X19, cross-repo); display `message` for end-user UI; **never parse `message` for control flow** — it changes per locale. Carrier shape lives on `ErrorEnvelope` (envelope-level optional `message_key` + `message` + `locale` + `message_params`) and `ValidationErrorEnvelope` (also per-`details[]` entry). Existing 402 / 403 / 422 envelopes (`BalanceExhaustedResponse`, `FeatureNotAvailableResponse`, `FeatureTierRestrictedResponse`, `WorkflowPausedDetail`) inherit the convention. **Upload thresholds (per tickets [u0ar7Yye](https://trello.com/c/u0ar7Yye) + [58nBQLWQ](https://trello.com/c/58nBQLWQ)).** Canonical upload constants (single-shot cap, multipart chunk size, multipart concurrency default, multipart first-chunk size) live on the `UploadThresholds` schema with `const:`-pinned values. SDK generators emit these as typed binding constants so frontend / API / SDKs reference one source of truth instead of hardcoding magic numbers. A runtime `GET /api/uploads/limits` endpoint for dynamic discovery (per-tier / per-environment overrides) is a deferred follow-up.
6
6
  *
7
- * The version of the OpenAPI document: 2.154.0
7
+ * The version of the OpenAPI document: 2.158.0
8
8
  *
9
9
  *
10
10
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -39,6 +39,7 @@ export function WorkflowSummaryFromJSONTyped(json, ignoreDiscriminator) {
39
39
  'workflowId': json['workflow_id'],
40
40
  'status': WorkflowStatusFromJSON(json['status']),
41
41
  'createdAt': (new Date(json['created_at'])),
42
+ 'completedAt': json['completed_at'] == null ? undefined : (new Date(json['completed_at'])),
42
43
  'jobs': (json['jobs'].map(WorkflowSummaryJobFromJSON)),
43
44
  'credits': json['credits'] == null ? undefined : WorkflowCreditSummaryFromJSON(json['credits']),
44
45
  };
@@ -54,6 +55,7 @@ export function WorkflowSummaryToJSONTyped(value, ignoreDiscriminator = false) {
54
55
  'workflow_id': value['workflowId'],
55
56
  'status': WorkflowStatusToJSON(value['status']),
56
57
  'created_at': value['createdAt'].toISOString(),
58
+ 'completed_at': value['completedAt'] == null ? value['completedAt'] : value['completedAt'].toISOString(),
57
59
  'jobs': (value['jobs'].map(WorkflowSummaryJobToJSON)),
58
60
  'credits': WorkflowCreditSummaryToJSON(value['credits']),
59
61
  };
@@ -2,7 +2,7 @@
2
2
  * GISL Compression API
3
3
  * REST API for the GISL (Give It Smaller) file compression and processing service. **Architecture:** - Upload files to get a `file_id` - Create workflows referencing uploaded files with operations (compress, thumbnail, image_watermark, text_watermark, merge, archive, convert, custom_luma, audio_overlay, audio_watermark) - Poll status, stream SSE events, or receive webhook callbacks - Download results per operation output **Response envelope:** All mutation and query endpoints return `{ success: true, data: {...} }` on success and `{ success: false, error: \"...\", details: [...] }` on failure. Exceptions: `GET /api/operations/schema` returns raw JSON (per-tier private caching with ETag revalidation per ADR-0002 + I3), health probes return flat objects, and `POST /api/contact` returns 204 with no body. **Availability metadata.** This spec uses the `x-availability` vendor extension as **decorative documentation only**. Per [ADR-0001](../docs/decisions/0001-contract-first-availability.md) §1.5, the runtime endpoint `GET /api/operations/schema` (ticket I3) is the authoritative source; the sidecar `availability.json` (ticket I3b) is the authoritative companion (generated, never hand-edited; CI cross-checks runtime ⇄ sidecar). SDKs MUST NOT depend on `x-availability` reaching generated code — code-generators that surface vendor extensions may emit it as documentation, but consumers read availability from the runtime endpoint, not from the generated bindings. The 5-value vocabulary (`stable | beta | experimental | planned | deprecated`) is defined in the `AvailabilityValue` schema. See `schemas/FORMAT.md` §Availability Taxonomy for the operational rules (parser obligation: absent = stable; per-enum-value granularity is the `per_value_availability` primitive landed via ticket I17). **Localisation (per ticket [I26](https://trello.com/c/rcnqwgI4)).** Error responses + paused/blocked workflow statuses carry a localised human-readable `message` alongside a stable, never-localised `message_key`. Machine-readable fields (`error`, enum values, status codes) stay canonical English. - **Currently committed locales:** `en-GB` only (per ticket [`4GKyuYo6`](https://trello.com/c/4GKyuYo6)). The I26 carrier shape (`Accept-Language` + `Content-Language` + `Vary` headers + `locale` envelope field + `message_key` + `message_params`) is stable and exercised; the **catalog** of translated `message` strings is en-GB-only at runtime today. Additional locales (e.g. `pt-PT`) will be advertised by name when their catalogs ship — the request/response carrier shape does NOT change when a new locale lands. Treat unrequested locales as \"machine-code + `message_key` path is committed; localised `message` prose is not\" until this prose enumerates them by name. - **Request:** `Accept-Language` header per RFC 9110 §12.5.4 (q-value negotiation supported). The server selects the best-match locale from its supported list; falls back to `en-GB` when no match — which, until additional catalogs land, is every non-`en-GB` `Accept-Language`. - **Response:** `Content-Language: <locale>` echo on every localised response; `Vary: Accept-Language` on every response (CDN/cache correctness — different `Accept-Language` requests produce different responses). `Vary` is emitted unconditionally so the header contract does not flip when a second locale ships. - **Fallback locale:** `en-GB` (also the canonical locale for `message_key` translations and English `message` prose). - **SDK guidance:** switch on `error` (machine code) for typed error branches; surface `message_key` to client-side i18n catalogs (SDK companion work tracked at X19, cross-repo); display `message` for end-user UI; **never parse `message` for control flow** — it changes per locale. Carrier shape lives on `ErrorEnvelope` (envelope-level optional `message_key` + `message` + `locale` + `message_params`) and `ValidationErrorEnvelope` (also per-`details[]` entry). Existing 402 / 403 / 422 envelopes (`BalanceExhaustedResponse`, `FeatureNotAvailableResponse`, `FeatureTierRestrictedResponse`, `WorkflowPausedDetail`) inherit the convention. **Upload thresholds (per tickets [u0ar7Yye](https://trello.com/c/u0ar7Yye) + [58nBQLWQ](https://trello.com/c/58nBQLWQ)).** Canonical upload constants (single-shot cap, multipart chunk size, multipart concurrency default, multipart first-chunk size) live on the `UploadThresholds` schema with `const:`-pinned values. SDK generators emit these as typed binding constants so frontend / API / SDKs reference one source of truth instead of hardcoding magic numbers. A runtime `GET /api/uploads/limits` endpoint for dynamic discovery (per-tier / per-environment overrides) is a deferred follow-up.
4
4
  *
5
- * The version of the OpenAPI document: 2.154.0
5
+ * The version of the OpenAPI document: 2.158.0
6
6
  *
7
7
  *
8
8
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -4,7 +4,7 @@
4
4
  * GISL Compression API
5
5
  * REST API for the GISL (Give It Smaller) file compression and processing service. **Architecture:** - Upload files to get a `file_id` - Create workflows referencing uploaded files with operations (compress, thumbnail, image_watermark, text_watermark, merge, archive, convert, custom_luma, audio_overlay, audio_watermark) - Poll status, stream SSE events, or receive webhook callbacks - Download results per operation output **Response envelope:** All mutation and query endpoints return `{ success: true, data: {...} }` on success and `{ success: false, error: \"...\", details: [...] }` on failure. Exceptions: `GET /api/operations/schema` returns raw JSON (per-tier private caching with ETag revalidation per ADR-0002 + I3), health probes return flat objects, and `POST /api/contact` returns 204 with no body. **Availability metadata.** This spec uses the `x-availability` vendor extension as **decorative documentation only**. Per [ADR-0001](../docs/decisions/0001-contract-first-availability.md) §1.5, the runtime endpoint `GET /api/operations/schema` (ticket I3) is the authoritative source; the sidecar `availability.json` (ticket I3b) is the authoritative companion (generated, never hand-edited; CI cross-checks runtime ⇄ sidecar). SDKs MUST NOT depend on `x-availability` reaching generated code — code-generators that surface vendor extensions may emit it as documentation, but consumers read availability from the runtime endpoint, not from the generated bindings. The 5-value vocabulary (`stable | beta | experimental | planned | deprecated`) is defined in the `AvailabilityValue` schema. See `schemas/FORMAT.md` §Availability Taxonomy for the operational rules (parser obligation: absent = stable; per-enum-value granularity is the `per_value_availability` primitive landed via ticket I17). **Localisation (per ticket [I26](https://trello.com/c/rcnqwgI4)).** Error responses + paused/blocked workflow statuses carry a localised human-readable `message` alongside a stable, never-localised `message_key`. Machine-readable fields (`error`, enum values, status codes) stay canonical English. - **Currently committed locales:** `en-GB` only (per ticket [`4GKyuYo6`](https://trello.com/c/4GKyuYo6)). The I26 carrier shape (`Accept-Language` + `Content-Language` + `Vary` headers + `locale` envelope field + `message_key` + `message_params`) is stable and exercised; the **catalog** of translated `message` strings is en-GB-only at runtime today. Additional locales (e.g. `pt-PT`) will be advertised by name when their catalogs ship — the request/response carrier shape does NOT change when a new locale lands. Treat unrequested locales as \"machine-code + `message_key` path is committed; localised `message` prose is not\" until this prose enumerates them by name. - **Request:** `Accept-Language` header per RFC 9110 §12.5.4 (q-value negotiation supported). The server selects the best-match locale from its supported list; falls back to `en-GB` when no match — which, until additional catalogs land, is every non-`en-GB` `Accept-Language`. - **Response:** `Content-Language: <locale>` echo on every localised response; `Vary: Accept-Language` on every response (CDN/cache correctness — different `Accept-Language` requests produce different responses). `Vary` is emitted unconditionally so the header contract does not flip when a second locale ships. - **Fallback locale:** `en-GB` (also the canonical locale for `message_key` translations and English `message` prose). - **SDK guidance:** switch on `error` (machine code) for typed error branches; surface `message_key` to client-side i18n catalogs (SDK companion work tracked at X19, cross-repo); display `message` for end-user UI; **never parse `message` for control flow** — it changes per locale. Carrier shape lives on `ErrorEnvelope` (envelope-level optional `message_key` + `message` + `locale` + `message_params`) and `ValidationErrorEnvelope` (also per-`details[]` entry). Existing 402 / 403 / 422 envelopes (`BalanceExhaustedResponse`, `FeatureNotAvailableResponse`, `FeatureTierRestrictedResponse`, `WorkflowPausedDetail`) inherit the convention. **Upload thresholds (per tickets [u0ar7Yye](https://trello.com/c/u0ar7Yye) + [58nBQLWQ](https://trello.com/c/58nBQLWQ)).** Canonical upload constants (single-shot cap, multipart chunk size, multipart concurrency default, multipart first-chunk size) live on the `UploadThresholds` schema with `const:`-pinned values. SDK generators emit these as typed binding constants so frontend / API / SDKs reference one source of truth instead of hardcoding magic numbers. A runtime `GET /api/uploads/limits` endpoint for dynamic discovery (per-tier / per-environment overrides) is a deferred follow-up.
6
6
  *
7
- * The version of the OpenAPI document: 2.154.0
7
+ * The version of the OpenAPI document: 2.158.0
8
8
  *
9
9
  *
10
10
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -2,7 +2,7 @@
2
2
  * GISL Compression API
3
3
  * REST API for the GISL (Give It Smaller) file compression and processing service. **Architecture:** - Upload files to get a `file_id` - Create workflows referencing uploaded files with operations (compress, thumbnail, image_watermark, text_watermark, merge, archive, convert, custom_luma, audio_overlay, audio_watermark) - Poll status, stream SSE events, or receive webhook callbacks - Download results per operation output **Response envelope:** All mutation and query endpoints return `{ success: true, data: {...} }` on success and `{ success: false, error: \"...\", details: [...] }` on failure. Exceptions: `GET /api/operations/schema` returns raw JSON (per-tier private caching with ETag revalidation per ADR-0002 + I3), health probes return flat objects, and `POST /api/contact` returns 204 with no body. **Availability metadata.** This spec uses the `x-availability` vendor extension as **decorative documentation only**. Per [ADR-0001](../docs/decisions/0001-contract-first-availability.md) §1.5, the runtime endpoint `GET /api/operations/schema` (ticket I3) is the authoritative source; the sidecar `availability.json` (ticket I3b) is the authoritative companion (generated, never hand-edited; CI cross-checks runtime ⇄ sidecar). SDKs MUST NOT depend on `x-availability` reaching generated code — code-generators that surface vendor extensions may emit it as documentation, but consumers read availability from the runtime endpoint, not from the generated bindings. The 5-value vocabulary (`stable | beta | experimental | planned | deprecated`) is defined in the `AvailabilityValue` schema. See `schemas/FORMAT.md` §Availability Taxonomy for the operational rules (parser obligation: absent = stable; per-enum-value granularity is the `per_value_availability` primitive landed via ticket I17). **Localisation (per ticket [I26](https://trello.com/c/rcnqwgI4)).** Error responses + paused/blocked workflow statuses carry a localised human-readable `message` alongside a stable, never-localised `message_key`. Machine-readable fields (`error`, enum values, status codes) stay canonical English. - **Currently committed locales:** `en-GB` only (per ticket [`4GKyuYo6`](https://trello.com/c/4GKyuYo6)). The I26 carrier shape (`Accept-Language` + `Content-Language` + `Vary` headers + `locale` envelope field + `message_key` + `message_params`) is stable and exercised; the **catalog** of translated `message` strings is en-GB-only at runtime today. Additional locales (e.g. `pt-PT`) will be advertised by name when their catalogs ship — the request/response carrier shape does NOT change when a new locale lands. Treat unrequested locales as \"machine-code + `message_key` path is committed; localised `message` prose is not\" until this prose enumerates them by name. - **Request:** `Accept-Language` header per RFC 9110 §12.5.4 (q-value negotiation supported). The server selects the best-match locale from its supported list; falls back to `en-GB` when no match — which, until additional catalogs land, is every non-`en-GB` `Accept-Language`. - **Response:** `Content-Language: <locale>` echo on every localised response; `Vary: Accept-Language` on every response (CDN/cache correctness — different `Accept-Language` requests produce different responses). `Vary` is emitted unconditionally so the header contract does not flip when a second locale ships. - **Fallback locale:** `en-GB` (also the canonical locale for `message_key` translations and English `message` prose). - **SDK guidance:** switch on `error` (machine code) for typed error branches; surface `message_key` to client-side i18n catalogs (SDK companion work tracked at X19, cross-repo); display `message` for end-user UI; **never parse `message` for control flow** — it changes per locale. Carrier shape lives on `ErrorEnvelope` (envelope-level optional `message_key` + `message` + `locale` + `message_params`) and `ValidationErrorEnvelope` (also per-`details[]` entry). Existing 402 / 403 / 422 envelopes (`BalanceExhaustedResponse`, `FeatureNotAvailableResponse`, `FeatureTierRestrictedResponse`, `WorkflowPausedDetail`) inherit the convention. **Upload thresholds (per tickets [u0ar7Yye](https://trello.com/c/u0ar7Yye) + [58nBQLWQ](https://trello.com/c/58nBQLWQ)).** Canonical upload constants (single-shot cap, multipart chunk size, multipart concurrency default, multipart first-chunk size) live on the `UploadThresholds` schema with `const:`-pinned values. SDK generators emit these as typed binding constants so frontend / API / SDKs reference one source of truth instead of hardcoding magic numbers. A runtime `GET /api/uploads/limits` endpoint for dynamic discovery (per-tier / per-environment overrides) is a deferred follow-up.
4
4
  *
5
- * The version of the OpenAPI document: 2.154.0
5
+ * The version of the OpenAPI document: 2.158.0
6
6
  *
7
7
  *
8
8
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -4,7 +4,7 @@
4
4
  * GISL Compression API
5
5
  * REST API for the GISL (Give It Smaller) file compression and processing service. **Architecture:** - Upload files to get a `file_id` - Create workflows referencing uploaded files with operations (compress, thumbnail, image_watermark, text_watermark, merge, archive, convert, custom_luma, audio_overlay, audio_watermark) - Poll status, stream SSE events, or receive webhook callbacks - Download results per operation output **Response envelope:** All mutation and query endpoints return `{ success: true, data: {...} }` on success and `{ success: false, error: \"...\", details: [...] }` on failure. Exceptions: `GET /api/operations/schema` returns raw JSON (per-tier private caching with ETag revalidation per ADR-0002 + I3), health probes return flat objects, and `POST /api/contact` returns 204 with no body. **Availability metadata.** This spec uses the `x-availability` vendor extension as **decorative documentation only**. Per [ADR-0001](../docs/decisions/0001-contract-first-availability.md) §1.5, the runtime endpoint `GET /api/operations/schema` (ticket I3) is the authoritative source; the sidecar `availability.json` (ticket I3b) is the authoritative companion (generated, never hand-edited; CI cross-checks runtime ⇄ sidecar). SDKs MUST NOT depend on `x-availability` reaching generated code — code-generators that surface vendor extensions may emit it as documentation, but consumers read availability from the runtime endpoint, not from the generated bindings. The 5-value vocabulary (`stable | beta | experimental | planned | deprecated`) is defined in the `AvailabilityValue` schema. See `schemas/FORMAT.md` §Availability Taxonomy for the operational rules (parser obligation: absent = stable; per-enum-value granularity is the `per_value_availability` primitive landed via ticket I17). **Localisation (per ticket [I26](https://trello.com/c/rcnqwgI4)).** Error responses + paused/blocked workflow statuses carry a localised human-readable `message` alongside a stable, never-localised `message_key`. Machine-readable fields (`error`, enum values, status codes) stay canonical English. - **Currently committed locales:** `en-GB` only (per ticket [`4GKyuYo6`](https://trello.com/c/4GKyuYo6)). The I26 carrier shape (`Accept-Language` + `Content-Language` + `Vary` headers + `locale` envelope field + `message_key` + `message_params`) is stable and exercised; the **catalog** of translated `message` strings is en-GB-only at runtime today. Additional locales (e.g. `pt-PT`) will be advertised by name when their catalogs ship — the request/response carrier shape does NOT change when a new locale lands. Treat unrequested locales as \"machine-code + `message_key` path is committed; localised `message` prose is not\" until this prose enumerates them by name. - **Request:** `Accept-Language` header per RFC 9110 §12.5.4 (q-value negotiation supported). The server selects the best-match locale from its supported list; falls back to `en-GB` when no match — which, until additional catalogs land, is every non-`en-GB` `Accept-Language`. - **Response:** `Content-Language: <locale>` echo on every localised response; `Vary: Accept-Language` on every response (CDN/cache correctness — different `Accept-Language` requests produce different responses). `Vary` is emitted unconditionally so the header contract does not flip when a second locale ships. - **Fallback locale:** `en-GB` (also the canonical locale for `message_key` translations and English `message` prose). - **SDK guidance:** switch on `error` (machine code) for typed error branches; surface `message_key` to client-side i18n catalogs (SDK companion work tracked at X19, cross-repo); display `message` for end-user UI; **never parse `message` for control flow** — it changes per locale. Carrier shape lives on `ErrorEnvelope` (envelope-level optional `message_key` + `message` + `locale` + `message_params`) and `ValidationErrorEnvelope` (also per-`details[]` entry). Existing 402 / 403 / 422 envelopes (`BalanceExhaustedResponse`, `FeatureNotAvailableResponse`, `FeatureTierRestrictedResponse`, `WorkflowPausedDetail`) inherit the convention. **Upload thresholds (per tickets [u0ar7Yye](https://trello.com/c/u0ar7Yye) + [58nBQLWQ](https://trello.com/c/58nBQLWQ)).** Canonical upload constants (single-shot cap, multipart chunk size, multipart concurrency default, multipart first-chunk size) live on the `UploadThresholds` schema with `const:`-pinned values. SDK generators emit these as typed binding constants so frontend / API / SDKs reference one source of truth instead of hardcoding magic numbers. A runtime `GET /api/uploads/limits` endpoint for dynamic discovery (per-tier / per-environment overrides) is a deferred follow-up.
6
6
  *
7
- * The version of the OpenAPI document: 2.154.0
7
+ * The version of the OpenAPI document: 2.158.0
8
8
  *
9
9
  *
10
10
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -2,7 +2,7 @@
2
2
  * GISL Compression API
3
3
  * REST API for the GISL (Give It Smaller) file compression and processing service. **Architecture:** - Upload files to get a `file_id` - Create workflows referencing uploaded files with operations (compress, thumbnail, image_watermark, text_watermark, merge, archive, convert, custom_luma, audio_overlay, audio_watermark) - Poll status, stream SSE events, or receive webhook callbacks - Download results per operation output **Response envelope:** All mutation and query endpoints return `{ success: true, data: {...} }` on success and `{ success: false, error: \"...\", details: [...] }` on failure. Exceptions: `GET /api/operations/schema` returns raw JSON (per-tier private caching with ETag revalidation per ADR-0002 + I3), health probes return flat objects, and `POST /api/contact` returns 204 with no body. **Availability metadata.** This spec uses the `x-availability` vendor extension as **decorative documentation only**. Per [ADR-0001](../docs/decisions/0001-contract-first-availability.md) §1.5, the runtime endpoint `GET /api/operations/schema` (ticket I3) is the authoritative source; the sidecar `availability.json` (ticket I3b) is the authoritative companion (generated, never hand-edited; CI cross-checks runtime ⇄ sidecar). SDKs MUST NOT depend on `x-availability` reaching generated code — code-generators that surface vendor extensions may emit it as documentation, but consumers read availability from the runtime endpoint, not from the generated bindings. The 5-value vocabulary (`stable | beta | experimental | planned | deprecated`) is defined in the `AvailabilityValue` schema. See `schemas/FORMAT.md` §Availability Taxonomy for the operational rules (parser obligation: absent = stable; per-enum-value granularity is the `per_value_availability` primitive landed via ticket I17). **Localisation (per ticket [I26](https://trello.com/c/rcnqwgI4)).** Error responses + paused/blocked workflow statuses carry a localised human-readable `message` alongside a stable, never-localised `message_key`. Machine-readable fields (`error`, enum values, status codes) stay canonical English. - **Currently committed locales:** `en-GB` only (per ticket [`4GKyuYo6`](https://trello.com/c/4GKyuYo6)). The I26 carrier shape (`Accept-Language` + `Content-Language` + `Vary` headers + `locale` envelope field + `message_key` + `message_params`) is stable and exercised; the **catalog** of translated `message` strings is en-GB-only at runtime today. Additional locales (e.g. `pt-PT`) will be advertised by name when their catalogs ship — the request/response carrier shape does NOT change when a new locale lands. Treat unrequested locales as \"machine-code + `message_key` path is committed; localised `message` prose is not\" until this prose enumerates them by name. - **Request:** `Accept-Language` header per RFC 9110 §12.5.4 (q-value negotiation supported). The server selects the best-match locale from its supported list; falls back to `en-GB` when no match — which, until additional catalogs land, is every non-`en-GB` `Accept-Language`. - **Response:** `Content-Language: <locale>` echo on every localised response; `Vary: Accept-Language` on every response (CDN/cache correctness — different `Accept-Language` requests produce different responses). `Vary` is emitted unconditionally so the header contract does not flip when a second locale ships. - **Fallback locale:** `en-GB` (also the canonical locale for `message_key` translations and English `message` prose). - **SDK guidance:** switch on `error` (machine code) for typed error branches; surface `message_key` to client-side i18n catalogs (SDK companion work tracked at X19, cross-repo); display `message` for end-user UI; **never parse `message` for control flow** — it changes per locale. Carrier shape lives on `ErrorEnvelope` (envelope-level optional `message_key` + `message` + `locale` + `message_params`) and `ValidationErrorEnvelope` (also per-`details[]` entry). Existing 402 / 403 / 422 envelopes (`BalanceExhaustedResponse`, `FeatureNotAvailableResponse`, `FeatureTierRestrictedResponse`, `WorkflowPausedDetail`) inherit the convention. **Upload thresholds (per tickets [u0ar7Yye](https://trello.com/c/u0ar7Yye) + [58nBQLWQ](https://trello.com/c/58nBQLWQ)).** Canonical upload constants (single-shot cap, multipart chunk size, multipart concurrency default, multipart first-chunk size) live on the `UploadThresholds` schema with `const:`-pinned values. SDK generators emit these as typed binding constants so frontend / API / SDKs reference one source of truth instead of hardcoding magic numbers. A runtime `GET /api/uploads/limits` endpoint for dynamic discovery (per-tier / per-environment overrides) is a deferred follow-up.
4
4
  *
5
- * The version of the OpenAPI document: 2.154.0
5
+ * The version of the OpenAPI document: 2.158.0
6
6
  *
7
7
  *
8
8
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -4,7 +4,7 @@
4
4
  * GISL Compression API
5
5
  * REST API for the GISL (Give It Smaller) file compression and processing service. **Architecture:** - Upload files to get a `file_id` - Create workflows referencing uploaded files with operations (compress, thumbnail, image_watermark, text_watermark, merge, archive, convert, custom_luma, audio_overlay, audio_watermark) - Poll status, stream SSE events, or receive webhook callbacks - Download results per operation output **Response envelope:** All mutation and query endpoints return `{ success: true, data: {...} }` on success and `{ success: false, error: \"...\", details: [...] }` on failure. Exceptions: `GET /api/operations/schema` returns raw JSON (per-tier private caching with ETag revalidation per ADR-0002 + I3), health probes return flat objects, and `POST /api/contact` returns 204 with no body. **Availability metadata.** This spec uses the `x-availability` vendor extension as **decorative documentation only**. Per [ADR-0001](../docs/decisions/0001-contract-first-availability.md) §1.5, the runtime endpoint `GET /api/operations/schema` (ticket I3) is the authoritative source; the sidecar `availability.json` (ticket I3b) is the authoritative companion (generated, never hand-edited; CI cross-checks runtime ⇄ sidecar). SDKs MUST NOT depend on `x-availability` reaching generated code — code-generators that surface vendor extensions may emit it as documentation, but consumers read availability from the runtime endpoint, not from the generated bindings. The 5-value vocabulary (`stable | beta | experimental | planned | deprecated`) is defined in the `AvailabilityValue` schema. See `schemas/FORMAT.md` §Availability Taxonomy for the operational rules (parser obligation: absent = stable; per-enum-value granularity is the `per_value_availability` primitive landed via ticket I17). **Localisation (per ticket [I26](https://trello.com/c/rcnqwgI4)).** Error responses + paused/blocked workflow statuses carry a localised human-readable `message` alongside a stable, never-localised `message_key`. Machine-readable fields (`error`, enum values, status codes) stay canonical English. - **Currently committed locales:** `en-GB` only (per ticket [`4GKyuYo6`](https://trello.com/c/4GKyuYo6)). The I26 carrier shape (`Accept-Language` + `Content-Language` + `Vary` headers + `locale` envelope field + `message_key` + `message_params`) is stable and exercised; the **catalog** of translated `message` strings is en-GB-only at runtime today. Additional locales (e.g. `pt-PT`) will be advertised by name when their catalogs ship — the request/response carrier shape does NOT change when a new locale lands. Treat unrequested locales as \"machine-code + `message_key` path is committed; localised `message` prose is not\" until this prose enumerates them by name. - **Request:** `Accept-Language` header per RFC 9110 §12.5.4 (q-value negotiation supported). The server selects the best-match locale from its supported list; falls back to `en-GB` when no match — which, until additional catalogs land, is every non-`en-GB` `Accept-Language`. - **Response:** `Content-Language: <locale>` echo on every localised response; `Vary: Accept-Language` on every response (CDN/cache correctness — different `Accept-Language` requests produce different responses). `Vary` is emitted unconditionally so the header contract does not flip when a second locale ships. - **Fallback locale:** `en-GB` (also the canonical locale for `message_key` translations and English `message` prose). - **SDK guidance:** switch on `error` (machine code) for typed error branches; surface `message_key` to client-side i18n catalogs (SDK companion work tracked at X19, cross-repo); display `message` for end-user UI; **never parse `message` for control flow** — it changes per locale. Carrier shape lives on `ErrorEnvelope` (envelope-level optional `message_key` + `message` + `locale` + `message_params`) and `ValidationErrorEnvelope` (also per-`details[]` entry). Existing 402 / 403 / 422 envelopes (`BalanceExhaustedResponse`, `FeatureNotAvailableResponse`, `FeatureTierRestrictedResponse`, `WorkflowPausedDetail`) inherit the convention. **Upload thresholds (per tickets [u0ar7Yye](https://trello.com/c/u0ar7Yye) + [58nBQLWQ](https://trello.com/c/58nBQLWQ)).** Canonical upload constants (single-shot cap, multipart chunk size, multipart concurrency default, multipart first-chunk size) live on the `UploadThresholds` schema with `const:`-pinned values. SDK generators emit these as typed binding constants so frontend / API / SDKs reference one source of truth instead of hardcoding magic numbers. A runtime `GET /api/uploads/limits` endpoint for dynamic discovery (per-tier / per-environment overrides) is a deferred follow-up.
6
6
  *
7
- * The version of the OpenAPI document: 2.154.0
7
+ * The version of the OpenAPI document: 2.158.0
8
8
  *
9
9
  *
10
10
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -2,7 +2,7 @@
2
2
  * GISL Compression API
3
3
  * REST API for the GISL (Give It Smaller) file compression and processing service. **Architecture:** - Upload files to get a `file_id` - Create workflows referencing uploaded files with operations (compress, thumbnail, image_watermark, text_watermark, merge, archive, convert, custom_luma, audio_overlay, audio_watermark) - Poll status, stream SSE events, or receive webhook callbacks - Download results per operation output **Response envelope:** All mutation and query endpoints return `{ success: true, data: {...} }` on success and `{ success: false, error: \"...\", details: [...] }` on failure. Exceptions: `GET /api/operations/schema` returns raw JSON (per-tier private caching with ETag revalidation per ADR-0002 + I3), health probes return flat objects, and `POST /api/contact` returns 204 with no body. **Availability metadata.** This spec uses the `x-availability` vendor extension as **decorative documentation only**. Per [ADR-0001](../docs/decisions/0001-contract-first-availability.md) §1.5, the runtime endpoint `GET /api/operations/schema` (ticket I3) is the authoritative source; the sidecar `availability.json` (ticket I3b) is the authoritative companion (generated, never hand-edited; CI cross-checks runtime ⇄ sidecar). SDKs MUST NOT depend on `x-availability` reaching generated code — code-generators that surface vendor extensions may emit it as documentation, but consumers read availability from the runtime endpoint, not from the generated bindings. The 5-value vocabulary (`stable | beta | experimental | planned | deprecated`) is defined in the `AvailabilityValue` schema. See `schemas/FORMAT.md` §Availability Taxonomy for the operational rules (parser obligation: absent = stable; per-enum-value granularity is the `per_value_availability` primitive landed via ticket I17). **Localisation (per ticket [I26](https://trello.com/c/rcnqwgI4)).** Error responses + paused/blocked workflow statuses carry a localised human-readable `message` alongside a stable, never-localised `message_key`. Machine-readable fields (`error`, enum values, status codes) stay canonical English. - **Currently committed locales:** `en-GB` only (per ticket [`4GKyuYo6`](https://trello.com/c/4GKyuYo6)). The I26 carrier shape (`Accept-Language` + `Content-Language` + `Vary` headers + `locale` envelope field + `message_key` + `message_params`) is stable and exercised; the **catalog** of translated `message` strings is en-GB-only at runtime today. Additional locales (e.g. `pt-PT`) will be advertised by name when their catalogs ship — the request/response carrier shape does NOT change when a new locale lands. Treat unrequested locales as \"machine-code + `message_key` path is committed; localised `message` prose is not\" until this prose enumerates them by name. - **Request:** `Accept-Language` header per RFC 9110 §12.5.4 (q-value negotiation supported). The server selects the best-match locale from its supported list; falls back to `en-GB` when no match — which, until additional catalogs land, is every non-`en-GB` `Accept-Language`. - **Response:** `Content-Language: <locale>` echo on every localised response; `Vary: Accept-Language` on every response (CDN/cache correctness — different `Accept-Language` requests produce different responses). `Vary` is emitted unconditionally so the header contract does not flip when a second locale ships. - **Fallback locale:** `en-GB` (also the canonical locale for `message_key` translations and English `message` prose). - **SDK guidance:** switch on `error` (machine code) for typed error branches; surface `message_key` to client-side i18n catalogs (SDK companion work tracked at X19, cross-repo); display `message` for end-user UI; **never parse `message` for control flow** — it changes per locale. Carrier shape lives on `ErrorEnvelope` (envelope-level optional `message_key` + `message` + `locale` + `message_params`) and `ValidationErrorEnvelope` (also per-`details[]` entry). Existing 402 / 403 / 422 envelopes (`BalanceExhaustedResponse`, `FeatureNotAvailableResponse`, `FeatureTierRestrictedResponse`, `WorkflowPausedDetail`) inherit the convention. **Upload thresholds (per tickets [u0ar7Yye](https://trello.com/c/u0ar7Yye) + [58nBQLWQ](https://trello.com/c/58nBQLWQ)).** Canonical upload constants (single-shot cap, multipart chunk size, multipart concurrency default, multipart first-chunk size) live on the `UploadThresholds` schema with `const:`-pinned values. SDK generators emit these as typed binding constants so frontend / API / SDKs reference one source of truth instead of hardcoding magic numbers. A runtime `GET /api/uploads/limits` endpoint for dynamic discovery (per-tier / per-environment overrides) is a deferred follow-up.
4
4
  *
5
- * The version of the OpenAPI document: 2.154.0
5
+ * The version of the OpenAPI document: 2.158.0
6
6
  *
7
7
  *
8
8
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -4,7 +4,7 @@
4
4
  * GISL Compression API
5
5
  * REST API for the GISL (Give It Smaller) file compression and processing service. **Architecture:** - Upload files to get a `file_id` - Create workflows referencing uploaded files with operations (compress, thumbnail, image_watermark, text_watermark, merge, archive, convert, custom_luma, audio_overlay, audio_watermark) - Poll status, stream SSE events, or receive webhook callbacks - Download results per operation output **Response envelope:** All mutation and query endpoints return `{ success: true, data: {...} }` on success and `{ success: false, error: \"...\", details: [...] }` on failure. Exceptions: `GET /api/operations/schema` returns raw JSON (per-tier private caching with ETag revalidation per ADR-0002 + I3), health probes return flat objects, and `POST /api/contact` returns 204 with no body. **Availability metadata.** This spec uses the `x-availability` vendor extension as **decorative documentation only**. Per [ADR-0001](../docs/decisions/0001-contract-first-availability.md) §1.5, the runtime endpoint `GET /api/operations/schema` (ticket I3) is the authoritative source; the sidecar `availability.json` (ticket I3b) is the authoritative companion (generated, never hand-edited; CI cross-checks runtime ⇄ sidecar). SDKs MUST NOT depend on `x-availability` reaching generated code — code-generators that surface vendor extensions may emit it as documentation, but consumers read availability from the runtime endpoint, not from the generated bindings. The 5-value vocabulary (`stable | beta | experimental | planned | deprecated`) is defined in the `AvailabilityValue` schema. See `schemas/FORMAT.md` §Availability Taxonomy for the operational rules (parser obligation: absent = stable; per-enum-value granularity is the `per_value_availability` primitive landed via ticket I17). **Localisation (per ticket [I26](https://trello.com/c/rcnqwgI4)).** Error responses + paused/blocked workflow statuses carry a localised human-readable `message` alongside a stable, never-localised `message_key`. Machine-readable fields (`error`, enum values, status codes) stay canonical English. - **Currently committed locales:** `en-GB` only (per ticket [`4GKyuYo6`](https://trello.com/c/4GKyuYo6)). The I26 carrier shape (`Accept-Language` + `Content-Language` + `Vary` headers + `locale` envelope field + `message_key` + `message_params`) is stable and exercised; the **catalog** of translated `message` strings is en-GB-only at runtime today. Additional locales (e.g. `pt-PT`) will be advertised by name when their catalogs ship — the request/response carrier shape does NOT change when a new locale lands. Treat unrequested locales as \"machine-code + `message_key` path is committed; localised `message` prose is not\" until this prose enumerates them by name. - **Request:** `Accept-Language` header per RFC 9110 §12.5.4 (q-value negotiation supported). The server selects the best-match locale from its supported list; falls back to `en-GB` when no match — which, until additional catalogs land, is every non-`en-GB` `Accept-Language`. - **Response:** `Content-Language: <locale>` echo on every localised response; `Vary: Accept-Language` on every response (CDN/cache correctness — different `Accept-Language` requests produce different responses). `Vary` is emitted unconditionally so the header contract does not flip when a second locale ships. - **Fallback locale:** `en-GB` (also the canonical locale for `message_key` translations and English `message` prose). - **SDK guidance:** switch on `error` (machine code) for typed error branches; surface `message_key` to client-side i18n catalogs (SDK companion work tracked at X19, cross-repo); display `message` for end-user UI; **never parse `message` for control flow** — it changes per locale. Carrier shape lives on `ErrorEnvelope` (envelope-level optional `message_key` + `message` + `locale` + `message_params`) and `ValidationErrorEnvelope` (also per-`details[]` entry). Existing 402 / 403 / 422 envelopes (`BalanceExhaustedResponse`, `FeatureNotAvailableResponse`, `FeatureTierRestrictedResponse`, `WorkflowPausedDetail`) inherit the convention. **Upload thresholds (per tickets [u0ar7Yye](https://trello.com/c/u0ar7Yye) + [58nBQLWQ](https://trello.com/c/58nBQLWQ)).** Canonical upload constants (single-shot cap, multipart chunk size, multipart concurrency default, multipart first-chunk size) live on the `UploadThresholds` schema with `const:`-pinned values. SDK generators emit these as typed binding constants so frontend / API / SDKs reference one source of truth instead of hardcoding magic numbers. A runtime `GET /api/uploads/limits` endpoint for dynamic discovery (per-tier / per-environment overrides) is a deferred follow-up.
6
6
  *
7
- * The version of the OpenAPI document: 2.154.0
7
+ * The version of the OpenAPI document: 2.158.0
8
8
  *
9
9
  *
10
10
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
package/openapi/api.yaml CHANGED
@@ -89,7 +89,7 @@ info:
89
89
  of truth instead of hardcoding magic numbers. A runtime
90
90
  `GET /api/uploads/limits` endpoint for dynamic discovery
91
91
  (per-tier / per-environment overrides) is a deferred follow-up.
92
- version: 2.154.0
92
+ version: 2.158.0
93
93
  contact:
94
94
  name: API Support
95
95
 
@@ -10089,6 +10089,22 @@ components:
10089
10089
  commit, paused/resumed state change, etc.). The API
10090
10090
  always emits this field; spec catches up to behaviour
10091
10091
  shipping since `WorkflowController.php:178-179`.
10092
+ completed_at:
10093
+ type: string
10094
+ format: date-time
10095
+ description: |
10096
+ ISO-8601 timestamp at which the workflow reached a TERMINAL
10097
+ status (`completed` / `failed` / `partially_failed` /
10098
+ `cancelled` / `expired`) — the authoritative completion instant.
10099
+ Unlike `updated_at`, this does NOT move once set: a later
10100
+ credit-settlement (or any other post-terminal row update) bumps
10101
+ `updated_at` but never `completed_at`, so `completed_at` is the
10102
+ reliable basis for a run's wall-clock duration
10103
+ (`completed_at − created_at`).
10104
+ OPTIONAL (additive) — absent while the workflow is non-terminal
10105
+ (`pending` / `in_progress` / `paused_insufficient_credits`) and
10106
+ for legacy rows with no recorded completion instant. Per ticket
10107
+ [`gpXrJwuI`](https://trello.com/c/gpXrJwuI).
10092
10108
  jobs:
10093
10109
  type: array
10094
10110
  items:
@@ -10260,6 +10276,19 @@ components:
10260
10276
  type: string
10261
10277
  format: date-time
10262
10278
  description: ISO-8601 workflow-creation timestamp (the list sort key, DESC).
10279
+ completed_at:
10280
+ type: string
10281
+ format: date-time
10282
+ description: |
10283
+ ISO-8601 timestamp at which the workflow reached a TERMINAL
10284
+ status — the authoritative completion instant, stable once set (a
10285
+ later credit-settlement update never moves it, unlike a plain
10286
+ last-updated timestamp). The list row derives a run's wall-clock
10287
+ duration from `completed_at − created_at`.
10288
+ OPTIONAL (additive) — absent while the workflow is non-terminal
10289
+ and for legacy rows with no recorded completion instant. Mirrors
10290
+ `WorkflowStatusResponse.completed_at`. Per ticket
10291
+ [`gpXrJwuI`](https://trello.com/c/gpXrJwuI).
10263
10292
  jobs:
10264
10293
  type: array
10265
10294
  items:
@@ -10818,6 +10847,29 @@ components:
10818
10847
  $ref: '#/components/schemas/JobDownload'
10819
10848
  bundle:
10820
10849
  $ref: '#/components/schemas/DownloadBundle'
10850
+ retention_expires_at:
10851
+ type: string
10852
+ format: date-time
10853
+ description: |
10854
+ When this workflow's downloadable outputs are purged and the
10855
+ download links stop working (RFC 3339 / ISO-8601). Server-computed
10856
+ as the workflow's `created_at` plus the account's effective
10857
+ **download-retention window** (per-tier: free 7 days / paid 30 days
10858
+ / enterprise custom — ticket
10859
+ [`G58ei6Z9`](https://trello.com/c/G58ei6Z9)). Lets consumers render
10860
+ a proactive "Downloads available until <date>" affordance without
10861
+ waiting for the list to empty.
10862
+
10863
+ **This is the retention (data-lifecycle) expiry, distinct from
10864
+ `bundle.expires_at`** — that field is the short-lived expiry of a
10865
+ single pre-signed bundle URL, whereas this is when the underlying
10866
+ deliverables themselves are removed.
10867
+
10868
+ Optional. **Absent** when not applicable — no retention window
10869
+ configured, or the workflow's outputs are not yet retained. The
10870
+ enterprise window is per-account (not a public constant), so this
10871
+ expiry cannot be derived client-side and is only available when the
10872
+ server emits it; consumers read it if present.
10821
10873
 
10822
10874
  DownloadBundle:
10823
10875
  type: object
@@ -104,7 +104,7 @@
104
104
  {
105
105
  "availability": "stable",
106
106
  "constraint_id": "compress.video.target_size.container",
107
- "message": "target_size encoding is mp4/MOV-only; not yet available for {output_format} output. Use crf.",
107
+ "message": "target_size encoding is mp4/MOV-only; not yet available for {output_container} output. Use crf.",
108
108
  "when": {
109
109
  "all": [
110
110
  {
@@ -112,7 +112,7 @@
112
112
  "field": "compress.encoding_mode"
113
113
  },
114
114
  {
115
- "field": "output_format",
115
+ "field": "output_container",
116
116
  "in": [
117
117
  "webm",
118
118
  "ogg"
@@ -214,6 +214,114 @@
214
214
  ]
215
215
  },
216
216
  "wire_code": "invalid_options"
217
+ },
218
+ {
219
+ "availability": "stable",
220
+ "constraint_id": "compress.video.codec_container.webm",
221
+ "message": "WebM output supports the vp9 or av1 codec; {compress.codec} is incompatible.",
222
+ "when": {
223
+ "all": [
224
+ {
225
+ "field": "output_container",
226
+ "in": [
227
+ "webm"
228
+ ]
229
+ },
230
+ {
231
+ "field": "compress.codec",
232
+ "isSet": true
233
+ },
234
+ {
235
+ "field": "compress.codec",
236
+ "in": [
237
+ "h264",
238
+ "h265"
239
+ ]
240
+ }
241
+ ]
242
+ },
243
+ "wire_code": "invalid_options"
244
+ },
245
+ {
246
+ "availability": "stable",
247
+ "constraint_id": "compress.video.codec_container.mp4_mov",
248
+ "message": "MP4/MOV output supports the h264 or h265 codec; {compress.codec} is incompatible.",
249
+ "when": {
250
+ "all": [
251
+ {
252
+ "field": "output_container",
253
+ "in": [
254
+ "mp4",
255
+ "mov"
256
+ ]
257
+ },
258
+ {
259
+ "field": "compress.codec",
260
+ "isSet": true
261
+ },
262
+ {
263
+ "field": "compress.codec",
264
+ "in": [
265
+ "vp9",
266
+ "av1"
267
+ ]
268
+ }
269
+ ]
270
+ },
271
+ "wire_code": "invalid_options"
272
+ },
273
+ {
274
+ "availability": "stable",
275
+ "constraint_id": "compress.video.audio_codec_container.webm",
276
+ "message": "WebM output supports opus or vorbis audio; {compress.audio_codec} is incompatible.",
277
+ "when": {
278
+ "all": [
279
+ {
280
+ "field": "output_container",
281
+ "in": [
282
+ "webm"
283
+ ]
284
+ },
285
+ {
286
+ "field": "compress.audio_codec",
287
+ "isSet": true
288
+ },
289
+ {
290
+ "field": "compress.audio_codec",
291
+ "in": [
292
+ "aac"
293
+ ]
294
+ }
295
+ ]
296
+ },
297
+ "wire_code": "invalid_options"
298
+ },
299
+ {
300
+ "availability": "stable",
301
+ "constraint_id": "compress.video.audio_codec_container.mp4_mov",
302
+ "message": "MP4/MOV output supports aac or opus audio; {compress.audio_codec} is incompatible.",
303
+ "when": {
304
+ "all": [
305
+ {
306
+ "field": "output_container",
307
+ "in": [
308
+ "mp4",
309
+ "mov"
310
+ ]
311
+ },
312
+ {
313
+ "field": "compress.audio_codec",
314
+ "isSet": true
315
+ },
316
+ {
317
+ "field": "compress.audio_codec",
318
+ "in": [
319
+ "vorbis"
320
+ ]
321
+ }
322
+ ]
323
+ },
324
+ "wire_code": "invalid_options"
217
325
  }
218
326
  ],
219
327
  "produces": {
@@ -580,5 +688,5 @@
580
688
  "isAnimated": "maybe"
581
689
  }
582
690
  },
583
- "schema_version": "2.154.0"
691
+ "schema_version": "2.158.0"
584
692
  }