@giveitsmaller/contracts 0.40.0 → 0.42.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.
- package/accepted-options/accepted-options.json +77 -7
- package/accepted-options/image-output-routes.json +13 -13
- package/availability/availability.json +539 -150
- package/dist/openapi/models/AccountLimitEntry.d.ts +1 -1
- package/dist/openapi/models/AccountLimitEntry.js +1 -1
- package/dist/openapi/models/AccountLimits.d.ts +1 -1
- package/dist/openapi/models/AccountLimits.js +1 -1
- package/dist/openapi/models/AccountLimitsLimits.d.ts +1 -1
- package/dist/openapi/models/AccountLimitsLimits.js +1 -1
- package/dist/openapi/models/AccountLimitsSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/AccountLimitsSuccessEnvelope.js +1 -1
- package/dist/openapi/models/AudioWatermarkDecodeRequest.d.ts +1 -1
- package/dist/openapi/models/AudioWatermarkDecodeRequest.js +1 -1
- package/dist/openapi/models/AudioWatermarkDecodeResponse.d.ts +1 -1
- package/dist/openapi/models/AudioWatermarkDecodeResponse.js +1 -1
- package/dist/openapi/models/AuthErrorResponse.d.ts +1 -1
- package/dist/openapi/models/AuthErrorResponse.js +1 -1
- package/dist/openapi/models/AuthErrorType.d.ts +1 -1
- package/dist/openapi/models/AuthErrorType.js +1 -1
- package/dist/openapi/models/AuthRejectionEnvelope.d.ts +1 -1
- package/dist/openapi/models/AuthRejectionEnvelope.js +1 -1
- package/dist/openapi/models/AvailabilityValue.d.ts +1 -1
- package/dist/openapi/models/AvailabilityValue.js +1 -1
- package/dist/openapi/models/BalanceExhaustedResponse.d.ts +1 -1
- package/dist/openapi/models/BalanceExhaustedResponse.js +1 -1
- package/dist/openapi/models/BalanceExhaustedResponseAllOfLinks.d.ts +1 -1
- package/dist/openapi/models/BalanceExhaustedResponseAllOfLinks.js +1 -1
- package/dist/openapi/models/CallbackEventType.d.ts +1 -1
- package/dist/openapi/models/CallbackEventType.js +1 -1
- package/dist/openapi/models/ChangePasswordRequest.d.ts +1 -1
- package/dist/openapi/models/ChangePasswordRequest.js +1 -1
- package/dist/openapi/models/CompositionPlan.d.ts +1 -1
- package/dist/openapi/models/CompositionPlan.js +1 -1
- package/dist/openapi/models/CompositionPlanJob.d.ts +1 -1
- package/dist/openapi/models/CompositionPlanJob.js +1 -1
- package/dist/openapi/models/CompositionPlanOperation.d.ts +1 -1
- package/dist/openapi/models/CompositionPlanOperation.js +1 -1
- package/dist/openapi/models/ConfirmEmailChange200Response.d.ts +1 -1
- package/dist/openapi/models/ConfirmEmailChange200Response.js +1 -1
- package/dist/openapi/models/ConfirmEmailChange200ResponseData.d.ts +1 -1
- package/dist/openapi/models/ConfirmEmailChange200ResponseData.js +1 -1
- package/dist/openapi/models/ConfirmEmailChangeRequest.d.ts +1 -1
- package/dist/openapi/models/ConfirmEmailChangeRequest.js +1 -1
- package/dist/openapi/models/ConnectionSource.d.ts +1 -1
- package/dist/openapi/models/ConnectionSource.js +1 -1
- package/dist/openapi/models/ContactRequest.d.ts +1 -1
- package/dist/openapi/models/ContactRequest.js +1 -1
- package/dist/openapi/models/ContactSubject.d.ts +1 -1
- package/dist/openapi/models/ContactSubject.js +1 -1
- package/dist/openapi/models/ContactValidationErrorResponse.d.ts +1 -1
- package/dist/openapi/models/ContactValidationErrorResponse.js +1 -1
- package/dist/openapi/models/CreateApiKey201Response.d.ts +1 -1
- package/dist/openapi/models/CreateApiKey201Response.js +1 -1
- package/dist/openapi/models/CreateApiKey201ResponseData.d.ts +1 -1
- package/dist/openapi/models/CreateApiKey201ResponseData.js +1 -1
- package/dist/openapi/models/CreateApiKeyRequest.d.ts +1 -1
- package/dist/openapi/models/CreateApiKeyRequest.js +1 -1
- package/dist/openapi/models/CreateExternalImport403Response.d.ts +1 -1
- package/dist/openapi/models/CreateExternalImport403Response.js +1 -1
- package/dist/openapi/models/CreateExternalImport422Response.d.ts +1 -1
- package/dist/openapi/models/CreateExternalImport422Response.js +1 -1
- package/dist/openapi/models/CreateWorkflow422Response.d.ts +1 -1
- package/dist/openapi/models/CreateWorkflow422Response.js +1 -1
- package/dist/openapi/models/CreditTransaction.d.ts +1 -1
- package/dist/openapi/models/CreditTransaction.js +1 -1
- package/dist/openapi/models/CreditTransactionSourceBucket.d.ts +1 -1
- package/dist/openapi/models/CreditTransactionSourceBucket.js +1 -1
- package/dist/openapi/models/CreditsBalanceResponse.d.ts +1 -1
- package/dist/openapi/models/CreditsBalanceResponse.js +1 -1
- package/dist/openapi/models/CreditsBalanceSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/CreditsBalanceSuccessEnvelope.js +1 -1
- package/dist/openapi/models/CreditsUsageResponse.d.ts +1 -1
- package/dist/openapi/models/CreditsUsageResponse.js +1 -1
- package/dist/openapi/models/CreditsUsageSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/CreditsUsageSuccessEnvelope.js +1 -1
- package/dist/openapi/models/Delivery.d.ts +1 -1
- package/dist/openapi/models/Delivery.js +1 -1
- package/dist/openapi/models/DeliveryOutputRef.d.ts +1 -1
- package/dist/openapi/models/DeliveryOutputRef.js +1 -1
- package/dist/openapi/models/DeliveryPlan.d.ts +1 -1
- package/dist/openapi/models/DeliveryPlan.js +1 -1
- package/dist/openapi/models/DeliveryPlanOutput.d.ts +1 -1
- package/dist/openapi/models/DeliveryPlanOutput.js +1 -1
- package/dist/openapi/models/DeliveryPlanReason.d.ts +1 -1
- package/dist/openapi/models/DeliveryPlanReason.js +1 -1
- package/dist/openapi/models/DeliverySelection.d.ts +1 -1
- package/dist/openapi/models/DeliverySelection.js +1 -1
- package/dist/openapi/models/DownloadBundle.d.ts +1 -1
- package/dist/openapi/models/DownloadBundle.js +1 -1
- package/dist/openapi/models/EmptySuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/EmptySuccessEnvelope.js +1 -1
- package/dist/openapi/models/EndpointProjection.d.ts +1 -1
- package/dist/openapi/models/EndpointProjection.js +1 -1
- package/dist/openapi/models/ErrorEnvelope.d.ts +1 -1
- package/dist/openapi/models/ErrorEnvelope.js +1 -1
- package/dist/openapi/models/EstimateQuality.d.ts +1 -1
- package/dist/openapi/models/EstimateQuality.js +1 -1
- package/dist/openapi/models/EstimateRange.d.ts +1 -1
- package/dist/openapi/models/EstimateRange.js +1 -1
- package/dist/openapi/models/ExternalDestination.d.ts +1 -1
- package/dist/openapi/models/ExternalDestination.js +1 -1
- package/dist/openapi/models/ExternalImportCreatedResponse.d.ts +1 -1
- package/dist/openapi/models/ExternalImportCreatedResponse.js +1 -1
- package/dist/openapi/models/ExternalImportCreatedSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/ExternalImportCreatedSuccessEnvelope.js +1 -1
- package/dist/openapi/models/ExternalImportRequest.d.ts +1 -1
- package/dist/openapi/models/ExternalImportRequest.js +1 -1
- package/dist/openapi/models/ExternalImportToken.d.ts +1 -1
- package/dist/openapi/models/ExternalImportToken.js +1 -1
- package/dist/openapi/models/ExternalSource.d.ts +1 -1
- package/dist/openapi/models/ExternalSource.js +1 -1
- package/dist/openapi/models/FeatureNotAvailableResponse.d.ts +1 -1
- package/dist/openapi/models/FeatureNotAvailableResponse.js +1 -1
- package/dist/openapi/models/FeatureTierRestrictedResponse.d.ts +1 -1
- package/dist/openapi/models/FeatureTierRestrictedResponse.js +1 -1
- package/dist/openapi/models/FeatureViolation.d.ts +1 -1
- package/dist/openapi/models/FeatureViolation.js +1 -1
- package/dist/openapi/models/ForgotPasswordRequest.d.ts +1 -1
- package/dist/openapi/models/ForgotPasswordRequest.js +1 -1
- package/dist/openapi/models/ImageEncodeCapabilities.d.ts +1 -1
- package/dist/openapi/models/ImageEncodeCapabilities.js +1 -1
- package/dist/openapi/models/JobDefinition.d.ts +1 -1
- package/dist/openapi/models/JobDefinition.js +1 -1
- package/dist/openapi/models/JobDownload.d.ts +1 -1
- package/dist/openapi/models/JobDownload.js +1 -1
- package/dist/openapi/models/JobInputV2.d.ts +1 -1
- package/dist/openapi/models/JobInputV2.js +1 -1
- package/dist/openapi/models/JobMediaClass.d.ts +1 -1
- package/dist/openapi/models/JobMediaClass.js +1 -1
- package/dist/openapi/models/JobOutputSource.d.ts +1 -1
- package/dist/openapi/models/JobOutputSource.js +1 -1
- package/dist/openapi/models/JobResponse.d.ts +1 -1
- package/dist/openapi/models/JobResponse.js +1 -1
- package/dist/openapi/models/JobStatus.d.ts +1 -1
- package/dist/openapi/models/JobStatus.js +1 -1
- package/dist/openapi/models/JobType.d.ts +1 -1
- package/dist/openapi/models/JobType.js +1 -1
- package/dist/openapi/models/LivenessResponse.d.ts +1 -1
- package/dist/openapi/models/LivenessResponse.js +1 -1
- package/dist/openapi/models/LoginUser200Response.d.ts +1 -1
- package/dist/openapi/models/LoginUser200Response.js +1 -1
- package/dist/openapi/models/LoginUser200ResponseData.d.ts +1 -1
- package/dist/openapi/models/LoginUser200ResponseData.js +1 -1
- package/dist/openapi/models/LoginUser200ResponseDataUser.d.ts +1 -1
- package/dist/openapi/models/LoginUser200ResponseDataUser.js +1 -1
- package/dist/openapi/models/LoginUserRequest.d.ts +1 -1
- package/dist/openapi/models/LoginUserRequest.js +1 -1
- package/dist/openapi/models/MetadataResponse.d.ts +1 -1
- package/dist/openapi/models/MetadataResponse.js +1 -1
- package/dist/openapi/models/MetadataResponseDimensions.d.ts +1 -1
- package/dist/openapi/models/MetadataResponseDimensions.js +1 -1
- package/dist/openapi/models/MetadataResponseExif.d.ts +1 -1
- package/dist/openapi/models/MetadataResponseExif.js +1 -1
- package/dist/openapi/models/MetadataResponseExifGps.d.ts +1 -1
- package/dist/openapi/models/MetadataResponseExifGps.js +1 -1
- package/dist/openapi/models/MetadataSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/MetadataSuccessEnvelope.js +1 -1
- package/dist/openapi/models/MimeGroupSchema.d.ts +1 -1
- package/dist/openapi/models/MimeGroupSchema.js +1 -1
- package/dist/openapi/models/MultiInputSource.d.ts +1 -1
- package/dist/openapi/models/MultiInputSource.js +1 -1
- package/dist/openapi/models/MultipartCompleteRequest.d.ts +1 -1
- package/dist/openapi/models/MultipartCompleteRequest.js +1 -1
- package/dist/openapi/models/MultipartCompleteRequestPartsInner.d.ts +1 -1
- package/dist/openapi/models/MultipartCompleteRequestPartsInner.js +1 -1
- package/dist/openapi/models/MultipartCompleteResponse.d.ts +1 -1
- package/dist/openapi/models/MultipartCompleteResponse.js +1 -1
- package/dist/openapi/models/MultipartCompleteSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/MultipartCompleteSuccessEnvelope.js +1 -1
- package/dist/openapi/models/MultipartInitiateRequestMetadataHint.d.ts +1 -1
- package/dist/openapi/models/MultipartInitiateRequestMetadataHint.js +1 -1
- package/dist/openapi/models/MultipartInitiateResponse.d.ts +1 -1
- package/dist/openapi/models/MultipartInitiateResponse.js +1 -1
- package/dist/openapi/models/MultipartInitiateSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/MultipartInitiateSuccessEnvelope.js +1 -1
- package/dist/openapi/models/MultipartKeepaliveResponse.d.ts +1 -1
- package/dist/openapi/models/MultipartKeepaliveResponse.js +1 -1
- package/dist/openapi/models/MultipartKeepaliveSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/MultipartKeepaliveSuccessEnvelope.js +1 -1
- package/dist/openapi/models/MultipartPartListing.d.ts +1 -1
- package/dist/openapi/models/MultipartPartListing.js +1 -1
- package/dist/openapi/models/MultipartPresignRequest.d.ts +1 -1
- package/dist/openapi/models/MultipartPresignRequest.js +1 -1
- package/dist/openapi/models/MultipartPresignResponse.d.ts +1 -1
- package/dist/openapi/models/MultipartPresignResponse.js +1 -1
- package/dist/openapi/models/MultipartPresignSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/MultipartPresignSuccessEnvelope.js +1 -1
- package/dist/openapi/models/MultipartStatusResponse.d.ts +1 -1
- package/dist/openapi/models/MultipartStatusResponse.js +1 -1
- package/dist/openapi/models/MultipartStatusSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/MultipartStatusSuccessEnvelope.js +1 -1
- package/dist/openapi/models/OperationDefinition.d.ts +1 -1
- package/dist/openapi/models/OperationDefinition.js +1 -1
- package/dist/openapi/models/OperationDownload.d.ts +24 -1
- package/dist/openapi/models/OperationDownload.js +5 -1
- package/dist/openapi/models/OperationInputModel.d.ts +1 -1
- package/dist/openapi/models/OperationInputModel.js +1 -1
- package/dist/openapi/models/OperationResponse.d.ts +1 -1
- package/dist/openapi/models/OperationResponse.js +1 -1
- package/dist/openapi/models/OperationResult.d.ts +1 -1
- package/dist/openapi/models/OperationResult.js +1 -1
- package/dist/openapi/models/OperationResultMetadata.d.ts +1 -1
- package/dist/openapi/models/OperationResultMetadata.js +1 -1
- package/dist/openapi/models/OperationResultMetrics.d.ts +1 -1
- package/dist/openapi/models/OperationResultMetrics.js +1 -1
- package/dist/openapi/models/OperationSchemaDefinition.d.ts +1 -1
- package/dist/openapi/models/OperationSchemaDefinition.js +1 -1
- package/dist/openapi/models/OperationStatus.d.ts +1 -1
- package/dist/openapi/models/OperationStatus.js +1 -1
- package/dist/openapi/models/OperationType.d.ts +3 -3
- package/dist/openapi/models/OperationType.js +3 -3
- package/dist/openapi/models/OperationsSchemaResponse.d.ts +1 -1
- package/dist/openapi/models/OperationsSchemaResponse.js +1 -1
- package/dist/openapi/models/OperationsSchemaResponseWorkflowFeatures.d.ts +1 -1
- package/dist/openapi/models/OperationsSchemaResponseWorkflowFeatures.js +1 -1
- package/dist/openapi/models/OperationsSchemaResponseWorkflowFeaturesDelivery.d.ts +1 -1
- package/dist/openapi/models/OperationsSchemaResponseWorkflowFeaturesDelivery.js +1 -1
- package/dist/openapi/models/OperationsSchemaResponseWorkflowFeaturesDeliveryMode.d.ts +1 -1
- package/dist/openapi/models/OperationsSchemaResponseWorkflowFeaturesDeliveryMode.js +1 -1
- package/dist/openapi/models/OperationsSchemaResponseWorkflowFeaturesDeliverySelection.d.ts +1 -1
- package/dist/openapi/models/OperationsSchemaResponseWorkflowFeaturesDeliverySelection.js +1 -1
- package/dist/openapi/models/OptionSchema.d.ts +1 -1
- package/dist/openapi/models/OptionSchema.js +1 -1
- package/dist/openapi/models/PerRoleCardinalityEntry.d.ts +1 -1
- package/dist/openapi/models/PerRoleCardinalityEntry.js +1 -1
- package/dist/openapi/models/PerValueAvailabilityEntry.d.ts +1 -1
- package/dist/openapi/models/PerValueAvailabilityEntry.js +1 -1
- package/dist/openapi/models/PresignedUrlPart.d.ts +1 -1
- package/dist/openapi/models/PresignedUrlPart.js +1 -1
- package/dist/openapi/models/ProbePendingResponse.d.ts +1 -1
- package/dist/openapi/models/ProbePendingResponse.js +1 -1
- package/dist/openapi/models/ProcessingClass.d.ts +1 -1
- package/dist/openapi/models/ProcessingClass.js +1 -1
- package/dist/openapi/models/ProcessingClassBandViolation.d.ts +1 -1
- package/dist/openapi/models/ProcessingClassBandViolation.js +1 -1
- package/dist/openapi/models/ProcessingClassConstraints.d.ts +1 -1
- package/dist/openapi/models/ProcessingClassConstraints.js +1 -1
- package/dist/openapi/models/ProcessingClassEntry.d.ts +1 -1
- package/dist/openapi/models/ProcessingClassEntry.js +1 -1
- package/dist/openapi/models/ProcessingClassExceedsBandResponse.d.ts +1 -1
- package/dist/openapi/models/ProcessingClassExceedsBandResponse.js +1 -1
- package/dist/openapi/models/ProcessingClassHint.d.ts +1 -1
- package/dist/openapi/models/ProcessingClassHint.js +1 -1
- package/dist/openapi/models/ProcessingClassReason.d.ts +1 -1
- package/dist/openapi/models/ProcessingClassReason.js +1 -1
- package/dist/openapi/models/ProcessingClassRejectReason.d.ts +1 -1
- package/dist/openapi/models/ProcessingClassRejectReason.js +1 -1
- package/dist/openapi/models/ProcessingPlan.d.ts +1 -1
- package/dist/openapi/models/ProcessingPlan.js +1 -1
- package/dist/openapi/models/ProcessingPlanJob.d.ts +1 -1
- package/dist/openapi/models/ProcessingPlanJob.js +1 -1
- package/dist/openapi/models/ReEncodeDecision.d.ts +1 -1
- package/dist/openapi/models/ReEncodeDecision.js +1 -1
- package/dist/openapi/models/ReadinessResponse.d.ts +1 -1
- package/dist/openapi/models/ReadinessResponse.js +1 -1
- package/dist/openapi/models/RegisterUser422Response.d.ts +1 -1
- package/dist/openapi/models/RegisterUser422Response.js +1 -1
- package/dist/openapi/models/RegisterUserRequest.d.ts +1 -1
- package/dist/openapi/models/RegisterUserRequest.js +1 -1
- package/dist/openapi/models/ResetPasswordRequest.d.ts +1 -1
- package/dist/openapi/models/ResetPasswordRequest.js +1 -1
- package/dist/openapi/models/ResponseEnvelope.d.ts +1 -1
- package/dist/openapi/models/ResponseEnvelope.js +1 -1
- package/dist/openapi/models/RetryResponse.d.ts +1 -1
- package/dist/openapi/models/RetryResponse.js +1 -1
- package/dist/openapi/models/RetrySuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/RetrySuccessEnvelope.js +1 -1
- package/dist/openapi/models/SseCompletionBase.d.ts +1 -1
- package/dist/openapi/models/SseCompletionBase.js +1 -1
- package/dist/openapi/models/SseEventType.d.ts +1 -1
- package/dist/openapi/models/SseEventType.js +1 -1
- package/dist/openapi/models/SseJobCompletedData.d.ts +1 -1
- package/dist/openapi/models/SseJobCompletedData.js +1 -1
- package/dist/openapi/models/SseJobFailedData.d.ts +1 -1
- package/dist/openapi/models/SseJobFailedData.js +1 -1
- package/dist/openapi/models/SseMultiOutputCompletion.d.ts +1 -1
- package/dist/openapi/models/SseMultiOutputCompletion.js +1 -1
- package/dist/openapi/models/SseMultiOutputCompletionMetrics.d.ts +1 -1
- package/dist/openapi/models/SseMultiOutputCompletionMetrics.js +1 -1
- package/dist/openapi/models/SseMultiOutputCompletionWithKind.d.ts +1 -1
- package/dist/openapi/models/SseMultiOutputCompletionWithKind.js +1 -1
- package/dist/openapi/models/SseMultiOutputResultEntry.d.ts +1 -1
- package/dist/openapi/models/SseMultiOutputResultEntry.js +1 -1
- package/dist/openapi/models/SseOperationCompletedData.d.ts +1 -1
- package/dist/openapi/models/SseOperationCompletedData.js +1 -1
- package/dist/openapi/models/SseOperationCompletionResult.d.ts +1 -1
- package/dist/openapi/models/SseOperationCompletionResult.js +1 -1
- package/dist/openapi/models/SseOperationFailedData.d.ts +1 -1
- package/dist/openapi/models/SseOperationFailedData.js +1 -1
- package/dist/openapi/models/SseOperationProgressData.d.ts +1 -1
- package/dist/openapi/models/SseOperationProgressData.js +1 -1
- package/dist/openapi/models/SseSingleOutputCompletion.d.ts +1 -1
- package/dist/openapi/models/SseSingleOutputCompletion.js +1 -1
- package/dist/openapi/models/SseWorkflowTerminalData.d.ts +1 -1
- package/dist/openapi/models/SseWorkflowTerminalData.js +1 -1
- package/dist/openapi/models/TierRestrictionKind.d.ts +1 -1
- package/dist/openapi/models/TierRestrictionKind.js +1 -1
- package/dist/openapi/models/TierRestrictionResponse.d.ts +1 -1
- package/dist/openapi/models/TierRestrictionResponse.js +1 -1
- package/dist/openapi/models/UpdateProfile200Response.d.ts +1 -1
- package/dist/openapi/models/UpdateProfile200Response.js +1 -1
- package/dist/openapi/models/UpdateProfile200ResponseData.d.ts +1 -1
- package/dist/openapi/models/UpdateProfile200ResponseData.js +1 -1
- package/dist/openapi/models/UpdateProfile422Response.d.ts +1 -1
- package/dist/openapi/models/UpdateProfile422Response.js +1 -1
- package/dist/openapi/models/UpdateProfileRequest.d.ts +1 -1
- package/dist/openapi/models/UpdateProfileRequest.js +1 -1
- package/dist/openapi/models/UploadConstraintsApplied.d.ts +1 -1
- package/dist/openapi/models/UploadConstraintsApplied.js +1 -1
- package/dist/openapi/models/UploadDurationExceedsTierResponse.d.ts +1 -1
- package/dist/openapi/models/UploadDurationExceedsTierResponse.js +1 -1
- package/dist/openapi/models/UploadFile403Response.d.ts +1 -1
- package/dist/openapi/models/UploadFile403Response.js +1 -1
- package/dist/openapi/models/UploadFile422Response.d.ts +1 -1
- package/dist/openapi/models/UploadFile422Response.js +1 -1
- package/dist/openapi/models/UploadProbeMediaMetadata.d.ts +1 -1
- package/dist/openapi/models/UploadProbeMediaMetadata.js +1 -1
- package/dist/openapi/models/UploadProbeProcessingClass.d.ts +1 -1
- package/dist/openapi/models/UploadProbeProcessingClass.js +1 -1
- package/dist/openapi/models/UploadProbeResponse.d.ts +1 -1
- package/dist/openapi/models/UploadProbeResponse.js +1 -1
- package/dist/openapi/models/UploadProbeStatus.d.ts +1 -1
- package/dist/openapi/models/UploadProbeStatus.js +1 -1
- package/dist/openapi/models/UploadProbeSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/UploadProbeSuccessEnvelope.js +1 -1
- package/dist/openapi/models/UploadResponse.d.ts +1 -1
- package/dist/openapi/models/UploadResponse.js +1 -1
- package/dist/openapi/models/UploadSizeExceedsTierResponse.d.ts +1 -1
- package/dist/openapi/models/UploadSizeExceedsTierResponse.js +1 -1
- package/dist/openapi/models/UploadSource.d.ts +1 -1
- package/dist/openapi/models/UploadSource.js +1 -1
- package/dist/openapi/models/UploadSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/UploadSuccessEnvelope.js +1 -1
- package/dist/openapi/models/UploadThresholds.d.ts +1 -1
- package/dist/openapi/models/UploadThresholds.js +1 -1
- package/dist/openapi/models/UserTier.d.ts +1 -1
- package/dist/openapi/models/UserTier.js +1 -1
- package/dist/openapi/models/ValidationErrorEnvelope.d.ts +1 -1
- package/dist/openapi/models/ValidationErrorEnvelope.js +1 -1
- package/dist/openapi/models/ValidationErrorEnvelopeDetailsInner.d.ts +1 -1
- package/dist/openapi/models/ValidationErrorEnvelopeDetailsInner.js +1 -1
- package/dist/openapi/models/VerifyEmailRequest.d.ts +1 -1
- package/dist/openapi/models/VerifyEmailRequest.js +1 -1
- package/dist/openapi/models/WarningType.d.ts +1 -1
- package/dist/openapi/models/WarningType.js +1 -1
- package/dist/openapi/models/WebhookOperationContext.d.ts +1 -1
- package/dist/openapi/models/WebhookOperationContext.js +1 -1
- package/dist/openapi/models/WebhookPayload.d.ts +1 -1
- package/dist/openapi/models/WebhookPayload.js +1 -1
- package/dist/openapi/models/WorkflowCancelBillingEffect.d.ts +1 -1
- package/dist/openapi/models/WorkflowCancelBillingEffect.js +1 -1
- package/dist/openapi/models/WorkflowCancelResponse.d.ts +1 -1
- package/dist/openapi/models/WorkflowCancelResponse.js +1 -1
- package/dist/openapi/models/WorkflowCancelSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/WorkflowCancelSuccessEnvelope.js +1 -1
- package/dist/openapi/models/WorkflowCreateRequest.d.ts +1 -1
- package/dist/openapi/models/WorkflowCreateRequest.js +1 -1
- package/dist/openapi/models/WorkflowCreateResponse.d.ts +1 -1
- package/dist/openapi/models/WorkflowCreateResponse.js +1 -1
- package/dist/openapi/models/WorkflowCreateSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/WorkflowCreateSuccessEnvelope.js +1 -1
- package/dist/openapi/models/WorkflowDownloadResponse.d.ts +1 -1
- package/dist/openapi/models/WorkflowDownloadResponse.js +1 -1
- package/dist/openapi/models/WorkflowDownloadSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/WorkflowDownloadSuccessEnvelope.js +1 -1
- package/dist/openapi/models/WorkflowEdge.d.ts +1 -1
- package/dist/openapi/models/WorkflowEdge.js +1 -1
- package/dist/openapi/models/WorkflowExpiredResponse.d.ts +1 -1
- package/dist/openapi/models/WorkflowExpiredResponse.js +1 -1
- package/dist/openapi/models/WorkflowListResponse.d.ts +1 -1
- package/dist/openapi/models/WorkflowListResponse.js +1 -1
- package/dist/openapi/models/WorkflowListSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/WorkflowListSuccessEnvelope.js +1 -1
- package/dist/openapi/models/WorkflowPauseRequiredAction.d.ts +1 -1
- package/dist/openapi/models/WorkflowPauseRequiredAction.js +1 -1
- package/dist/openapi/models/WorkflowPausedDetail.d.ts +1 -1
- package/dist/openapi/models/WorkflowPausedDetail.js +1 -1
- package/dist/openapi/models/WorkflowPausedDetailLinks.d.ts +1 -1
- package/dist/openapi/models/WorkflowPausedDetailLinks.js +1 -1
- package/dist/openapi/models/WorkflowProcessing.d.ts +1 -1
- package/dist/openapi/models/WorkflowProcessing.js +1 -1
- package/dist/openapi/models/WorkflowResumeResponse.d.ts +1 -1
- package/dist/openapi/models/WorkflowResumeResponse.js +1 -1
- package/dist/openapi/models/WorkflowResumeSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/WorkflowResumeSuccessEnvelope.js +1 -1
- package/dist/openapi/models/WorkflowSource.d.ts +1 -1
- package/dist/openapi/models/WorkflowSource.js +1 -1
- package/dist/openapi/models/WorkflowStatus.d.ts +1 -1
- package/dist/openapi/models/WorkflowStatus.js +1 -1
- package/dist/openapi/models/WorkflowStatusResponse.d.ts +1 -1
- package/dist/openapi/models/WorkflowStatusResponse.js +1 -1
- package/dist/openapi/models/WorkflowStatusSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/WorkflowStatusSuccessEnvelope.js +1 -1
- package/dist/openapi/models/WorkflowSummary.d.ts +1 -1
- package/dist/openapi/models/WorkflowSummary.js +1 -1
- package/dist/openapi/models/WorkflowSummaryJob.d.ts +1 -1
- package/dist/openapi/models/WorkflowSummaryJob.js +1 -1
- package/dist/openapi/models/WorkflowWarning.d.ts +1 -1
- package/dist/openapi/models/WorkflowWarning.js +1 -1
- package/dist/openapi/models/WorkflowWarningSeverity.d.ts +1 -1
- package/dist/openapi/models/WorkflowWarningSeverity.js +1 -1
- package/dist/openapi/runtime.d.ts +1 -1
- package/dist/openapi/runtime.js +1 -1
- package/dist/operations/audio_overlay.metadata.js +2 -2
- package/dist/operations/compress.metadata.js +0 -5
- package/dist/operations/convert.metadata.js +0 -2
- package/dist/operations/image_watermark.d.ts +36 -0
- package/dist/operations/image_watermark.js +24 -0
- package/dist/operations/image_watermark.metadata.js +47 -1
- package/dist/operations/split.metadata.js +1 -1
- package/dist/operations/text_watermark.d.ts +62 -0
- package/dist/operations/text_watermark.js +42 -0
- package/dist/operations/text_watermark.metadata.js +82 -0
- package/dist/operations/thumbnail.d.ts +19 -0
- package/dist/operations/thumbnail.js +12 -0
- package/dist/operations/thumbnail.metadata.js +29 -0
- package/dist/operations/video_watermark.metadata.js +1 -1
- package/openapi/api.yaml +22 -3
- package/operation-capabilities/operation-capabilities.json +1 -1
- package/operations/schemas/archive.yaml +1 -1
- package/operations/schemas/audio_overlay.yaml +9 -11
- package/operations/schemas/audio_to_video.yaml +7 -11
- package/operations/schemas/audio_watermark.yaml +1 -5
- package/operations/schemas/compress.yaml +322 -399
- package/operations/schemas/convert.yaml +68 -83
- package/operations/schemas/custom_luma.yaml +6 -11
- package/operations/schemas/image_watermark.yaml +166 -14
- package/operations/schemas/merge.yaml +5 -5
- package/operations/schemas/passthrough.yaml +4 -4
- package/operations/schemas/split.yaml +22 -31
- package/operations/schemas/text_watermark.yaml +262 -4
- package/operations/schemas/thumbnail.yaml +73 -3
- package/operations/schemas/video_text_watermark.yaml +9 -13
- package/operations/schemas/video_watermark.yaml +16 -21
- package/package.json +1 -1
|
@@ -19,8 +19,7 @@ operation:
|
|
|
19
19
|
|
|
20
20
|
**Plus an audio-only `silence` mode** (`beta`, gated by the
|
|
21
21
|
`silence_mode_audio` feature): cut at detected silence gaps via
|
|
22
|
-
|
|
23
|
-
three-mode.
|
|
22
|
+
server-side silence detection. Video stays three-mode.
|
|
24
23
|
|
|
25
24
|
**GIF + PDF use range-based selection** instead of three modes:
|
|
26
25
|
- GIF (`image_gif`): `frame_range` REQUIRED + `output_format`
|
|
@@ -29,11 +28,11 @@ operation:
|
|
|
29
28
|
exclusive per `depends_on`).
|
|
30
29
|
|
|
31
30
|
**Wire format**: numeric seconds (floats allowed for sub-second
|
|
32
|
-
precision). NOT ISO 8601 duration strings. Matches
|
|
33
|
-
|
|
31
|
+
precision). NOT ISO 8601 duration strings. Matches common
|
|
32
|
+
video-tooling conventions.
|
|
34
33
|
|
|
35
|
-
**200-output hard cap**
|
|
36
|
-
|
|
34
|
+
**200-output hard cap** (`OperationResult.outputs[].maxItems:
|
|
35
|
+
200`). Preflight rejects
|
|
37
36
|
requests exceeding this BEFORE work as `invalid_options` (422).
|
|
38
37
|
Cap math by mode:
|
|
39
38
|
- `interval`: `ceil(probed_duration / interval) <= 200`
|
|
@@ -48,7 +47,7 @@ operation:
|
|
|
48
47
|
**Output naming**: 3-digit zero-padded — `output-001` ..
|
|
49
48
|
`output-200`. Matches the convert PDF→N precedent.
|
|
50
49
|
|
|
51
|
-
**Output envelope binding
|
|
50
|
+
**Output envelope binding**:
|
|
52
51
|
- `image_gif`: `PositionIndexed` (frame stream-position 0-based
|
|
53
52
|
ordinal)
|
|
54
53
|
- `document_pdf`: `PageIndexed` (1-based gapless page index)
|
|
@@ -61,25 +60,18 @@ operation:
|
|
|
61
60
|
NOT apply to GIF or PDF (frame extraction is exact and PDF page
|
|
62
61
|
selection is exact by definition).
|
|
63
62
|
|
|
64
|
-
**Long-form video** routes to a separate
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
63
|
+
**Long-form video** routes to a separate long-form processing
|
|
64
|
+
path (same `split` OperationType; routing via `processing_class`).
|
|
65
|
+
No schema-side discriminator beyond MIME detection +
|
|
66
|
+
`processing_class`.
|
|
68
67
|
|
|
69
68
|
`availability: beta` for the `audio` and `video` mime_groups
|
|
70
|
-
(
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
long-form fan-out is flag-gated dark). The `image_gif` and
|
|
77
|
-
`document_pdf` mime_groups stay `availability: planned` until their
|
|
78
|
-
cross-repo Lambda workers ship ([`vKI0CFDu`](https://trello.com/c/vKI0CFDu)
|
|
79
|
-
+ lambdas L1); dispatch returns `feature_not_available` (422) for the
|
|
80
|
-
still-planned groups/classes until then.
|
|
81
|
-
|
|
82
|
-
Per ADR-0014.
|
|
69
|
+
(shape-stable + opt-in, MUST NOT 422). Video activates **both
|
|
70
|
+
classes**: `video.processing_class.short_form` AND `long_form` are
|
|
71
|
+
`beta`. The `image_gif` and `document_pdf` mime_groups stay
|
|
72
|
+
`availability: planned` until their cross-repo backend support ships;
|
|
73
|
+
dispatch returns `feature_not_available` (422) for the still-planned
|
|
74
|
+
groups/classes until then.
|
|
83
75
|
default: false
|
|
84
76
|
input_model: single
|
|
85
77
|
sole_op: true # bypasses V1 chain validation — must be the only operation in its job (ADR-0025)
|
|
@@ -89,11 +81,10 @@ operation:
|
|
|
89
81
|
availability: beta
|
|
90
82
|
description: |
|
|
91
83
|
Silence-detect cut mode for audio (`mode: silence` —
|
|
92
|
-
server-side silence detection
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
`
|
|
96
|
-
`per_value_availability: beta` on `audio.mode`.
|
|
84
|
+
server-side silence detection). `beta`: shape-stable + opt-in.
|
|
85
|
+
The mode ships dark until the API regenerates enum validation
|
|
86
|
+
to accept `mode: silence`. The `silence` enum value carries a
|
|
87
|
+
matching `per_value_availability: beta` on `audio.mode`.
|
|
97
88
|
|
|
98
89
|
mime_groups:
|
|
99
90
|
# Animated GIF base — parallel mime_group naming follows the
|
|
@@ -283,7 +274,7 @@ operation:
|
|
|
283
274
|
Cut precision. Under `fast`, audio cuts are
|
|
284
275
|
packet-boundary approximate (drift bounded by codec
|
|
285
276
|
packet size — typically <= 23ms for AAC, <= 26ms for
|
|
286
|
-
MP3). Under `exact`, the
|
|
277
|
+
MP3). Under `exact`, the server re-encodes to align cuts
|
|
287
278
|
precisely at the requested timestamps (slower, larger
|
|
288
279
|
output, but sample-accurate).
|
|
289
280
|
|
|
@@ -378,6 +369,6 @@ operation:
|
|
|
378
369
|
description: |
|
|
379
370
|
Cut precision. Under `fast`, video cuts are keyframe-
|
|
380
371
|
aligned (drift bounded by GOP size — typically up to 1-2
|
|
381
|
-
seconds depending on encoder). Under `exact`, the
|
|
372
|
+
seconds depending on encoder). Under `exact`, the backend
|
|
382
373
|
re-encodes to align cuts precisely at the requested
|
|
383
374
|
timestamps (slower, larger output, but frame-accurate).
|
|
@@ -5,15 +5,24 @@ operation:
|
|
|
5
5
|
description: |
|
|
6
6
|
Render a text overlay onto an image using bundled Liberation Sans
|
|
7
7
|
(SIL OFL). Single-input — text comes from options, not from a file
|
|
8
|
-
input. Source capped at 100 megapixels in `single` mode
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
`watermark_mode`). Per ADR-0004 §"V2 JobDefinition" + plan v5 §F1.
|
|
8
|
+
input. Source capped at 100 megapixels in `single` mode. `tiled`
|
|
9
|
+
mode keeps the 25-megapixel canvas bound (see `tile_spacing` /
|
|
10
|
+
`watermark_mode`).
|
|
12
11
|
|
|
13
12
|
Two rendering modes:
|
|
14
13
|
- `single`: one label rendered at the anchor + margin position.
|
|
15
14
|
- `tiled`: text tiled across the source image (Cinavia / Adobe Stock
|
|
16
15
|
pattern); rotation default -45° and tile_spacing controls density.
|
|
16
|
+
|
|
17
|
+
Stable today for image/jpeg, image/png, image/webp inputs. TIFF
|
|
18
|
+
(image/tiff) and BMP (image/bmp) inputs are advertised as `planned`
|
|
19
|
+
via the parallel `image_tiff` / `image_bmp` mime_groups — both are
|
|
20
|
+
already decodable and the worker's encode arms are a cheap add
|
|
21
|
+
(shared `image`-crate encoders), so each flips to `stable` once its
|
|
22
|
+
arm ships and is proven. Output mirrors the input format
|
|
23
|
+
(`produces: same_as_input`), so a format is only advertised when the
|
|
24
|
+
worker can both decode AND encode it; HEIC/AVIF (no encoder) and SVG
|
|
25
|
+
(cannot re-emit svg from a rasterised composite) stay out of scope.
|
|
17
26
|
default: false
|
|
18
27
|
input_model: single
|
|
19
28
|
sole_op: true # bypasses V1 chain validation — must be the only operation in its job (ADR-0025)
|
|
@@ -148,3 +157,252 @@ operation:
|
|
|
148
157
|
Text overlay opacity. Default 1.0 — the alpha channel of
|
|
149
158
|
`color` already encodes transparency, so opacity is usually
|
|
150
159
|
left at 1.0 and transparency is set via the color hex.
|
|
160
|
+
|
|
161
|
+
# TIFF input — separate group because backend support ships in its own
|
|
162
|
+
# wave: the format is already decodable, but the encode arm (shared
|
|
163
|
+
# `image`-crate TiffEncoder) is pending. Tagged `planned` until the arm
|
|
164
|
+
# ships and is proven, then flips to `stable` (cross-repo UANjD38A).
|
|
165
|
+
# Text-rendering options are format-independent, so the shape mirrors
|
|
166
|
+
# the canonical `image` group exactly.
|
|
167
|
+
image_tiff:
|
|
168
|
+
availability: planned
|
|
169
|
+
mimes:
|
|
170
|
+
- image/tiff
|
|
171
|
+
options:
|
|
172
|
+
text:
|
|
173
|
+
type: string
|
|
174
|
+
required: true
|
|
175
|
+
description: |
|
|
176
|
+
Watermark text. Must be non-empty.
|
|
177
|
+
|
|
178
|
+
font_size:
|
|
179
|
+
type: float
|
|
180
|
+
min: 8.0
|
|
181
|
+
max: 512.0
|
|
182
|
+
default: 48.0
|
|
183
|
+
description: Font size in pixels. Clamped to range.
|
|
184
|
+
|
|
185
|
+
color:
|
|
186
|
+
type: string
|
|
187
|
+
default: "#FFFFFF80"
|
|
188
|
+
pattern: '^#[0-9A-Fa-f]{6}([0-9A-Fa-f]{2})?$'
|
|
189
|
+
description: |
|
|
190
|
+
Text colour as hex RGB (#RRGGBB) or RGBA (#RRGGBBAA).
|
|
191
|
+
Default is white with 50% alpha.
|
|
192
|
+
|
|
193
|
+
font_family:
|
|
194
|
+
type: enum
|
|
195
|
+
values:
|
|
196
|
+
- liberation_sans
|
|
197
|
+
default: liberation_sans
|
|
198
|
+
description: |
|
|
199
|
+
Font family. V2.0 ships with bundled Liberation Sans only;
|
|
200
|
+
user-uploaded fonts are a future extension (separate ticket).
|
|
201
|
+
|
|
202
|
+
rotation:
|
|
203
|
+
type: float
|
|
204
|
+
min: -360.0
|
|
205
|
+
max: 360.0
|
|
206
|
+
default: -45.0
|
|
207
|
+
description: |
|
|
208
|
+
Rotation angle in degrees. Default -45° suits tiled mode
|
|
209
|
+
(angled diagonal pattern). Clamped to range.
|
|
210
|
+
|
|
211
|
+
watermark_mode:
|
|
212
|
+
type: enum
|
|
213
|
+
values: [single, tiled]
|
|
214
|
+
default: single
|
|
215
|
+
description: |
|
|
216
|
+
Rendering mode:
|
|
217
|
+
- `single`: one label placed at the anchor + margin offset.
|
|
218
|
+
- `tiled`: repeated tiles across the entire source image at
|
|
219
|
+
the rotation angle.
|
|
220
|
+
|
|
221
|
+
tile_spacing:
|
|
222
|
+
type: integer
|
|
223
|
+
min: 0
|
|
224
|
+
max: 1000
|
|
225
|
+
depends_on: { watermark_mode: tiled }
|
|
226
|
+
description: |
|
|
227
|
+
Spacing between tiled labels in pixels. Defaults to font_size
|
|
228
|
+
when omitted. Only applies when watermark_mode is tiled.
|
|
229
|
+
|
|
230
|
+
anchor:
|
|
231
|
+
type: enum
|
|
232
|
+
values:
|
|
233
|
+
- top_left
|
|
234
|
+
- top_center
|
|
235
|
+
- top_right
|
|
236
|
+
- center_left
|
|
237
|
+
- center
|
|
238
|
+
- center_right
|
|
239
|
+
- bottom_left
|
|
240
|
+
- bottom_center
|
|
241
|
+
- bottom_right
|
|
242
|
+
default: bottom_right
|
|
243
|
+
description: |
|
|
244
|
+
9-grid anchor position. For watermark_mode: single, the text
|
|
245
|
+
label is placed at this anchor + margin_x/margin_y offset.
|
|
246
|
+
For watermark_mode: tiled, anchor is ignored (tiles fill the
|
|
247
|
+
source image).
|
|
248
|
+
|
|
249
|
+
margin_x:
|
|
250
|
+
type: string
|
|
251
|
+
pattern: '^\d+(\.\d+)?(px|%)$'
|
|
252
|
+
default: "0px"
|
|
253
|
+
description: |
|
|
254
|
+
Horizontal offset from the anchor as pixels (e.g. "40px") or
|
|
255
|
+
percentage of base width (e.g. "5%"). Direction is
|
|
256
|
+
anchor-relative. Ignored when watermark_mode: tiled.
|
|
257
|
+
|
|
258
|
+
**`anchor: center` exception** (watermark_mode: single only).
|
|
259
|
+
Non-zero `margin_x` combined with `anchor: center` is rejected
|
|
260
|
+
by the API at workflow-create time as `invalid_options`
|
|
261
|
+
(HTTP 422). Not applicable to watermark_mode: tiled, where
|
|
262
|
+
anchor + margin are ignored entirely.
|
|
263
|
+
|
|
264
|
+
margin_y:
|
|
265
|
+
type: string
|
|
266
|
+
pattern: '^\d+(\.\d+)?(px|%)$'
|
|
267
|
+
default: "0px"
|
|
268
|
+
description: |
|
|
269
|
+
Vertical offset from the anchor as pixels or percentage of
|
|
270
|
+
base height. Ignored when watermark_mode: tiled.
|
|
271
|
+
|
|
272
|
+
**`anchor: center` exception** (watermark_mode: single only).
|
|
273
|
+
Same rejection rule as `margin_x` — non-zero `margin_y` with
|
|
274
|
+
`anchor: center` is rejected by the API at workflow-create
|
|
275
|
+
time as `invalid_options` (HTTP 422).
|
|
276
|
+
|
|
277
|
+
opacity:
|
|
278
|
+
type: float
|
|
279
|
+
min: 0.0
|
|
280
|
+
max: 1.0
|
|
281
|
+
default: 1.0
|
|
282
|
+
description: |
|
|
283
|
+
Text overlay opacity. Default 1.0 — the alpha channel of
|
|
284
|
+
`color` already encodes transparency, so opacity is usually
|
|
285
|
+
left at 1.0 and transparency is set via the color hex.
|
|
286
|
+
|
|
287
|
+
# BMP input — separate group for the same reason as image_tiff: decode
|
|
288
|
+
# is ready, the encode arm (shared `image`-crate BmpEncoder) is pending.
|
|
289
|
+
# Tagged `planned` until the arm ships and is proven (cross-repo UANjD38A).
|
|
290
|
+
image_bmp:
|
|
291
|
+
availability: planned
|
|
292
|
+
mimes:
|
|
293
|
+
- image/bmp
|
|
294
|
+
options:
|
|
295
|
+
text:
|
|
296
|
+
type: string
|
|
297
|
+
required: true
|
|
298
|
+
description: |
|
|
299
|
+
Watermark text. Must be non-empty.
|
|
300
|
+
|
|
301
|
+
font_size:
|
|
302
|
+
type: float
|
|
303
|
+
min: 8.0
|
|
304
|
+
max: 512.0
|
|
305
|
+
default: 48.0
|
|
306
|
+
description: Font size in pixels. Clamped to range.
|
|
307
|
+
|
|
308
|
+
color:
|
|
309
|
+
type: string
|
|
310
|
+
default: "#FFFFFF80"
|
|
311
|
+
pattern: '^#[0-9A-Fa-f]{6}([0-9A-Fa-f]{2})?$'
|
|
312
|
+
description: |
|
|
313
|
+
Text colour as hex RGB (#RRGGBB) or RGBA (#RRGGBBAA).
|
|
314
|
+
Default is white with 50% alpha.
|
|
315
|
+
|
|
316
|
+
font_family:
|
|
317
|
+
type: enum
|
|
318
|
+
values:
|
|
319
|
+
- liberation_sans
|
|
320
|
+
default: liberation_sans
|
|
321
|
+
description: |
|
|
322
|
+
Font family. V2.0 ships with bundled Liberation Sans only;
|
|
323
|
+
user-uploaded fonts are a future extension (separate ticket).
|
|
324
|
+
|
|
325
|
+
rotation:
|
|
326
|
+
type: float
|
|
327
|
+
min: -360.0
|
|
328
|
+
max: 360.0
|
|
329
|
+
default: -45.0
|
|
330
|
+
description: |
|
|
331
|
+
Rotation angle in degrees. Default -45° suits tiled mode
|
|
332
|
+
(angled diagonal pattern). Clamped to range.
|
|
333
|
+
|
|
334
|
+
watermark_mode:
|
|
335
|
+
type: enum
|
|
336
|
+
values: [single, tiled]
|
|
337
|
+
default: single
|
|
338
|
+
description: |
|
|
339
|
+
Rendering mode:
|
|
340
|
+
- `single`: one label placed at the anchor + margin offset.
|
|
341
|
+
- `tiled`: repeated tiles across the entire source image at
|
|
342
|
+
the rotation angle.
|
|
343
|
+
|
|
344
|
+
tile_spacing:
|
|
345
|
+
type: integer
|
|
346
|
+
min: 0
|
|
347
|
+
max: 1000
|
|
348
|
+
depends_on: { watermark_mode: tiled }
|
|
349
|
+
description: |
|
|
350
|
+
Spacing between tiled labels in pixels. Defaults to font_size
|
|
351
|
+
when omitted. Only applies when watermark_mode is tiled.
|
|
352
|
+
|
|
353
|
+
anchor:
|
|
354
|
+
type: enum
|
|
355
|
+
values:
|
|
356
|
+
- top_left
|
|
357
|
+
- top_center
|
|
358
|
+
- top_right
|
|
359
|
+
- center_left
|
|
360
|
+
- center
|
|
361
|
+
- center_right
|
|
362
|
+
- bottom_left
|
|
363
|
+
- bottom_center
|
|
364
|
+
- bottom_right
|
|
365
|
+
default: bottom_right
|
|
366
|
+
description: |
|
|
367
|
+
9-grid anchor position. For watermark_mode: single, the text
|
|
368
|
+
label is placed at this anchor + margin_x/margin_y offset.
|
|
369
|
+
For watermark_mode: tiled, anchor is ignored (tiles fill the
|
|
370
|
+
source image).
|
|
371
|
+
|
|
372
|
+
margin_x:
|
|
373
|
+
type: string
|
|
374
|
+
pattern: '^\d+(\.\d+)?(px|%)$'
|
|
375
|
+
default: "0px"
|
|
376
|
+
description: |
|
|
377
|
+
Horizontal offset from the anchor as pixels (e.g. "40px") or
|
|
378
|
+
percentage of base width (e.g. "5%"). Direction is
|
|
379
|
+
anchor-relative. Ignored when watermark_mode: tiled.
|
|
380
|
+
|
|
381
|
+
**`anchor: center` exception** (watermark_mode: single only).
|
|
382
|
+
Non-zero `margin_x` combined with `anchor: center` is rejected
|
|
383
|
+
by the API at workflow-create time as `invalid_options`
|
|
384
|
+
(HTTP 422). Not applicable to watermark_mode: tiled, where
|
|
385
|
+
anchor + margin are ignored entirely.
|
|
386
|
+
|
|
387
|
+
margin_y:
|
|
388
|
+
type: string
|
|
389
|
+
pattern: '^\d+(\.\d+)?(px|%)$'
|
|
390
|
+
default: "0px"
|
|
391
|
+
description: |
|
|
392
|
+
Vertical offset from the anchor as pixels or percentage of
|
|
393
|
+
base height. Ignored when watermark_mode: tiled.
|
|
394
|
+
|
|
395
|
+
**`anchor: center` exception** (watermark_mode: single only).
|
|
396
|
+
Same rejection rule as `margin_x` — non-zero `margin_y` with
|
|
397
|
+
`anchor: center` is rejected by the API at workflow-create
|
|
398
|
+
time as `invalid_options` (HTTP 422).
|
|
399
|
+
|
|
400
|
+
opacity:
|
|
401
|
+
type: float
|
|
402
|
+
min: 0.0
|
|
403
|
+
max: 1.0
|
|
404
|
+
default: 1.0
|
|
405
|
+
description: |
|
|
406
|
+
Text overlay opacity. Default 1.0 — the alpha channel of
|
|
407
|
+
`color` already encodes transparency, so opacity is usually
|
|
408
|
+
left at 1.0 and transparency is set via the color hex.
|
|
@@ -61,6 +61,76 @@ operation:
|
|
|
61
61
|
default: 85
|
|
62
62
|
depends_on: { format: [jpg, webp] }
|
|
63
63
|
description: "Output quality for lossy thumbnail formats (jpg/webp): higher = better quality, larger file. Ignored for png (lossless)."
|
|
64
|
+
background:
|
|
65
|
+
type: string
|
|
66
|
+
pattern: "^#[0-9a-fA-F]{6}$"
|
|
67
|
+
depends_on: { format: jpg }
|
|
68
|
+
description: >-
|
|
69
|
+
Background colour as a 6-digit hex (`#RRGGBB`, e.g. `#ffffff`) for a
|
|
70
|
+
transparent image (e.g. PNG/WebP with alpha) resized to an opaque JPG
|
|
71
|
+
thumbnail — the alpha-flatten fill colour. Mirrors
|
|
72
|
+
convert.image.background. HEX ONLY: a non-hex value (e.g. a CSS named
|
|
73
|
+
colour) is rejected rather than advertising an inert free-form string.
|
|
74
|
+
When omitted, transparency is flattened onto white. JPG output only:
|
|
75
|
+
PNG/WebP keep alpha, so the flatten (and this option) do not apply.
|
|
76
|
+
|
|
77
|
+
# SVG input (planned, UANjD38A). SVG is split into its own parallel mime_group
|
|
78
|
+
# (group-level `availability: planned`, which the API gates -> feature_not_available)
|
|
79
|
+
# rather than tagged inside the stable `image` group, because per-MIME planned is
|
|
80
|
+
# advisory/not enforced. SVG rasterises to a bitmap cleanly, so render->resize for
|
|
81
|
+
# thumbnail is feasible. Flip planned -> stable
|
|
82
|
+
# (or beta) once the worker proves svg-rasterise input. Shares the `image` group's
|
|
83
|
+
# option shape (FORMAT.md "Parallel groups").
|
|
84
|
+
image_svg:
|
|
85
|
+
availability: planned
|
|
86
|
+
mimes:
|
|
87
|
+
- image/svg+xml
|
|
88
|
+
max_output_pixels: 16000000
|
|
89
|
+
options:
|
|
90
|
+
# IMAGE input is a full resizer (Lanczos): width/height accept the
|
|
91
|
+
# worker's real 1-16384px range (area-capped above) — this op is the
|
|
92
|
+
# image-resize path, surfaced in the UI as "Resize", not only thumbnails.
|
|
93
|
+
width:
|
|
94
|
+
type: integer
|
|
95
|
+
min: 1
|
|
96
|
+
max: 16384
|
|
97
|
+
required: true
|
|
98
|
+
description: "Target width in pixels (1-16384; width*height <= 16MP). For image input this is a full resize, not just a small preview."
|
|
99
|
+
height:
|
|
100
|
+
type: integer
|
|
101
|
+
min: 1
|
|
102
|
+
max: 16384
|
|
103
|
+
required: true
|
|
104
|
+
description: "Target height in pixels (1-16384; width*height <= 16MP). For image input this is a full resize, not just a small preview."
|
|
105
|
+
fit:
|
|
106
|
+
type: enum
|
|
107
|
+
values: [max, crop, scale]
|
|
108
|
+
default: crop
|
|
109
|
+
description: "Resize mode"
|
|
110
|
+
format:
|
|
111
|
+
type: enum
|
|
112
|
+
values: [jpg, png, webp]
|
|
113
|
+
default: jpg
|
|
114
|
+
description: "Output format for the thumbnail"
|
|
115
|
+
quality:
|
|
116
|
+
type: integer
|
|
117
|
+
min: 1
|
|
118
|
+
max: 100
|
|
119
|
+
default: 85
|
|
120
|
+
depends_on: { format: [jpg, webp] }
|
|
121
|
+
description: "Output quality for lossy thumbnail formats (jpg/webp): higher = better quality, larger file. Ignored for png (lossless)."
|
|
122
|
+
background:
|
|
123
|
+
type: string
|
|
124
|
+
pattern: "^#[0-9a-fA-F]{6}$"
|
|
125
|
+
depends_on: { format: jpg }
|
|
126
|
+
description: >-
|
|
127
|
+
Background colour as a 6-digit hex (`#RRGGBB`, e.g. `#ffffff`) for a
|
|
128
|
+
transparent image (e.g. PNG/WebP with alpha) resized to an opaque JPG
|
|
129
|
+
thumbnail — the alpha-flatten fill colour. Mirrors
|
|
130
|
+
convert.image.background. HEX ONLY: a non-hex value (e.g. a CSS named
|
|
131
|
+
colour) is rejected rather than advertising an inert free-form string.
|
|
132
|
+
When omitted, transparency is flattened onto white. JPG output only:
|
|
133
|
+
PNG/WebP keep alpha, so the flatten (and this option) do not apply.
|
|
64
134
|
|
|
65
135
|
video:
|
|
66
136
|
mimes:
|
|
@@ -104,13 +174,13 @@ operation:
|
|
|
104
174
|
min: 1
|
|
105
175
|
max: 16384
|
|
106
176
|
required: true
|
|
107
|
-
description: "Target width in pixels (1-16384; width*height <= 16MP). Rounded down to an even number
|
|
177
|
+
description: "Target width in pixels (1-16384; width*height <= 16MP). Rounded down to an even number."
|
|
108
178
|
height:
|
|
109
179
|
type: integer
|
|
110
180
|
min: 1
|
|
111
181
|
max: 16384
|
|
112
182
|
required: true
|
|
113
|
-
description: "Target height in pixels (1-16384; width*height <= 16MP). Rounded down to an even number
|
|
183
|
+
description: "Target height in pixels (1-16384; width*height <= 16MP). Rounded down to an even number."
|
|
114
184
|
fit:
|
|
115
185
|
type: enum
|
|
116
186
|
values: [max, crop, scale]
|
|
@@ -157,7 +227,7 @@ operation:
|
|
|
157
227
|
description: >-
|
|
158
228
|
1-based index of the printed page to render, after print-layout
|
|
159
229
|
pagination is applied. For office formats this is the page in the
|
|
160
|
-
|
|
230
|
+
document's print layout — NOT a 1:1 sheet/slide index: a spreadsheet
|
|
161
231
|
sheet may span multiple printed pages and multi-sheet workbooks
|
|
162
232
|
paginate their sheets in order. For PDF inputs it is the PDF page
|
|
163
233
|
number directly.
|
|
@@ -5,29 +5,25 @@ operation:
|
|
|
5
5
|
availability: planned
|
|
6
6
|
description: |
|
|
7
7
|
Render a text overlay onto a base video using bundled Liberation
|
|
8
|
-
Sans (SIL OFL)
|
|
9
|
-
|
|
10
|
-
Per ADR-0013.
|
|
8
|
+
Sans (SIL OFL). Single-input — the text and its styling come from
|
|
9
|
+
options, not from a file input.
|
|
11
10
|
|
|
12
11
|
**Dedicated operation, not an extension of `text_watermark`.**
|
|
13
|
-
`text_watermark` renders onto images (single-pass
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
Different runtime, different deploy unit.
|
|
12
|
+
`text_watermark` renders onto images (single-pass); per-frame video
|
|
13
|
+
text rendering requires a re-encode (overlay = pixel modification,
|
|
14
|
+
no stream-copy escape). Different runtime.
|
|
17
15
|
|
|
18
16
|
**Audio passthrough.** The base video's audio stream is preserved
|
|
19
|
-
unchanged
|
|
20
|
-
|
|
17
|
+
unchanged (stream-copied) — the watermark applies to the visual
|
|
18
|
+
track only.
|
|
21
19
|
|
|
22
20
|
Two rendering modes (mirrors `text_watermark`):
|
|
23
21
|
- `single`: one label rendered at the anchor + margin position.
|
|
24
22
|
- `tiled`: text tiled across the source frames at the rotation
|
|
25
23
|
angle.
|
|
26
24
|
|
|
27
|
-
`availability: planned` until the cross-repo
|
|
28
|
-
dispatch returns `feature_not_available` (422) until then.
|
|
29
|
-
ADR-0013 + lambdas pre-launch epic Wave A (ticket
|
|
30
|
-
[`4NrRPCgh`](https://trello.com/c/4NrRPCgh)).
|
|
25
|
+
`availability: planned` until the cross-repo backend support ships;
|
|
26
|
+
dispatch returns `feature_not_available` (422) until then.
|
|
31
27
|
default: false
|
|
32
28
|
input_model: single
|
|
33
29
|
sole_op: true # bypasses V1 chain validation — must be the only operation in its job (ADR-0025)
|
|
@@ -5,37 +5,33 @@ operation:
|
|
|
5
5
|
availability: beta
|
|
6
6
|
description: |
|
|
7
7
|
Apply an image overlay onto a base video
|
|
8
|
-
asset
|
|
8
|
+
asset. Multi-input role-based:
|
|
9
9
|
exactly one input with `role: base` (the source video) + exactly
|
|
10
10
|
one with `role: overlay` (the watermark image). Each input is a
|
|
11
|
-
|
|
11
|
+
a multi-input source — an external_import handle, a vault connection,
|
|
12
12
|
or an upstream `job_output` (uploads are NOT referenced directly
|
|
13
13
|
inside inputs[]). To use an uploaded base or overlay, feed it through
|
|
14
14
|
a `passthrough` source job and reference it via `{ type: job_output,
|
|
15
15
|
from: <id> }` (per ticket 4som89Uh).
|
|
16
16
|
|
|
17
17
|
**Dedicated operation, not an extension of `image_watermark`.**
|
|
18
|
-
`image_watermark`
|
|
19
|
-
|
|
20
|
-
overlay filter + re-encode + a different deploy unit (no
|
|
21
|
-
stream-copy escape — overlay = pixel modification). Per ADR-0013.
|
|
18
|
+
`image_watermark` handles image-on-image overlay only.
|
|
19
|
+
`video_watermark` requires an overlay + re-encode (no stream-copy escape — overlay = pixel modification).
|
|
22
20
|
|
|
23
21
|
**Audio passthrough.** The base video's audio stream is preserved
|
|
24
|
-
unchanged
|
|
25
|
-
|
|
22
|
+
unchanged (stream-copied) — the watermark applies to the visual
|
|
23
|
+
track only.
|
|
26
24
|
|
|
27
25
|
Activated to `availability: beta` (Wave A, ticket
|
|
28
|
-
[`c3uthIP4`](https://trello.com/c/c3uthIP4)): the cross-repo
|
|
29
|
-
|
|
26
|
+
[`c3uthIP4`](https://trello.com/c/c3uthIP4)): the cross-repo backend
|
|
27
|
+
is live (API accepts + publishes via the operations SNS
|
|
30
28
|
topic), so the operation and its `short_form` processing class are
|
|
31
29
|
shape-stable + opt-in and MUST NOT return `feature_not_available`.
|
|
32
|
-
`long_form` stays `planned` (
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
pre-launch epic Wave A (ticket
|
|
38
|
-
[`SlluxMBN`'s sibling `4NrRPCgh`](https://trello.com/c/4NrRPCgh)).
|
|
30
|
+
`long_form` stays `planned` (its long-form path is not yet
|
|
31
|
+
provisioned) and the `multi_overlay_stack` feature stays `planned`
|
|
32
|
+
(backend support unconfirmed); requesting those planned sub-features
|
|
33
|
+
DOES still return `feature_not_available` until they are separately
|
|
34
|
+
activated.
|
|
39
35
|
default: false
|
|
40
36
|
input_model: multi
|
|
41
37
|
sole_op: true # bypasses V1 chain validation — must be the only operation in its job (ADR-0025)
|
|
@@ -55,10 +51,9 @@ operation:
|
|
|
55
51
|
availability: planned
|
|
56
52
|
description: |
|
|
57
53
|
Allow up to 8 overlay inputs per job (currently capped at 1
|
|
58
|
-
overlay). Per-overlay placement via
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
`image_watermark`.
|
|
54
|
+
overlay). Per-overlay placement via per-input placement options.
|
|
55
|
+
Backend support not yet confirmed; tagged planned. Mirrors
|
|
56
|
+
the same-named feature on `image_watermark`.
|
|
62
57
|
|
|
63
58
|
mime_groups:
|
|
64
59
|
video:
|