@giveitsmaller/contracts 0.2.3 → 0.4.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 (397) hide show
  1. package/asyncapi/events.yaml +1777 -172
  2. package/availability/availability.json +2449 -0
  3. package/dist/asyncapi/Failure.d.ts +25 -0
  4. package/dist/asyncapi/Failure.js +1 -0
  5. package/dist/asyncapi/JobInputRole.d.ts +6 -0
  6. package/dist/asyncapi/JobInputRole.js +7 -0
  7. package/dist/asyncapi/MergeOutputType.d.ts +1 -3
  8. package/dist/asyncapi/MergeOutputType.js +0 -2
  9. package/dist/asyncapi/MultiOutputCompletion.d.ts +25 -0
  10. package/dist/asyncapi/MultiOutputCompletion.js +1 -0
  11. package/dist/asyncapi/NotificationsOperationsQueue.d.ts +4 -2
  12. package/dist/asyncapi/OperationMetrics.d.ts +3 -0
  13. package/dist/asyncapi/OperationProgress.d.ts +2 -0
  14. package/dist/asyncapi/OperationResult.d.ts +4 -19
  15. package/dist/asyncapi/OperationType.d.ts +6 -6
  16. package/dist/asyncapi/OperationType.js +5 -5
  17. package/dist/asyncapi/PageIndexed.d.ts +8 -0
  18. package/dist/asyncapi/PageIndexed.js +1 -0
  19. package/dist/asyncapi/PositionIndexed.d.ts +8 -0
  20. package/dist/asyncapi/PositionIndexed.js +1 -0
  21. package/dist/asyncapi/ProgressStatus.d.ts +3 -0
  22. package/dist/asyncapi/ProgressStatus.js +3 -0
  23. package/dist/asyncapi/ReEncodeDecision.d.ts +5 -0
  24. package/dist/asyncapi/ReEncodeDecision.js +6 -0
  25. package/dist/asyncapi/SingleOutputCompletion.d.ts +25 -0
  26. package/dist/asyncapi/SingleOutputCompletion.js +1 -0
  27. package/dist/asyncapi/SourceEntry.d.ts +2 -1
  28. package/dist/asyncapi/Unindexed.d.ts +8 -0
  29. package/dist/asyncapi/Unindexed.js +1 -0
  30. package/dist/asyncapi/UploadProbeCompletion.d.ts +16 -0
  31. package/dist/asyncapi/UploadProbeCompletion.js +1 -0
  32. package/dist/asyncapi/UploadProbeMediaMetadata.d.ts +18 -0
  33. package/dist/asyncapi/UploadProbeMediaMetadata.js +1 -0
  34. package/dist/asyncapi/UploadProbeProcessingClass.d.ts +6 -0
  35. package/dist/asyncapi/UploadProbeProcessingClass.js +7 -0
  36. package/dist/asyncapi/UploadProbeRequest.d.ts +10 -0
  37. package/dist/asyncapi/UploadProbeRequest.js +1 -0
  38. package/dist/asyncapi/UploadProbeStatus.d.ts +7 -0
  39. package/dist/asyncapi/UploadProbeStatus.js +8 -0
  40. package/dist/asyncapi/index.d.ts +13 -0
  41. package/dist/asyncapi/index.js +4 -0
  42. package/dist/openapi/models/AudioWatermarkDecodeRequest.d.ts +64 -0
  43. package/dist/openapi/models/AudioWatermarkDecodeRequest.js +53 -0
  44. package/dist/openapi/models/AudioWatermarkDecodeResponse.d.ts +80 -0
  45. package/dist/openapi/models/AudioWatermarkDecodeResponse.js +64 -0
  46. package/dist/openapi/models/AuthErrorResponse.d.ts +135 -0
  47. package/dist/openapi/models/AuthErrorResponse.js +66 -0
  48. package/dist/openapi/models/AuthErrorType.d.ts +73 -0
  49. package/dist/openapi/models/AuthErrorType.js +91 -0
  50. package/dist/openapi/models/AvailabilityValue.d.ts +43 -0
  51. package/dist/openapi/models/AvailabilityValue.js +61 -0
  52. package/dist/openapi/models/BalanceExhaustedResponse.d.ts +176 -0
  53. package/dist/openapi/models/BalanceExhaustedResponse.js +86 -0
  54. package/dist/openapi/models/BalanceExhaustedResponseAllOfLinks.d.ts +38 -0
  55. package/dist/openapi/models/BalanceExhaustedResponseAllOfLinks.js +43 -0
  56. package/dist/openapi/models/CallbackEventType.d.ts +2 -2
  57. package/dist/openapi/models/CallbackEventType.js +2 -2
  58. package/dist/openapi/models/ConnectionSource.d.ts +64 -0
  59. package/dist/openapi/models/ConnectionSource.js +57 -0
  60. package/dist/openapi/models/ContactRequest.d.ts +2 -2
  61. package/dist/openapi/models/ContactRequest.js +2 -2
  62. package/dist/openapi/models/ContactSubject.d.ts +2 -2
  63. package/dist/openapi/models/ContactSubject.js +2 -2
  64. package/dist/openapi/models/ContactValidationErrorResponse.d.ts +2 -2
  65. package/dist/openapi/models/ContactValidationErrorResponse.js +2 -2
  66. package/dist/openapi/models/CreateExternalImport403Response.d.ts +24 -0
  67. package/dist/openapi/models/CreateExternalImport403Response.js +58 -0
  68. package/dist/openapi/models/CreateExternalImport422Response.d.ts +23 -0
  69. package/dist/openapi/models/CreateExternalImport422Response.js +51 -0
  70. package/dist/openapi/models/CreateWorkflow422Response.d.ts +24 -0
  71. package/dist/openapi/models/CreateWorkflow422Response.js +58 -0
  72. package/dist/openapi/models/CreditTransaction.d.ts +186 -0
  73. package/dist/openapi/models/CreditTransaction.js +100 -0
  74. package/dist/openapi/models/CreditTransactionSourceBucket.d.ts +46 -0
  75. package/dist/openapi/models/CreditTransactionSourceBucket.js +64 -0
  76. package/dist/openapi/models/CreditsBalanceResponse.d.ts +84 -0
  77. package/dist/openapi/models/CreditsBalanceResponse.js +68 -0
  78. package/dist/openapi/models/CreditsBalanceSuccessEnvelope.d.ts +46 -0
  79. package/dist/openapi/models/CreditsBalanceSuccessEnvelope.js +54 -0
  80. package/dist/openapi/models/CreditsUsageResponse.d.ts +51 -0
  81. package/dist/openapi/models/CreditsUsageResponse.js +56 -0
  82. package/dist/openapi/models/CreditsUsageSuccessEnvelope.d.ts +46 -0
  83. package/dist/openapi/models/CreditsUsageSuccessEnvelope.js +54 -0
  84. package/dist/openapi/models/Delivery.d.ts +98 -0
  85. package/dist/openapi/models/Delivery.js +65 -0
  86. package/dist/openapi/models/DeliveryOutputRef.d.ts +44 -0
  87. package/dist/openapi/models/DeliveryOutputRef.js +45 -0
  88. package/dist/openapi/models/DeliveryPlan.d.ts +77 -0
  89. package/dist/openapi/models/DeliveryPlan.js +72 -0
  90. package/dist/openapi/models/DeliveryPlanOutput.d.ts +53 -0
  91. package/dist/openapi/models/DeliveryPlanOutput.js +52 -0
  92. package/dist/openapi/models/DeliveryPlanReason.d.ts +35 -0
  93. package/dist/openapi/models/DeliveryPlanReason.js +53 -0
  94. package/dist/openapi/models/DeliverySelection.d.ts +62 -0
  95. package/dist/openapi/models/DeliverySelection.js +54 -0
  96. package/dist/openapi/models/ErrorEnvelope.d.ts +102 -5
  97. package/dist/openapi/models/ErrorEnvelope.js +10 -2
  98. package/dist/openapi/models/EstimateQuality.d.ts +34 -0
  99. package/dist/openapi/models/EstimateQuality.js +52 -0
  100. package/dist/openapi/models/EstimateRange.d.ts +48 -0
  101. package/dist/openapi/models/EstimateRange.js +51 -0
  102. package/dist/openapi/models/ExternalDestination.d.ts +41 -0
  103. package/dist/openapi/models/ExternalDestination.js +47 -0
  104. package/dist/openapi/models/ExternalImportCreatedResponse.d.ts +49 -0
  105. package/dist/openapi/models/ExternalImportCreatedResponse.js +51 -0
  106. package/dist/openapi/models/ExternalImportCreatedSuccessEnvelope.d.ts +46 -0
  107. package/dist/openapi/models/ExternalImportCreatedSuccessEnvelope.js +54 -0
  108. package/dist/openapi/models/ExternalImportRequest.d.ts +92 -0
  109. package/dist/openapi/models/ExternalImportRequest.js +61 -0
  110. package/dist/openapi/models/ExternalImportToken.d.ts +51 -0
  111. package/dist/openapi/models/ExternalImportToken.js +53 -0
  112. package/dist/openapi/models/ExternalSource.d.ts +31 -0
  113. package/dist/openapi/models/ExternalSource.js +47 -0
  114. package/dist/openapi/models/FeatureNotAvailableResponse.d.ts +163 -0
  115. package/dist/openapi/models/FeatureNotAvailableResponse.js +76 -0
  116. package/dist/openapi/models/FeatureTierRestrictedResponse.d.ts +154 -0
  117. package/dist/openapi/models/FeatureTierRestrictedResponse.js +76 -0
  118. package/dist/openapi/models/FeatureViolation.d.ts +108 -0
  119. package/dist/openapi/models/FeatureViolation.js +63 -0
  120. package/dist/openapi/models/JobDefinition.d.ts +125 -14
  121. package/dist/openapi/models/JobDefinition.js +25 -4
  122. package/dist/openapi/models/JobDownload.d.ts +2 -2
  123. package/dist/openapi/models/JobDownload.js +2 -2
  124. package/dist/openapi/models/JobInputV2.d.ts +89 -0
  125. package/dist/openapi/models/JobInputV2.js +56 -0
  126. package/dist/openapi/models/JobOutputSource.d.ts +57 -0
  127. package/dist/openapi/models/JobOutputSource.js +55 -0
  128. package/dist/openapi/models/JobResponse.d.ts +2 -2
  129. package/dist/openapi/models/JobResponse.js +2 -2
  130. package/dist/openapi/models/JobStatus.d.ts +17 -8
  131. package/dist/openapi/models/JobStatus.js +17 -8
  132. package/dist/openapi/models/JobType.d.ts +2 -2
  133. package/dist/openapi/models/JobType.js +2 -2
  134. package/dist/openapi/models/LivenessResponse.d.ts +2 -2
  135. package/dist/openapi/models/LivenessResponse.js +2 -2
  136. package/dist/openapi/models/LoginUser200Response.d.ts +46 -0
  137. package/dist/openapi/models/LoginUser200Response.js +54 -0
  138. package/dist/openapi/models/LoginUser200ResponseData.d.ts +33 -0
  139. package/dist/openapi/models/LoginUser200ResponseData.js +44 -0
  140. package/dist/openapi/models/LoginUser200ResponseDataUser.d.ts +50 -0
  141. package/dist/openapi/models/LoginUser200ResponseDataUser.js +51 -0
  142. package/dist/openapi/models/LoginUserRequest.d.ts +38 -0
  143. package/dist/openapi/models/LoginUserRequest.js +47 -0
  144. package/dist/openapi/models/LogoutUser200Response.d.ts +50 -0
  145. package/dist/openapi/models/LogoutUser200Response.js +53 -0
  146. package/dist/openapi/models/MetadataResponse.d.ts +13 -2
  147. package/dist/openapi/models/MetadataResponse.js +6 -2
  148. package/dist/openapi/models/MetadataResponseDimensions.d.ts +2 -2
  149. package/dist/openapi/models/MetadataResponseDimensions.js +2 -2
  150. package/dist/openapi/models/MetadataResponseExif.d.ts +2 -2
  151. package/dist/openapi/models/MetadataResponseExif.js +3 -3
  152. package/dist/openapi/models/MetadataResponseExifGps.d.ts +2 -2
  153. package/dist/openapi/models/MetadataResponseExifGps.js +2 -2
  154. package/dist/openapi/models/MetadataSuccessEnvelope.d.ts +3 -3
  155. package/dist/openapi/models/MetadataSuccessEnvelope.js +2 -2
  156. package/dist/openapi/models/MimeGroupSchema.d.ts +46 -2
  157. package/dist/openapi/models/MimeGroupSchema.js +11 -2
  158. package/dist/openapi/models/MultipartCompleteRequest.d.ts +3 -3
  159. package/dist/openapi/models/MultipartCompleteRequest.js +2 -2
  160. package/dist/openapi/models/MultipartCompleteRequestPartsInner.d.ts +2 -2
  161. package/dist/openapi/models/MultipartCompleteRequestPartsInner.js +2 -2
  162. package/dist/openapi/models/MultipartCompleteResponse.d.ts +7 -4
  163. package/dist/openapi/models/MultipartCompleteResponse.js +2 -2
  164. package/dist/openapi/models/MultipartCompleteSuccessEnvelope.d.ts +3 -3
  165. package/dist/openapi/models/MultipartCompleteSuccessEnvelope.js +2 -2
  166. package/dist/openapi/models/MultipartInitiateRequestMetadataHint.d.ts +56 -0
  167. package/dist/openapi/models/MultipartInitiateRequestMetadataHint.js +45 -0
  168. package/dist/openapi/models/MultipartInitiateResponse.d.ts +38 -6
  169. package/dist/openapi/models/MultipartInitiateResponse.js +7 -2
  170. package/dist/openapi/models/MultipartInitiateSuccessEnvelope.d.ts +3 -3
  171. package/dist/openapi/models/MultipartInitiateSuccessEnvelope.js +2 -2
  172. package/dist/openapi/models/MultipartKeepaliveResponse.d.ts +43 -0
  173. package/dist/openapi/models/MultipartKeepaliveResponse.js +47 -0
  174. package/dist/openapi/models/MultipartKeepaliveSuccessEnvelope.d.ts +46 -0
  175. package/dist/openapi/models/MultipartKeepaliveSuccessEnvelope.js +54 -0
  176. package/dist/openapi/models/MultipartPartListing.d.ts +59 -0
  177. package/dist/openapi/models/MultipartPartListing.js +55 -0
  178. package/dist/openapi/models/MultipartPresignRequest.d.ts +41 -0
  179. package/dist/openapi/models/MultipartPresignRequest.js +43 -0
  180. package/dist/openapi/models/MultipartPresignResponse.d.ts +46 -0
  181. package/dist/openapi/models/MultipartPresignResponse.js +48 -0
  182. package/dist/openapi/models/MultipartPresignSuccessEnvelope.d.ts +46 -0
  183. package/dist/openapi/models/MultipartPresignSuccessEnvelope.js +54 -0
  184. package/dist/openapi/models/MultipartStatusResponse.d.ts +103 -0
  185. package/dist/openapi/models/MultipartStatusResponse.js +76 -0
  186. package/dist/openapi/models/MultipartStatusSuccessEnvelope.d.ts +46 -0
  187. package/dist/openapi/models/MultipartStatusSuccessEnvelope.js +54 -0
  188. package/dist/openapi/models/OperationDefinition.d.ts +2 -2
  189. package/dist/openapi/models/OperationDefinition.js +2 -2
  190. package/dist/openapi/models/OperationDownload.d.ts +30 -2
  191. package/dist/openapi/models/OperationDownload.js +6 -2
  192. package/dist/openapi/models/OperationInputModel.d.ts +4 -4
  193. package/dist/openapi/models/OperationInputModel.js +4 -4
  194. package/dist/openapi/models/OperationResponse.d.ts +21 -2
  195. package/dist/openapi/models/OperationResponse.js +6 -2
  196. package/dist/openapi/models/OperationResult.d.ts +2 -2
  197. package/dist/openapi/models/OperationResult.js +2 -2
  198. package/dist/openapi/models/OperationResultMetrics.d.ts +2 -2
  199. package/dist/openapi/models/OperationResultMetrics.js +2 -2
  200. package/dist/openapi/models/OperationSchemaDefinition.d.ts +52 -5
  201. package/dist/openapi/models/OperationSchemaDefinition.js +10 -6
  202. package/dist/openapi/models/OperationStatus.d.ts +2 -2
  203. package/dist/openapi/models/OperationStatus.js +2 -2
  204. package/dist/openapi/models/OperationType.d.ts +17 -5
  205. package/dist/openapi/models/OperationType.js +18 -6
  206. package/dist/openapi/models/OperationsSchemaResponse.d.ts +70 -10
  207. package/dist/openapi/models/OperationsSchemaResponse.js +17 -2
  208. package/dist/openapi/models/OptionSchema.d.ts +42 -4
  209. package/dist/openapi/models/OptionSchema.js +12 -2
  210. package/dist/openapi/models/PerValueAvailabilityEntry.d.ts +80 -0
  211. package/dist/openapi/models/PerValueAvailabilityEntry.js +53 -0
  212. package/dist/openapi/models/PresignedUrlPart.d.ts +2 -2
  213. package/dist/openapi/models/PresignedUrlPart.js +3 -3
  214. package/dist/openapi/models/ProcessingClass.d.ts +35 -0
  215. package/dist/openapi/models/ProcessingClass.js +53 -0
  216. package/dist/openapi/models/ProcessingClassBandViolation.d.ts +149 -0
  217. package/dist/openapi/models/ProcessingClassBandViolation.js +81 -0
  218. package/dist/openapi/models/ProcessingClassExceedsBandResponse.d.ts +174 -0
  219. package/dist/openapi/models/ProcessingClassExceedsBandResponse.js +76 -0
  220. package/dist/openapi/models/ProcessingClassHint.d.ts +36 -0
  221. package/dist/openapi/models/ProcessingClassHint.js +54 -0
  222. package/dist/openapi/models/ProcessingClassReason.d.ts +46 -0
  223. package/dist/openapi/models/ProcessingClassReason.js +64 -0
  224. package/dist/openapi/models/ProcessingClassRejectReason.d.ts +53 -0
  225. package/dist/openapi/models/ProcessingClassRejectReason.js +71 -0
  226. package/dist/openapi/models/ProcessingPlan.d.ts +70 -0
  227. package/dist/openapi/models/ProcessingPlan.js +49 -0
  228. package/dist/openapi/models/ProcessingPlanJob.d.ts +81 -0
  229. package/dist/openapi/models/ProcessingPlanJob.js +71 -0
  230. package/dist/openapi/models/ReadinessResponse.d.ts +2 -2
  231. package/dist/openapi/models/ReadinessResponse.js +2 -2
  232. package/dist/openapi/models/ResponseEnvelope.d.ts +2 -2
  233. package/dist/openapi/models/ResponseEnvelope.js +2 -2
  234. package/dist/openapi/models/RetryResponse.d.ts +5 -5
  235. package/dist/openapi/models/RetryResponse.js +2 -2
  236. package/dist/openapi/models/RetrySuccessEnvelope.d.ts +3 -3
  237. package/dist/openapi/models/RetrySuccessEnvelope.js +2 -2
  238. package/dist/openapi/models/SseEventType.d.ts +2 -2
  239. package/dist/openapi/models/SseEventType.js +2 -2
  240. package/dist/openapi/models/SseJobCompletedData.d.ts +3 -3
  241. package/dist/openapi/models/SseJobCompletedData.js +2 -2
  242. package/dist/openapi/models/SseJobFailedData.d.ts +3 -3
  243. package/dist/openapi/models/SseJobFailedData.js +2 -2
  244. package/dist/openapi/models/SseOperationCompletedData.d.ts +4 -4
  245. package/dist/openapi/models/SseOperationCompletedData.js +2 -2
  246. package/dist/openapi/models/SseOperationFailedData.d.ts +3 -3
  247. package/dist/openapi/models/SseOperationFailedData.js +2 -2
  248. package/dist/openapi/models/SseOperationProgressData.d.ts +61 -3
  249. package/dist/openapi/models/SseOperationProgressData.js +22 -2
  250. package/dist/openapi/models/SseWorkflowTerminalData.d.ts +26 -4
  251. package/dist/openapi/models/SseWorkflowTerminalData.js +4 -2
  252. package/dist/openapi/models/TierRestrictionKind.d.ts +33 -0
  253. package/dist/openapi/models/TierRestrictionKind.js +51 -0
  254. package/dist/openapi/models/TierRestrictionResponse.d.ts +173 -0
  255. package/dist/openapi/models/TierRestrictionResponse.js +83 -0
  256. package/dist/openapi/models/UploadConstraintsApplied.d.ts +70 -0
  257. package/dist/openapi/models/UploadConstraintsApplied.js +57 -0
  258. package/dist/openapi/models/UploadDurationExceedsTierResponse.d.ts +155 -0
  259. package/dist/openapi/models/UploadDurationExceedsTierResponse.js +82 -0
  260. package/dist/openapi/models/UploadFile403Response.d.ts +27 -0
  261. package/dist/openapi/models/UploadFile403Response.js +47 -0
  262. package/dist/openapi/models/UploadFile422Response.d.ts +27 -0
  263. package/dist/openapi/models/UploadFile422Response.js +47 -0
  264. package/dist/openapi/models/UploadProbeMediaMetadata.d.ts +172 -0
  265. package/dist/openapi/models/UploadProbeMediaMetadata.js +69 -0
  266. package/dist/openapi/models/UploadProbeProcessingClass.d.ts +33 -0
  267. package/dist/openapi/models/UploadProbeProcessingClass.js +51 -0
  268. package/dist/openapi/models/UploadProbeResponse.d.ts +58 -0
  269. package/dist/openapi/models/UploadProbeResponse.js +58 -0
  270. package/dist/openapi/models/UploadProbeStatus.d.ts +41 -0
  271. package/dist/openapi/models/UploadProbeStatus.js +59 -0
  272. package/dist/openapi/models/UploadResponse.d.ts +17 -3
  273. package/dist/openapi/models/UploadResponse.js +7 -2
  274. package/dist/openapi/models/UploadSizeExceedsTierResponse.d.ts +155 -0
  275. package/dist/openapi/models/UploadSizeExceedsTierResponse.js +82 -0
  276. package/dist/openapi/models/UploadSource.d.ts +48 -0
  277. package/dist/openapi/models/UploadSource.js +53 -0
  278. package/dist/openapi/models/UploadSuccessEnvelope.d.ts +3 -3
  279. package/dist/openapi/models/UploadSuccessEnvelope.js +2 -2
  280. package/dist/openapi/models/UploadThresholds.d.ts +126 -0
  281. package/dist/openapi/models/UploadThresholds.js +79 -0
  282. package/dist/openapi/models/UserTier.d.ts +41 -0
  283. package/dist/openapi/models/UserTier.js +59 -0
  284. package/dist/openapi/models/ValidationErrorEnvelope.d.ts +51 -4
  285. package/dist/openapi/models/ValidationErrorEnvelope.js +10 -2
  286. package/dist/openapi/models/ValidationErrorEnvelopeDetailsInner.d.ts +37 -4
  287. package/dist/openapi/models/ValidationErrorEnvelopeDetailsInner.js +6 -2
  288. package/dist/openapi/models/WarningType.d.ts +48 -0
  289. package/dist/openapi/models/WarningType.js +66 -0
  290. package/dist/openapi/models/WebhookOperationContext.d.ts +3 -3
  291. package/dist/openapi/models/WebhookOperationContext.js +2 -2
  292. package/dist/openapi/models/WebhookPayload.d.ts +2 -2
  293. package/dist/openapi/models/WebhookPayload.js +3 -3
  294. package/dist/openapi/models/WorkflowCancelBillingEffect.d.ts +36 -0
  295. package/dist/openapi/models/WorkflowCancelBillingEffect.js +54 -0
  296. package/dist/openapi/models/WorkflowCancelResponse.d.ts +66 -0
  297. package/dist/openapi/models/WorkflowCancelResponse.js +62 -0
  298. package/dist/openapi/models/WorkflowCancelSuccessEnvelope.d.ts +46 -0
  299. package/dist/openapi/models/WorkflowCancelSuccessEnvelope.js +54 -0
  300. package/dist/openapi/models/WorkflowCreateRequest.d.ts +39 -5
  301. package/dist/openapi/models/WorkflowCreateRequest.js +11 -5
  302. package/dist/openapi/models/WorkflowCreateResponse.d.ts +63 -2
  303. package/dist/openapi/models/WorkflowCreateResponse.js +21 -2
  304. package/dist/openapi/models/WorkflowCreateSuccessEnvelope.d.ts +3 -3
  305. package/dist/openapi/models/WorkflowCreateSuccessEnvelope.js +2 -2
  306. package/dist/openapi/models/WorkflowDownloadResponse.d.ts +2 -2
  307. package/dist/openapi/models/WorkflowDownloadResponse.js +2 -2
  308. package/dist/openapi/models/WorkflowDownloadSuccessEnvelope.d.ts +3 -3
  309. package/dist/openapi/models/WorkflowDownloadSuccessEnvelope.js +2 -2
  310. package/dist/openapi/models/WorkflowEdge.d.ts +2 -2
  311. package/dist/openapi/models/WorkflowEdge.js +2 -2
  312. package/dist/openapi/models/WorkflowExpiredResponse.d.ts +145 -0
  313. package/dist/openapi/models/WorkflowExpiredResponse.js +75 -0
  314. package/dist/openapi/models/WorkflowPauseRequiredAction.d.ts +30 -0
  315. package/dist/openapi/models/WorkflowPauseRequiredAction.js +48 -0
  316. package/dist/openapi/models/WorkflowPausedDetail.d.ts +99 -0
  317. package/dist/openapi/models/WorkflowPausedDetail.js +65 -0
  318. package/dist/openapi/models/WorkflowPausedDetailLinks.d.ts +47 -0
  319. package/dist/openapi/models/WorkflowPausedDetailLinks.js +45 -0
  320. package/dist/openapi/models/WorkflowProcessing.d.ts +36 -0
  321. package/dist/openapi/models/WorkflowProcessing.js +42 -0
  322. package/dist/openapi/models/WorkflowResumeResponse.d.ts +55 -0
  323. package/dist/openapi/models/WorkflowResumeResponse.js +57 -0
  324. package/dist/openapi/models/WorkflowResumeSuccessEnvelope.d.ts +46 -0
  325. package/dist/openapi/models/WorkflowResumeSuccessEnvelope.js +54 -0
  326. package/dist/openapi/models/WorkflowSource.d.ts +40 -0
  327. package/dist/openapi/models/WorkflowSource.js +57 -0
  328. package/dist/openapi/models/WorkflowStatus.d.ts +31 -8
  329. package/dist/openapi/models/WorkflowStatus.js +32 -9
  330. package/dist/openapi/models/WorkflowStatusResponse.d.ts +34 -2
  331. package/dist/openapi/models/WorkflowStatusResponse.js +13 -2
  332. package/dist/openapi/models/WorkflowStatusSuccessEnvelope.d.ts +3 -3
  333. package/dist/openapi/models/WorkflowStatusSuccessEnvelope.js +2 -2
  334. package/dist/openapi/models/WorkflowWarning.d.ts +119 -0
  335. package/dist/openapi/models/WorkflowWarning.js +63 -0
  336. package/dist/openapi/models/WorkflowWarningSeverity.d.ts +29 -0
  337. package/dist/openapi/models/WorkflowWarningSeverity.js +47 -0
  338. package/dist/openapi/models/index.d.ts +87 -3
  339. package/dist/openapi/models/index.js +87 -3
  340. package/dist/openapi/runtime.d.ts +2 -2
  341. package/dist/openapi/runtime.js +17 -2
  342. package/dist/operations/archive.metadata.d.ts +2 -0
  343. package/dist/operations/archive.metadata.js +13 -0
  344. package/dist/operations/audio_overlay.d.ts +48 -0
  345. package/dist/operations/audio_overlay.js +19 -0
  346. package/dist/operations/audio_overlay.metadata.d.ts +2 -0
  347. package/dist/operations/audio_overlay.metadata.js +167 -0
  348. package/dist/operations/audio_watermark.d.ts +42 -0
  349. package/dist/operations/audio_watermark.js +37 -0
  350. package/dist/operations/audio_watermark.metadata.d.ts +2 -0
  351. package/dist/operations/audio_watermark.metadata.js +94 -0
  352. package/dist/operations/compress.metadata.d.ts +2 -0
  353. package/dist/operations/compress.metadata.js +205 -0
  354. package/dist/operations/convert.metadata.d.ts +2 -0
  355. package/dist/operations/convert.metadata.js +85 -0
  356. package/dist/operations/custom_luma.d.ts +7 -0
  357. package/dist/operations/custom_luma.js +2 -0
  358. package/dist/operations/custom_luma.metadata.d.ts +2 -0
  359. package/dist/operations/custom_luma.metadata.js +49 -0
  360. package/dist/operations/image_watermark.d.ts +54 -0
  361. package/dist/operations/image_watermark.js +37 -0
  362. package/dist/operations/image_watermark.metadata.d.ts +2 -0
  363. package/dist/operations/image_watermark.metadata.js +97 -0
  364. package/dist/operations/index.d.ts +16 -1
  365. package/dist/operations/index.js +16 -1
  366. package/dist/operations/merge.d.ts +111 -31
  367. package/dist/operations/merge.js +106 -20
  368. package/dist/operations/merge.metadata.d.ts +2 -0
  369. package/dist/operations/merge.metadata.js +385 -0
  370. package/dist/operations/metadata-types.d.ts +47 -0
  371. package/dist/operations/metadata-types.js +2 -0
  372. package/dist/operations/text_watermark.d.ts +31 -0
  373. package/dist/operations/text_watermark.js +22 -0
  374. package/dist/operations/text_watermark.metadata.d.ts +2 -0
  375. package/dist/operations/text_watermark.metadata.js +46 -0
  376. package/dist/operations/thumbnail.metadata.d.ts +2 -0
  377. package/dist/operations/thumbnail.metadata.js +88 -0
  378. package/openapi/api.yaml +6413 -821
  379. package/operations/schemas/audio_overlay.yaml +409 -0
  380. package/operations/schemas/audio_watermark.yaml +192 -0
  381. package/operations/schemas/compress.yaml +26 -3
  382. package/operations/schemas/convert.yaml +25 -3
  383. package/operations/schemas/custom_luma.yaml +116 -0
  384. package/operations/schemas/image_watermark.yaml +287 -0
  385. package/operations/schemas/merge.yaml +301 -66
  386. package/operations/schemas/text_watermark.yaml +147 -0
  387. package/operations/schemas/thumbnail.yaml +22 -0
  388. package/package.json +10 -4
  389. package/dist/openapi/models/ExportConfig.d.ts +0 -63
  390. package/dist/openapi/models/ExportConfig.js +0 -59
  391. package/dist/openapi/models/JobInput.d.ts +0 -53
  392. package/dist/openapi/models/JobInput.js +0 -47
  393. package/dist/openapi/models/JobSource.d.ts +0 -43
  394. package/dist/openapi/models/JobSource.js +0 -45
  395. package/dist/operations/watermark.d.ts +0 -28
  396. package/dist/operations/watermark.js +0 -19
  397. package/operations/schemas/watermark.yaml +0 -87
