@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,409 @@
1
+ schema_version: "2.0.0"
2
+
3
+ operation:
4
+ type: audio_overlay
5
+ availability: planned
6
+ description: |
7
+ Mix a secondary audio asset (overlay) over a primary audio or
8
+ video base. Use cases: DJ tags, podcast intros/outros, station
9
+ IDs, jingles, branded mid-rolls.
10
+
11
+ **Industry naming.** This is "audio overlay" or "audio branding"
12
+ — NOT "audio watermark". Audio watermarking is steganographic
13
+ (imperceptible identifier embedded in audio for ownership /
14
+ forensic tracking) and is owned by the separate `audio_watermark`
15
+ operation (planned per ticket I20).
16
+
17
+ Multi-input (Path B with `role: base` + `role: overlay` per
18
+ `JobInputV2.role`). `min_inputs: 2 = max_inputs: 2` for V2.0;
19
+ multi-overlay support is advertised as a planned feature
20
+ (`features.multi_overlay_stack`) but Lambda-side implementation
21
+ deferred.
22
+
23
+ The overlay can be uploaded directly, imported externally, or
24
+ referenced from a vault connection per `WorkflowSource` (from
25
+ I10). The base is whatever single-asset source the workflow
26
+ upstream has — for `mime_groups.audio`, the base is the primary
27
+ audio track; for `mime_groups.video`, the overlay is mixed into
28
+ the video's audio track and the visual track passes through
29
+ untouched.
30
+
31
+ Per ADR-0001 §1.3 (Tension 1 — `planned` operations return
32
+ `feature_not_available` 422 until Lambda support ships). Per
33
+ ADR-0004 §"V2 JobDefinition" + plan v5 §F1 round 6.
34
+ default: false
35
+ input_model: multi
36
+ min_inputs: 2
37
+ max_inputs: 2
38
+
39
+ features:
40
+ multi_overlay_stack:
41
+ availability: planned
42
+ description: |
43
+ Allow up to 8 overlay inputs per job (currently capped at 1
44
+ overlay). Per-overlay placement via
45
+ `JobInputV2.per_input_options`. Lambda-side support not yet
46
+ confirmed; tagged `planned` per ADR-0001 §1.4. Mirrors the
47
+ same-named feature on `image_watermark`.
48
+
49
+ sync_to_silence:
50
+ availability: planned
51
+ description: |
52
+ Anchor overlay placement to detected silence regions in the
53
+ base track (e.g. drop a podcast jingle into the natural
54
+ breath after the host says "back in a sec"). Server-side
55
+ silence detection runs at workflow-create time; the actual
56
+ overlay start position is reported on
57
+ `OperationMetrics.overlay_anchor_ms`. Gates two extra
58
+ options: `silence_threshold_db` and `min_silence_ms`. Lambda
59
+ support not yet shipped.
60
+
61
+ mime_groups:
62
+ audio:
63
+ availability: planned
64
+ mimes:
65
+ - audio/mpeg
66
+ - audio/aac
67
+ - audio/wav
68
+ - audio/ogg
69
+ - audio/flac
70
+ processing_class:
71
+ # F8 long-form tier (per ticket I15-CONS). Both classes
72
+ # `planned` because the audio mime_group itself is `planned`
73
+ # at the group level — schema shape forward-compatible with
74
+ # Lambda activation.
75
+ short_form:
76
+ availability: planned
77
+ constraints:
78
+ max_input_duration: "PT5M"
79
+ max_input_size_bytes: 524288000
80
+ max_output_size_bytes: 524288000
81
+ long_form:
82
+ # Stays planned (CON-1 flips only compress.video.long_form +
83
+ # merge.video.long_form_re_encode). Per-tier caps per ADR-0011.
84
+ availability: planned
85
+ required_tier: pro
86
+ constraints: # baseline = Pro
87
+ max_input_duration: "PT12H"
88
+ max_input_size_bytes: 5000000000 # 5 GB (Pro)
89
+ max_output_size_bytes: 5000000000
90
+ per_tier_constraints:
91
+ enterprise:
92
+ max_input_size_bytes: 120000000000 # 120 GB (Enterprise enforced ceiling)
93
+ max_output_size_bytes: 120000000000
94
+ options:
95
+ start_at:
96
+ type: float
97
+ min: 0.0
98
+ default: 0.0
99
+ description: |
100
+ Start position (seconds) on the base track at which the
101
+ overlay begins playing. Default 0.0 = mix from the
102
+ beginning. Inert when
103
+ `features.sync_to_silence.availability` flips to
104
+ `stable` and `mode: sync_to_silence` is selected
105
+ (placement is then anchored to detected silence).
106
+
107
+ duration:
108
+ type: float
109
+ min: 0.0
110
+ description: |
111
+ Maximum duration (seconds) of the overlay AS PLAYED — the
112
+ overlay asset is trimmed to this length if longer. Omit
113
+ (or set 0) to play the overlay's full natural length.
114
+ **Disambiguation:** this is overlay-trim duration, NOT
115
+ output duration. The output duration always matches the
116
+ base track's duration.
117
+
118
+ overlay_gain_db:
119
+ type: float
120
+ min: -60.0
121
+ max: 12.0
122
+ default: -3.0
123
+ description: |
124
+ Gain applied to the overlay in decibels before mixing.
125
+ Default -3 dB matches typical podcast intro / DJ-tag
126
+ level. Positive values amplify (clip risk); negative
127
+ values attenuate. Clamped to range.
128
+
129
+ mode:
130
+ type: enum
131
+ values: [mix, duck, replace]
132
+ default: mix
133
+ description: |
134
+ How the overlay combines with the base audio:
135
+ - `mix`: simple sum (overlay + base; both audible).
136
+ - `duck`: side-chain compress the base under the overlay
137
+ (base attenuates while overlay plays — broadcast pattern).
138
+ - `replace`: mute the base for the overlay's duration
139
+ (overlay only; useful for hard-cut station IDs).
140
+ per_value_availability:
141
+ duck: { availability: planned }
142
+
143
+ duck_threshold:
144
+ type: float
145
+ min: -60.0
146
+ max: 0.0
147
+ default: -20.0
148
+ depends_on: { mode: duck }
149
+ description: |
150
+ Side-chain threshold (dB). Base audio is ducked when the
151
+ overlay exceeds this level. Only applies when `mode: duck`.
152
+
153
+ duck_ratio:
154
+ type: float
155
+ min: 1.0
156
+ max: 20.0
157
+ default: 4.0
158
+ depends_on: { mode: duck }
159
+ description: |
160
+ Side-chain compression ratio. Higher values produce more
161
+ aggressive ducking. Only applies when `mode: duck`.
162
+
163
+ duck_attack_ms:
164
+ type: integer
165
+ min: 0
166
+ max: 5000
167
+ default: 50
168
+ depends_on: { mode: duck }
169
+ description: |
170
+ Time (milliseconds) for the ducker to reach full
171
+ attenuation once the overlay crosses `duck_threshold`.
172
+ Only applies when `mode: duck`.
173
+
174
+ duck_release_ms:
175
+ type: integer
176
+ min: 0
177
+ max: 5000
178
+ default: 300
179
+ depends_on: { mode: duck }
180
+ description: |
181
+ Time (milliseconds) for the ducker to release back to
182
+ unity gain after the overlay drops below
183
+ `duck_threshold`. Only applies when `mode: duck`.
184
+
185
+ fade_in_ms:
186
+ type: integer
187
+ min: 0
188
+ max: 10000
189
+ default: 0
190
+ description: |
191
+ Linear fade-in applied to the overlay (milliseconds).
192
+ Default 0 = hard start.
193
+
194
+ fade_out_ms:
195
+ type: integer
196
+ min: 0
197
+ max: 10000
198
+ default: 0
199
+ description: |
200
+ Linear fade-out applied to the overlay (milliseconds).
201
+ Default 0 = hard stop.
202
+
203
+ loop:
204
+ type: boolean
205
+ default: false
206
+ description: |
207
+ When true, the overlay loops continuously across the
208
+ duration of the base track (or up to the trimmed
209
+ `duration`). Useful for ambient bed music / background
210
+ stings.
211
+
212
+ loop_interval:
213
+ type: float
214
+ min: 0.0
215
+ max: 600.0
216
+ default: 0.0
217
+ depends_on: { loop: true }
218
+ description: |
219
+ Silence gap (seconds) inserted between overlay loops.
220
+ Default 0 = back-to-back. Only applies when `loop: true`.
221
+
222
+ silence_threshold_db:
223
+ type: float
224
+ min: -80.0
225
+ max: -10.0
226
+ default: -50.0
227
+ availability: planned
228
+ description: |
229
+ Silence threshold (dB) for the `sync_to_silence` feature.
230
+ Base audio below this level for at least `min_silence_ms`
231
+ qualifies as a silence region into which the overlay can
232
+ be anchored. Inert until
233
+ `features.sync_to_silence.availability` flips to stable.
234
+
235
+ min_silence_ms:
236
+ type: integer
237
+ min: 50
238
+ max: 30000
239
+ default: 500
240
+ availability: planned
241
+ description: |
242
+ Minimum silence duration (milliseconds) to qualify as an
243
+ anchor region for `sync_to_silence`. Inert until that
244
+ feature flips to stable.
245
+
246
+ # Mix overlay into a video's audio track. Visual track passes
247
+ # through untouched; output container preserved. Lambda support
248
+ # for the audio-graph manipulation on a video container is not
249
+ # yet confirmed — tagged planned.
250
+ video:
251
+ availability: planned
252
+ mimes:
253
+ - video/mp4
254
+ - video/webm
255
+ processing_class:
256
+ # F8 long-form tier (per ticket I15-CONS). Both classes
257
+ # `planned` because the video mime_group itself is `planned`
258
+ # at the group level.
259
+ short_form:
260
+ availability: planned
261
+ constraints:
262
+ max_input_duration: "PT5M"
263
+ max_input_size_bytes: 524288000
264
+ max_output_size_bytes: 524288000
265
+ long_form:
266
+ # Stays planned (CON-1 flips only compress.video.long_form +
267
+ # merge.video.long_form_re_encode). Per-tier caps per ADR-0011.
268
+ availability: planned
269
+ required_tier: pro
270
+ constraints: # baseline = Pro
271
+ max_input_duration: "PT12H"
272
+ max_input_size_bytes: 5000000000 # 5 GB (Pro)
273
+ max_output_size_bytes: 5000000000
274
+ per_tier_constraints:
275
+ enterprise:
276
+ max_input_size_bytes: 120000000000 # 120 GB (Enterprise enforced ceiling)
277
+ max_output_size_bytes: 120000000000
278
+ options:
279
+ start_at:
280
+ type: float
281
+ min: 0.0
282
+ default: 0.0
283
+ description: |
284
+ Start position (seconds) on the base video's audio track
285
+ at which the overlay begins playing.
286
+
287
+ duration:
288
+ type: float
289
+ min: 0.0
290
+ description: |
291
+ Maximum duration (seconds) of the overlay AS PLAYED. The
292
+ overlay asset is trimmed to this length if longer. Output
293
+ video duration always matches the base.
294
+
295
+ overlay_gain_db:
296
+ type: float
297
+ min: -60.0
298
+ max: 12.0
299
+ default: -3.0
300
+ description: "Gain applied to the overlay in decibels before mixing."
301
+
302
+ mode:
303
+ type: enum
304
+ values: [mix, duck, replace]
305
+ default: mix
306
+ description: |
307
+ Same modes as the audio mime_group. `replace` mutes the
308
+ base video's audio for the overlay's duration.
309
+ per_value_availability:
310
+ duck: { availability: planned }
311
+
312
+ duck_threshold:
313
+ type: float
314
+ min: -60.0
315
+ max: 0.0
316
+ default: -20.0
317
+ depends_on: { mode: duck }
318
+ description: "Side-chain threshold (dB). Only applies when `mode: duck`."
319
+
320
+ duck_ratio:
321
+ type: float
322
+ min: 1.0
323
+ max: 20.0
324
+ default: 4.0
325
+ depends_on: { mode: duck }
326
+ description: "Side-chain compression ratio. Only applies when `mode: duck`."
327
+
328
+ duck_attack_ms:
329
+ type: integer
330
+ min: 0
331
+ max: 5000
332
+ default: 50
333
+ depends_on: { mode: duck }
334
+ description: "Ducker attack (milliseconds). Only applies when `mode: duck`."
335
+
336
+ duck_release_ms:
337
+ type: integer
338
+ min: 0
339
+ max: 5000
340
+ default: 300
341
+ depends_on: { mode: duck }
342
+ description: "Ducker release (milliseconds). Only applies when `mode: duck`."
343
+
344
+ fade_in_ms:
345
+ type: integer
346
+ min: 0
347
+ max: 10000
348
+ default: 0
349
+ description: "Linear fade-in applied to the overlay (milliseconds)."
350
+
351
+ fade_out_ms:
352
+ type: integer
353
+ min: 0
354
+ max: 10000
355
+ default: 0
356
+ description: "Linear fade-out applied to the overlay (milliseconds)."
357
+
358
+ loop:
359
+ type: boolean
360
+ default: false
361
+ description: |
362
+ When true, the overlay loops continuously across the
363
+ duration of the base video.
364
+
365
+ loop_interval:
366
+ type: float
367
+ min: 0.0
368
+ max: 600.0
369
+ default: 0.0
370
+ depends_on: { loop: true }
371
+ description: "Silence gap (seconds) between overlay loops."
372
+
373
+ no_audio_track_behaviour:
374
+ type: enum
375
+ values: [reject, create_silent, replace]
376
+ default: reject
377
+ description: |
378
+ Controls behaviour when the base video has no audio
379
+ track:
380
+ - `reject`: workflow-create returns 422 (default — surfaces
381
+ the problem at the API edge rather than producing a
382
+ surprising silent-base output).
383
+ - `create_silent`: synthesise a silent base track at the
384
+ video's framerate and mix the overlay into that.
385
+ - `replace`: same as `create_silent` but signals intent
386
+ ("the overlay IS the audio track"), letting Lambda
387
+ skip the base-track synthesis when the overlay covers
388
+ the full video duration.
389
+
390
+ silence_threshold_db:
391
+ type: float
392
+ min: -80.0
393
+ max: -10.0
394
+ default: -50.0
395
+ availability: planned
396
+ description: |
397
+ Silence threshold (dB) for `sync_to_silence`. Inert
398
+ until that feature flips to stable.
399
+
400
+ min_silence_ms:
401
+ type: integer
402
+ min: 50
403
+ max: 30000
404
+ default: 500
405
+ availability: planned
406
+ description: |
407
+ Minimum silence duration (milliseconds) for
408
+ `sync_to_silence`. Inert until that feature flips to
409
+ stable.
@@ -0,0 +1,192 @@
1
+ schema_version: "2.0.0"
2
+
3
+ operation:
4
+ type: audio_watermark
5
+ availability: planned
6
+ required_tier: enterprise
7
+ description: |
8
+ Embed a steganographic forensic watermark into an audio asset (or
9
+ a video's audio track). The watermark is psychoacoustically masked
10
+ to be inaudible and engineered to survive lossy compression,
11
+ transcoding, broadcast chains, and analog-hole capture (Cinavia /
12
+ Resemble PerTh territory).
13
+
14
+ **Industry naming.** This is *audio watermarking* (steganographic;
15
+ used for ownership, forensic tracking, content provenance) — NOT
16
+ *audio overlay* (audible mixing of secondary audio for branding).
17
+ Audio overlay is owned by the separate `audio_overlay` operation
18
+ (per ticket I19).
19
+
20
+ Single-input. Watermark embedding takes the base asset and writes
21
+ out an indistinguishable-to-the-ear copy with the encoded payload.
22
+
23
+ **Decode endpoint.** A paired `POST /api/audio-watermark/decode`
24
+ endpoint extracts the embedded watermark from a previously-marked
25
+ asset, returning `{watermark_id, payload?, confidence, method,
26
+ detected_at}`. Decode is **own-watermarks-only** (rate-limited
27
+ + audited; the decoder will refuse to extract from media the
28
+ caller did not mark themselves) — pin per spike S11 acceptance.
29
+
30
+ Per ADR-0001 §1.3 (Tension 1 — `planned` operations return
31
+ `feature_not_available` 422 until Lambda support ships).
32
+ Per plan v5 §F1 round 6 (codex narrowed methods enum from 5 to 3,
33
+ dropping `spread_spectrum` / `echo_hiding` / `phase_coding` —
34
+ textbook families, not product choices).
35
+ default: false
36
+ input_model: single
37
+
38
+ mime_groups:
39
+ audio:
40
+ availability: planned
41
+ mimes:
42
+ - audio/mpeg
43
+ - audio/aac
44
+ - audio/wav
45
+ - audio/ogg
46
+ - audio/flac
47
+ processing_class:
48
+ # F8 long-form tier (per ticket I15-CONS). audio_watermark is
49
+ # `availability: planned` + `required_tier: enterprise` at the
50
+ # operation level; per-class entries inherit the enterprise
51
+ # tier (long_form widens further to enterprise as the natural
52
+ # superset of pro).
53
+ short_form:
54
+ availability: planned
55
+ required_tier: enterprise
56
+ constraints:
57
+ max_input_duration: "PT5M"
58
+ max_input_size_bytes: 524288000
59
+ max_output_size_bytes: 524288000
60
+ long_form:
61
+ # Stays planned (CON-1 flips only compress.video.long_form +
62
+ # merge.video.long_form_re_encode). required_tier: enterprise,
63
+ # so baseline IS the Enterprise cap and there is NO
64
+ # per_tier_constraints (no tier above enterprise) — ADR-0011 D2.
65
+ availability: planned
66
+ required_tier: enterprise
67
+ constraints: # baseline = Enterprise (lowest permitted)
68
+ max_input_duration: "PT12H"
69
+ max_input_size_bytes: 120000000000 # 120 GB (Enterprise enforced ceiling)
70
+ max_output_size_bytes: 120000000000
71
+ options:
72
+ payload:
73
+ type: string
74
+ required: false
75
+ description: |
76
+ Optional caller-supplied payload to embed (max 256
77
+ characters). Use cases: ownership marker, distribution
78
+ channel ID, license key. When omitted, the server
79
+ generates a UUID-v7 `watermark_id` and embeds that
80
+ instead; the generated ID is returned on
81
+ `OperationResult` so the caller can subsequently call
82
+ the decode endpoint to verify.
83
+
84
+ method:
85
+ type: enum
86
+ values: [auto, psychoacoustic, neural]
87
+ default: auto
88
+ description: |
89
+ Watermarking algorithm:
90
+ - `auto`: server selects the best available method for the
91
+ input (currently maps to `psychoacoustic`; will widen as
92
+ `neural` ships).
93
+ - `psychoacoustic`: classical masking-curve embedding.
94
+ Resemble's open-source PerTh library provides the path-
95
+ to-prod reference implementation. Survives MP3/AAC at
96
+ moderate bitrates and broadcast chains.
97
+ - `neural`: ML-based embedding (deep generative). Higher
98
+ survival under aggressive transcoding + analog-hole
99
+ capture; longer encoding time + non-deterministic.
100
+ per_value_availability:
101
+ # `auto` + `psychoacoustic` land first (PerTh path-to-prod);
102
+ # `neural` lands later via Lambda follow-up.
103
+ neural: { availability: planned }
104
+
105
+ robustness:
106
+ type: enum
107
+ values: [light, compression_resistant, broadcast_grade]
108
+ default: compression_resistant
109
+ description: |
110
+ Survival profile:
111
+ - `light`: minimal payload-strength; smallest perceptual
112
+ footprint. Survives a single re-encode pass at moderate
113
+ bitrate.
114
+ - `compression_resistant` (default): survives multiple
115
+ MP3/AAC re-encodes at typical streaming bitrates.
116
+ - `broadcast_grade`: survives broadcast compression
117
+ chains, EQ, dynamic-range compression, and analog-hole
118
+ capture (microphone re-recording). Higher embedding
119
+ time + slightly larger perceptual footprint.
120
+
121
+ density:
122
+ type: enum
123
+ values: [sparse, normal, dense]
124
+ default: normal
125
+ description: |
126
+ Watermark spatial density along the asset duration:
127
+ - `sparse`: payload bits inserted at wider intervals;
128
+ decode confidence drops on short clips.
129
+ - `normal` (default): balanced.
130
+ - `dense`: maximum decode confidence on short clips at
131
+ the cost of slightly higher perceptual risk.
132
+
133
+ # Embed the watermark into a video's audio track. Visual track
134
+ # passes through untouched; output container preserved. Lambda
135
+ # support for the audio-graph manipulation on a video container
136
+ # is not yet confirmed — tagged planned (same caveat as
137
+ # audio_overlay.video).
138
+ video:
139
+ availability: planned
140
+ mimes:
141
+ - video/mp4
142
+ - video/webm
143
+ processing_class:
144
+ # F8 long-form tier (per ticket I15-CONS).
145
+ short_form:
146
+ availability: planned
147
+ required_tier: enterprise
148
+ constraints:
149
+ max_input_duration: "PT5M"
150
+ max_input_size_bytes: 524288000
151
+ max_output_size_bytes: 524288000
152
+ long_form:
153
+ # Stays planned (CON-1 flips only compress.video.long_form +
154
+ # merge.video.long_form_re_encode). required_tier: enterprise,
155
+ # so baseline IS the Enterprise cap and there is NO
156
+ # per_tier_constraints (no tier above enterprise) — ADR-0011 D2.
157
+ availability: planned
158
+ required_tier: enterprise
159
+ constraints: # baseline = Enterprise (lowest permitted)
160
+ max_input_duration: "PT12H"
161
+ max_input_size_bytes: 120000000000 # 120 GB (Enterprise enforced ceiling)
162
+ max_output_size_bytes: 120000000000
163
+ options:
164
+ payload:
165
+ type: string
166
+ required: false
167
+ description: |
168
+ Optional caller-supplied payload to embed (max 256
169
+ characters). When omitted, the server generates a UUID-v7
170
+ `watermark_id` and embeds that instead.
171
+
172
+ method:
173
+ type: enum
174
+ values: [auto, psychoacoustic, neural]
175
+ default: auto
176
+ description: |
177
+ Watermarking algorithm. Same semantics as the `audio`
178
+ mime_group; embedded into the video's audio track only.
179
+ per_value_availability:
180
+ neural: { availability: planned }
181
+
182
+ robustness:
183
+ type: enum
184
+ values: [light, compression_resistant, broadcast_grade]
185
+ default: compression_resistant
186
+ description: "Survival profile. Same semantics as audio mime_group."
187
+
188
+ density:
189
+ type: enum
190
+ values: [sparse, normal, dense]
191
+ default: normal
192
+ description: "Watermark density along the asset duration."
@@ -1,4 +1,4 @@
1
- schema_version: "1.0.0"
1
+ schema_version: "2.0.0"
2
2
 
3
3
  operation:
4
4
  type: compress
@@ -16,7 +16,7 @@ operation:
16
16
  - image/svg+xml
17
17
  - image/tiff
18
18
  - image/bmp
19
- - image/x-icon
19
+ - image/vnd.microsoft.icon
20
20
  - image/avif
21
21
  - image/heic
22
22
  options:
@@ -83,7 +83,7 @@ operation:
83
83
  - audio/ogg
84
84
  - audio/flac
85
85
  - audio/wav
86
- - audio/x-m4a
86
+ - audio/mp4
87
87
  options:
88
88
  bitrate:
89
89
  type: enum
@@ -119,6 +119,29 @@ operation:
119
119
  - video/mp4
120
120
  - video/webm
121
121
  - video/ogg
122
+ processing_class:
123
+ # F8 long-form video tier (per ticket I15-CONS, Trello YZpBKzOM).
124
+ # Public contract uses logical names only — backend selection is
125
+ # server-decided per plan v5 §F8 round 7.
126
+ short_form:
127
+ availability: stable
128
+ constraints:
129
+ max_input_duration: "PT5M"
130
+ max_input_size_bytes: 524288000 # 500 MiB
131
+ max_output_size_bytes: 524288000
132
+ long_form:
133
+ # planned -> beta (CON-1, ADR-0011): staging/internal proving
134
+ # gate before the stable claim (CON-2a). Per-tier caps per D3.
135
+ availability: beta
136
+ required_tier: pro
137
+ constraints: # baseline = Pro (lowest permitted tier)
138
+ max_input_duration: "PT12H"
139
+ max_input_size_bytes: 5000000000 # 5 GB (Pro)
140
+ max_output_size_bytes: 5000000000
141
+ per_tier_constraints:
142
+ enterprise:
143
+ max_input_size_bytes: 120000000000 # 120 GB (Enterprise enforced ceiling)
144
+ max_output_size_bytes: 120000000000
122
145
  options:
123
146
  codec:
124
147
  type: enum
@@ -1,4 +1,4 @@
1
- schema_version: "1.0.0"
1
+ schema_version: "2.0.0"
2
2
 
3
3
  operation:
4
4
  type: convert
@@ -16,7 +16,7 @@ operation:
16
16
  - image/svg+xml
17
17
  - image/tiff
18
18
  - image/bmp
19
- - image/x-icon
19
+ - image/vnd.microsoft.icon
20
20
  - image/avif
21
21
  - image/heic
22
22
  options:
@@ -42,6 +42,28 @@ operation:
42
42
  - video/mp4
43
43
  - video/webm
44
44
  - video/ogg
45
+ processing_class:
46
+ # F8 long-form video tier (per ticket I15-CONS).
47
+ short_form:
48
+ availability: stable
49
+ constraints:
50
+ max_input_duration: "PT5M"
51
+ max_input_size_bytes: 524288000
52
+ max_output_size_bytes: 524288000
53
+ long_form:
54
+ # Stays planned (CON-1 flips only compress.video.long_form +
55
+ # merge.video.long_form_re_encode). Per-tier caps per ADR-0011 —
56
+ # advertised shape; availability gates execution off (422).
57
+ availability: planned
58
+ required_tier: pro
59
+ constraints: # baseline = Pro
60
+ max_input_duration: "PT12H"
61
+ max_input_size_bytes: 5000000000 # 5 GB (Pro)
62
+ max_output_size_bytes: 5000000000
63
+ per_tier_constraints:
64
+ enterprise:
65
+ max_input_size_bytes: 120000000000 # 120 GB (Enterprise enforced ceiling)
66
+ max_output_size_bytes: 120000000000
45
67
  options:
46
68
  output_format:
47
69
  type: enum
@@ -66,7 +88,7 @@ operation:
66
88
  - audio/ogg
67
89
  - audio/flac
68
90
  - audio/wav
69
- - audio/x-m4a
91
+ - audio/mp4
70
92
  options:
71
93
  output_format:
72
94
  type: enum