@@ -0,0 +1,41 @@
1
+ /**
2
+ * GISL Compression API
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/Last-Modified 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. - **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. - **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). - **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
+ *
5
+ * The version of the OpenAPI document: 2.12.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ * Subscription tier. Mirrors the API-side
14
+ * `App\Identity\Domain\Enums\UserTier` PHP enum.
15
+ *
16
+ * Tier capability summary (informational; canonical limits are
17
+ * enforced server-side per `UserTier.php`):
18
+ * - `free`: 10 MB max upload; image MIMEs only; 50 monthly credits;
19
+ * 0 overdraft; 1× rate-limit baseline.
20
+ * - `pro`: 500 MB max upload; image + video + document MIMEs; 1000
21
+ * monthly credits; 200 overdraft; 5× rate-limit.
22
+ * - `enterprise`: 2 GB max upload; image + video + document + audio
23
+ * MIMEs; 10000 monthly credits; 5000 overdraft; 20× rate-limit.
24
+ *
25
+ * Used by `TierRestrictionResponse.current_tier` /
26
+ * `TierRestrictionResponse.required_tier` and by
27
+ * `FeatureViolation.required_tier`.
28
+ *
29
+ * @export
30
+ */
31
+ export declare const UserTier: {
32
+ readonly free: "free";
33
+ readonly pro: "pro";
34
+ readonly enterprise: "enterprise";
35
+ };
36
+ export type UserTier = typeof UserTier[keyof typeof UserTier];
37
+ export declare function instanceOfUserTier(value: any): boolean;
38
+ export declare function UserTierFromJSON(json: any): UserTier;
39
+ export declare function UserTierFromJSONTyped(json: any, ignoreDiscriminator: boolean): UserTier;
40
+ export declare function UserTierToJSON(value?: UserTier | null): any;
41
+ export declare function UserTierToJSONTyped(value: any, ignoreDiscriminator: boolean): UserTier;
@@ -0,0 +1,59 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * GISL Compression API
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/Last-Modified 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. - **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. - **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). - **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
+ *
7
+ * The version of the OpenAPI document: 2.12.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ /**
15
+ * Subscription tier. Mirrors the API-side
16
+ * `App\Identity\Domain\Enums\UserTier` PHP enum.
17
+ *
18
+ * Tier capability summary (informational; canonical limits are
19
+ * enforced server-side per `UserTier.php`):
20
+ * - `free`: 10 MB max upload; image MIMEs only; 50 monthly credits;
21
+ * 0 overdraft; 1× rate-limit baseline.
22
+ * - `pro`: 500 MB max upload; image + video + document MIMEs; 1000
23
+ * monthly credits; 200 overdraft; 5× rate-limit.
24
+ * - `enterprise`: 2 GB max upload; image + video + document + audio
25
+ * MIMEs; 10000 monthly credits; 5000 overdraft; 20× rate-limit.
26
+ *
27
+ * Used by `TierRestrictionResponse.current_tier` /
28
+ * `TierRestrictionResponse.required_tier` and by
29
+ * `FeatureViolation.required_tier`.
30
+ *
31
+ * @export
32
+ */
33
+ export const UserTier = {
34
+ free: 'free',
35
+ pro: 'pro',
36
+ enterprise: 'enterprise'
37
+ };
38
+ export function instanceOfUserTier(value) {
39
+ for (const key in UserTier) {
40
+ if (Object.prototype.hasOwnProperty.call(UserTier, key)) {
41
+ if (UserTier[key] === value) {
42
+ return true;
43
+ }
44
+ }
45
+ }
46
+ return false;
47
+ }
48
+ export function UserTierFromJSON(json) {
49
+ return UserTierFromJSONTyped(json, false);
50
+ }
51
+ export function UserTierFromJSONTyped(json, ignoreDiscriminator) {
52
+ return json;
53
+ }
54
+ export function UserTierToJSON(value) {
55
+ return value;
56
+ }
57
+ export function UserTierToJSONTyped(value, ignoreDiscriminator) {
58
+ return value;
59
+ }
@@ -1,8 +1,8 @@
1
1
  /**
2
2
  * GISL Compression API
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, watermark, merge, archive, convert) - 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 (CDN-cacheable), health probes return flat objects, and `POST /api/contact` returns 204 with no body.
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/Last-Modified 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. - **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. - **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). - **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.0.0
5
+ * The version of the OpenAPI document: 2.12.0
6
6
  *
7
7
  *
8
8
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -14,22 +14,69 @@ import type { ValidationErrorEnvelopeDetailsInner } from './ValidationErrorEnvel
14
14
  * Validation error response with structured details.
15
15
  * Used for 422 responses where multiple validation issues are reported.
16
16
  *
17
+ * Carries the I26 localisation triple (`message_key` +
18
+ * `locale` + `message_params`) at envelope level AND on each
19
+ * `details[]` entry, so per-violation messages can be
20
+ * localised independently. See `ErrorEnvelope` for the
21
+ * canonical convention.
22
+ *
17
23
  * @export
18
24
  * @interface ValidationErrorEnvelope
19
25
  */
20
26
  export interface ValidationErrorEnvelope {
21
27
  /**
22
28
  *
23
- * @type {boolean}
29
+ * @type {ValidationErrorEnvelopeSuccessEnum}
24
30
  * @memberof ValidationErrorEnvelope
25
31
  */
26
32
  success: ValidationErrorEnvelopeSuccessEnum;
27
33
  /**
28
- * Error code (e.g. "INVALID_OPTIONS")
34
+ * Stable error code. Common values: `INVALID_OPTIONS`
35
+ * (generic option/value validation failure), `REQUIRES_REENCODE`
36
+ * (per ticket I16-CONS — `merge.video` with
37
+ * `re_encode_mode: never` and incompatible inputs; caller
38
+ * resolves by switching to `re_encode_mode: auto` or `always`).
39
+ * SDKs duck-type on this field for typed error-branch helpers.
40
+ *
29
41
  * @type {string}
30
42
  * @memberof ValidationErrorEnvelope
31
43
  */
32
44
  error: string;
45
+ /**
46
+ * Envelope-level human-readable summary, localised per
47
+ * `Accept-Language`. See `ErrorEnvelope.message`. **Never
48
+ * parse for control flow.**
49
+ *
50
+ * @type {string}
51
+ * @memberof ValidationErrorEnvelope
52
+ */
53
+ message?: string;
54
+ /**
55
+ * Envelope-level canonical lookup key (e.g.
56
+ * `error.invalid_options.summary`). See
57
+ * `ErrorEnvelope.message_key`.
58
+ *
59
+ * @type {string}
60
+ * @memberof ValidationErrorEnvelope
61
+ */
62
+ messageKey?: string;
63
+ /**
64
+ * BCP 47 locale tag. See `ErrorEnvelope.locale`.
65
+ * @type {string}
66
+ * @memberof ValidationErrorEnvelope
67
+ */
68
+ locale?: string;
69
+ /**
70
+ * Envelope-level interpolation values. See
71
+ * `ErrorEnvelope.message_params`. Excludes cost numbers per
72
+ * plan v5 §F11 round-13 narrowing.
73
+ *
74
+ * @type {{ [key: string]: any; }}
75
+ * @memberof ValidationErrorEnvelope
76
+ */
77
+ messageParams?: {
78
+ [key: string]: any;
79
+ };
33
80
  /**
34
81
  * List of individual validation errors
35
82
  * @type {Array<ValidationErrorEnvelopeDetailsInner>}
@@ -2,9 +2,9 @@
2
2
  /* eslint-disable */
3
3
  /**
4
4
  * GISL Compression API
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, watermark, merge, archive, convert) - 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 (CDN-cacheable), health probes return flat objects, and `POST /api/contact` returns 204 with no body.
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/Last-Modified 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. - **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. - **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). - **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.0.0
7
+ * The version of the OpenAPI document: 2.12.0
8
8
  *
9
9
  *
10
10
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -40,6 +40,10 @@ export function ValidationErrorEnvelopeFromJSONTyped(json, ignoreDiscriminator)
40
40
  return {
41
41
  'success': json['success'],
42
42
  'error': json['error'],
43
+ 'message': json['message'] == null ? undefined : json['message'],
44
+ 'messageKey': json['message_key'] == null ? undefined : json['message_key'],
45
+ 'locale': json['locale'] == null ? undefined : json['locale'],
46
+ 'messageParams': json['message_params'] == null ? undefined : json['message_params'],
43
47
  'details': (json['details'].map(ValidationErrorEnvelopeDetailsInnerFromJSON)),
44
48
  };
45
49
  }
@@ -53,6 +57,10 @@ export function ValidationErrorEnvelopeToJSONTyped(value, ignoreDiscriminator =
53
57
  return {
54
58
  'success': value['success'],
55
59
  'error': value['error'],
60
+ 'message': value['message'],
61
+ 'message_key': value['messageKey'],
62
+ 'locale': value['locale'],
63
+ 'message_params': value['messageParams'],
56
64
  'details': (value['details'].map(ValidationErrorEnvelopeDetailsInnerToJSON)),
57
65
  };
58
66
  }
@@ -1,8 +1,8 @@
1
1
  /**
2
2
  * GISL Compression API
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, watermark, merge, archive, convert) - 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 (CDN-cacheable), health probes return flat objects, and `POST /api/contact` returns 204 with no body.
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/Last-Modified 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. - **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. - **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). - **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.0.0
5
+ * The version of the OpenAPI document: 2.12.0
6
6
  *
7
7
  *
8
8
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -28,17 +28,50 @@ export interface ValidationErrorEnvelopeDetailsInner {
28
28
  */
29
29
  option?: string;
30
30
  /**
31
- * Field path for non-operation validation errors
31
+ * Field or sub-field path; populated for cross-field
32
+ * validation errors (e.g. input-pair mismatches in
33
+ * `REQUIRES_REENCODE` shaped as `inputs[i].<dim> vs
34
+ * inputs[j].<dim>`) and for non-operation validation
35
+ * errors where `option` alone is too coarse. May appear
36
+ * alongside `operation` + `option` when the violation
37
+ * spans multiple fields rather than a single option.
38
+ *
32
39
  * @type {string}
33
40
  * @memberof ValidationErrorEnvelopeDetailsInner
34
41
  */
35
42
  field?: string;
36
43
  /**
37
- * Human-readable error message
44
+ * Per-detail human-readable message, localised per
45
+ * `Accept-Language`. See `ErrorEnvelope.message`.
46
+ *
38
47
  * @type {string}
39
48
  * @memberof ValidationErrorEnvelopeDetailsInner
40
49
  */
41
50
  message: string;
51
+ /**
52
+ * Per-detail canonical lookup key (e.g.
53
+ * `error.invalid_options.quality_out_of_range`,
54
+ * `error.requires_reencode.codec_mismatch`). Stable
55
+ * across server message-prose updates. See
56
+ * `ErrorEnvelope.message_key`.
57
+ *
58
+ * @type {string}
59
+ * @memberof ValidationErrorEnvelopeDetailsInner
60
+ */
61
+ messageKey?: string;
62
+ /**
63
+ * Per-detail interpolation values for the localised
64
+ * `message` (e.g.
65
+ * `{ "min": 1, "max": 100, "given": 200 }`). See
66
+ * `ErrorEnvelope.message_params`. Excludes cost
67
+ * numbers.
68
+ *
69
+ * @type {{ [key: string]: any; }}
70
+ * @memberof ValidationErrorEnvelopeDetailsInner
71
+ */
72
+ messageParams?: {
73
+ [key: string]: any;
74
+ };
42
75
  }
43
76
  /**
44
77
  * Check if a given object implements the ValidationErrorEnvelopeDetailsInner interface.
@@ -2,9 +2,9 @@
2
2
  /* eslint-disable */
3
3
  /**
4
4
  * GISL Compression API
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, watermark, merge, archive, convert) - 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 (CDN-cacheable), health probes return flat objects, and `POST /api/contact` returns 204 with no body.
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/Last-Modified 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. - **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. - **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). - **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.0.0
7
+ * The version of the OpenAPI document: 2.12.0
8
8
  *
9
9
  *
10
10
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -31,6 +31,8 @@ export function ValidationErrorEnvelopeDetailsInnerFromJSONTyped(json, ignoreDis
31
31
  'option': json['option'] == null ? undefined : json['option'],
32
32
  'field': json['field'] == null ? undefined : json['field'],
33
33
  'message': json['message'],
34
+ 'messageKey': json['message_key'] == null ? undefined : json['message_key'],
35
+ 'messageParams': json['message_params'] == null ? undefined : json['message_params'],
34
36
  };
35
37
  }
36
38
  export function ValidationErrorEnvelopeDetailsInnerToJSON(json) {
@@ -45,5 +47,7 @@ export function ValidationErrorEnvelopeDetailsInnerToJSONTyped(value, ignoreDisc
45
47
  'option': value['option'],
46
48
  'field': value['field'],
47
49
  'message': value['message'],
50
+ 'message_key': value['messageKey'],
51
+ 'message_params': value['messageParams'],
48
52
  };
49
53
  }
@@ -0,0 +1,48 @@
1
+ /**
2
+ * GISL Compression API
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/Last-Modified 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. - **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. - **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). - **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
+ *
5
+ * The version of the OpenAPI document: 2.12.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ * Workflow advisory warning type. V2.0 ships with a single
14
+ * value; SDKs MUST treat the enum as **additive** (ignore
15
+ * unknown values encountered at runtime — forward-compatible
16
+ * convention per the same precedent as `ProgressStatus`,
17
+ * `ProcessingClassReason`, `WorkflowStatus`).
18
+ *
19
+ * **V2.0 value:**
20
+ * - `redundant_pre_encode_before_reencode_merge`: Upstream
21
+ * single-output `compress` or `convert` jobs feed a
22
+ * downstream `merge` with `re_encode_mode != never`. The
23
+ * pre-encode work is wasted because the merge re-encodes
24
+ * the output regardless. Caller should either drop the
25
+ * upstream encode step OR set `merge.re_encode_mode: auto`
26
+ * to let the server decide.
27
+ *
28
+ * **V2.1+ candidates (non-normative — future tickets per
29
+ * plan v5 §F11):**
30
+ * - `redundant_thumbnail_for_compressed_input`
31
+ * - `output_format_unchanged_after_convert`
32
+ * - `merge_inputs_already_normalised`
33
+ * - (additional detection rules per plan v5 §F11 land per-
34
+ * rule when product/Lambda confirms detection logic.)
35
+ *
36
+ * Per ticket [I25 `i5yCuSZc`](https://trello.com/c/i5yCuSZc).
37
+ *
38
+ * @export
39
+ */
40
+ export declare const WarningType: {
41
+ readonly redundant_pre_encode_before_reencode_merge: "redundant_pre_encode_before_reencode_merge";
42
+ };
43
+ export type WarningType = typeof WarningType[keyof typeof WarningType];
44
+ export declare function instanceOfWarningType(value: any): boolean;
45
+ export declare function WarningTypeFromJSON(json: any): WarningType;
46
+ export declare function WarningTypeFromJSONTyped(json: any, ignoreDiscriminator: boolean): WarningType;
47
+ export declare function WarningTypeToJSON(value?: WarningType | null): any;
48
+ export declare function WarningTypeToJSONTyped(value: any, ignoreDiscriminator: boolean): WarningType;
@@ -0,0 +1,66 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * GISL Compression API
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/Last-Modified 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. - **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. - **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). - **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
+ *
7
+ * The version of the OpenAPI document: 2.12.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ /**
15
+ * Workflow advisory warning type. V2.0 ships with a single
16
+ * value; SDKs MUST treat the enum as **additive** (ignore
17
+ * unknown values encountered at runtime — forward-compatible
18
+ * convention per the same precedent as `ProgressStatus`,
19
+ * `ProcessingClassReason`, `WorkflowStatus`).
20
+ *
21
+ * **V2.0 value:**
22
+ * - `redundant_pre_encode_before_reencode_merge`: Upstream
23
+ * single-output `compress` or `convert` jobs feed a
24
+ * downstream `merge` with `re_encode_mode != never`. The
25
+ * pre-encode work is wasted because the merge re-encodes
26
+ * the output regardless. Caller should either drop the
27
+ * upstream encode step OR set `merge.re_encode_mode: auto`
28
+ * to let the server decide.
29
+ *
30
+ * **V2.1+ candidates (non-normative — future tickets per
31
+ * plan v5 §F11):**
32
+ * - `redundant_thumbnail_for_compressed_input`
33
+ * - `output_format_unchanged_after_convert`
34
+ * - `merge_inputs_already_normalised`
35
+ * - (additional detection rules per plan v5 §F11 land per-
36
+ * rule when product/Lambda confirms detection logic.)
37
+ *
38
+ * Per ticket [I25 `i5yCuSZc`](https://trello.com/c/i5yCuSZc).
39
+ *
40
+ * @export
41
+ */
42
+ export const WarningType = {
43
+ redundant_pre_encode_before_reencode_merge: 'redundant_pre_encode_before_reencode_merge'
44
+ };
45
+ export function instanceOfWarningType(value) {
46
+ for (const key in WarningType) {
47
+ if (Object.prototype.hasOwnProperty.call(WarningType, key)) {
48
+ if (WarningType[key] === value) {
49
+ return true;
50
+ }
51
+ }
52
+ }
53
+ return false;
54
+ }
55
+ export function WarningTypeFromJSON(json) {
56
+ return WarningTypeFromJSONTyped(json, false);
57
+ }
58
+ export function WarningTypeFromJSONTyped(json, ignoreDiscriminator) {
59
+ return json;
60
+ }
61
+ export function WarningTypeToJSON(value) {
62
+ return value;
63
+ }
64
+ export function WarningTypeToJSONTyped(value, ignoreDiscriminator) {
65
+ return value;
66
+ }
@@ -1,8 +1,8 @@
1
1
  /**
2
2
  * GISL Compression API
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, watermark, merge, archive, convert) - 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 (CDN-cacheable), health probes return flat objects, and `POST /api/contact` returns 204 with no body.
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/Last-Modified 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. - **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. - **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). - **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.0.0
5
+ * The version of the OpenAPI document: 2.12.0
6
6
  *
7
7
  *
8
8
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -24,7 +24,7 @@ export interface WebhookOperationContext {
24
24
  */
25
25
  jobRef: string;
26
26
  /**
27
- * UUID v7 format identifier (time-ordered)
27
+ * ID of the operation that completed
28
28
  * @type {string}
29
29
  * @memberof WebhookOperationContext
30
30
  */
@@ -2,9 +2,9 @@
2
2
  /* eslint-disable */
3
3
  /**
4
4
  * GISL Compression API
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, watermark, merge, archive, convert) - 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 (CDN-cacheable), health probes return flat objects, and `POST /api/contact` returns 204 with no body.
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/Last-Modified 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. - **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. - **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). - **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.0.0
7
+ * The version of the OpenAPI document: 2.12.0
8
8
  *
9
9
  *
10
10
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -1,8 +1,8 @@
1
1
  /**
2
2
  * GISL Compression API
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, watermark, merge, archive, convert) - 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 (CDN-cacheable), health probes return flat objects, and `POST /api/contact` returns 204 with no body.
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/Last-Modified 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. - **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. - **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). - **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.0.0
5
+ * The version of the OpenAPI document: 2.12.0
6
6
  *
7
7
  *
8
8
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -2,9 +2,9 @@
2
2
  /* eslint-disable */
3
3
  /**
4
4
  * GISL Compression API
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, watermark, merge, archive, convert) - 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 (CDN-cacheable), health probes return flat objects, and `POST /api/contact` returns 204 with no body.
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/Last-Modified 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. - **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. - **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). - **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.0.0
7
+ * The version of the OpenAPI document: 2.12.0
8
8
  *
9
9
  *
10
10
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -53,7 +53,7 @@ export function WebhookPayloadToJSONTyped(value, ignoreDiscriminator = false) {
53
53
  return {
54
54
  'event_type': CallbackEventTypeToJSON(value['eventType']),
55
55
  'delivery_id': value['deliveryId'],
56
- 'timestamp': ((value['timestamp']).toISOString()),
56
+ 'timestamp': value['timestamp'].toISOString(),
57
57
  'workflow': WorkflowStatusResponseToJSON(value['workflow']),
58
58
  'operation': WebhookOperationContextToJSON(value['operation']),
59
59
  };