@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.
- package/asyncapi/events.yaml +1777 -172
- package/availability/availability.json +2449 -0
- package/dist/asyncapi/Failure.d.ts +25 -0
- package/dist/asyncapi/Failure.js +1 -0
- package/dist/asyncapi/JobInputRole.d.ts +6 -0
- package/dist/asyncapi/JobInputRole.js +7 -0
- package/dist/asyncapi/MergeOutputType.d.ts +1 -3
- package/dist/asyncapi/MergeOutputType.js +0 -2
- package/dist/asyncapi/MultiOutputCompletion.d.ts +25 -0
- package/dist/asyncapi/MultiOutputCompletion.js +1 -0
- package/dist/asyncapi/NotificationsOperationsQueue.d.ts +4 -2
- package/dist/asyncapi/OperationMetrics.d.ts +3 -0
- package/dist/asyncapi/OperationProgress.d.ts +2 -0
- package/dist/asyncapi/OperationResult.d.ts +4 -19
- package/dist/asyncapi/OperationType.d.ts +6 -6
- package/dist/asyncapi/OperationType.js +5 -5
- package/dist/asyncapi/PageIndexed.d.ts +8 -0
- package/dist/asyncapi/PageIndexed.js +1 -0
- package/dist/asyncapi/PositionIndexed.d.ts +8 -0
- package/dist/asyncapi/PositionIndexed.js +1 -0
- package/dist/asyncapi/ProgressStatus.d.ts +3 -0
- package/dist/asyncapi/ProgressStatus.js +3 -0
- package/dist/asyncapi/ReEncodeDecision.d.ts +5 -0
- package/dist/asyncapi/ReEncodeDecision.js +6 -0
- package/dist/asyncapi/SingleOutputCompletion.d.ts +25 -0
- package/dist/asyncapi/SingleOutputCompletion.js +1 -0
- package/dist/asyncapi/SourceEntry.d.ts +2 -1
- package/dist/asyncapi/Unindexed.d.ts +8 -0
- package/dist/asyncapi/Unindexed.js +1 -0
- package/dist/asyncapi/UploadProbeCompletion.d.ts +16 -0
- package/dist/asyncapi/UploadProbeCompletion.js +1 -0
- package/dist/asyncapi/UploadProbeMediaMetadata.d.ts +18 -0
- package/dist/asyncapi/UploadProbeMediaMetadata.js +1 -0
- package/dist/asyncapi/UploadProbeProcessingClass.d.ts +6 -0
- package/dist/asyncapi/UploadProbeProcessingClass.js +7 -0
- package/dist/asyncapi/UploadProbeRequest.d.ts +10 -0
- package/dist/asyncapi/UploadProbeRequest.js +1 -0
- package/dist/asyncapi/UploadProbeStatus.d.ts +7 -0
- package/dist/asyncapi/UploadProbeStatus.js +8 -0
- package/dist/asyncapi/index.d.ts +13 -0
- package/dist/asyncapi/index.js +4 -0
- package/dist/openapi/models/AudioWatermarkDecodeRequest.d.ts +64 -0
- package/dist/openapi/models/AudioWatermarkDecodeRequest.js +53 -0
- package/dist/openapi/models/AudioWatermarkDecodeResponse.d.ts +80 -0
- package/dist/openapi/models/AudioWatermarkDecodeResponse.js +64 -0
- package/dist/openapi/models/AuthErrorResponse.d.ts +135 -0
- package/dist/openapi/models/AuthErrorResponse.js +66 -0
- package/dist/openapi/models/AuthErrorType.d.ts +73 -0
- package/dist/openapi/models/AuthErrorType.js +91 -0
- package/dist/openapi/models/AvailabilityValue.d.ts +43 -0
- package/dist/openapi/models/AvailabilityValue.js +61 -0
- package/dist/openapi/models/BalanceExhaustedResponse.d.ts +176 -0
- package/dist/openapi/models/BalanceExhaustedResponse.js +86 -0
- package/dist/openapi/models/BalanceExhaustedResponseAllOfLinks.d.ts +38 -0
- package/dist/openapi/models/BalanceExhaustedResponseAllOfLinks.js +43 -0
- package/dist/openapi/models/CallbackEventType.d.ts +2 -2
- package/dist/openapi/models/CallbackEventType.js +2 -2
- package/dist/openapi/models/ConnectionSource.d.ts +64 -0
- package/dist/openapi/models/ConnectionSource.js +57 -0
- package/dist/openapi/models/ContactRequest.d.ts +2 -2
- package/dist/openapi/models/ContactRequest.js +2 -2
- package/dist/openapi/models/ContactSubject.d.ts +2 -2
- package/dist/openapi/models/ContactSubject.js +2 -2
- package/dist/openapi/models/ContactValidationErrorResponse.d.ts +2 -2
- package/dist/openapi/models/ContactValidationErrorResponse.js +2 -2
- package/dist/openapi/models/CreateExternalImport403Response.d.ts +24 -0
- package/dist/openapi/models/CreateExternalImport403Response.js +58 -0
- package/dist/openapi/models/CreateExternalImport422Response.d.ts +23 -0
- package/dist/openapi/models/CreateExternalImport422Response.js +51 -0
- package/dist/openapi/models/CreateWorkflow422Response.d.ts +24 -0
- package/dist/openapi/models/CreateWorkflow422Response.js +58 -0
- package/dist/openapi/models/CreditTransaction.d.ts +186 -0
- package/dist/openapi/models/CreditTransaction.js +100 -0
- package/dist/openapi/models/CreditTransactionSourceBucket.d.ts +46 -0
- package/dist/openapi/models/CreditTransactionSourceBucket.js +64 -0
- package/dist/openapi/models/CreditsBalanceResponse.d.ts +84 -0
- package/dist/openapi/models/CreditsBalanceResponse.js +68 -0
- package/dist/openapi/models/CreditsBalanceSuccessEnvelope.d.ts +46 -0
- package/dist/openapi/models/CreditsBalanceSuccessEnvelope.js +54 -0
- package/dist/openapi/models/CreditsUsageResponse.d.ts +51 -0
- package/dist/openapi/models/CreditsUsageResponse.js +56 -0
- package/dist/openapi/models/CreditsUsageSuccessEnvelope.d.ts +46 -0
- package/dist/openapi/models/CreditsUsageSuccessEnvelope.js +54 -0
- package/dist/openapi/models/Delivery.d.ts +98 -0
- package/dist/openapi/models/Delivery.js +65 -0
- package/dist/openapi/models/DeliveryOutputRef.d.ts +44 -0
- package/dist/openapi/models/DeliveryOutputRef.js +45 -0
- package/dist/openapi/models/DeliveryPlan.d.ts +77 -0
- package/dist/openapi/models/DeliveryPlan.js +72 -0
- package/dist/openapi/models/DeliveryPlanOutput.d.ts +53 -0
- package/dist/openapi/models/DeliveryPlanOutput.js +52 -0
- package/dist/openapi/models/DeliveryPlanReason.d.ts +35 -0
- package/dist/openapi/models/DeliveryPlanReason.js +53 -0
- package/dist/openapi/models/DeliverySelection.d.ts +62 -0
- package/dist/openapi/models/DeliverySelection.js +54 -0
- package/dist/openapi/models/ErrorEnvelope.d.ts +102 -5
- package/dist/openapi/models/ErrorEnvelope.js +10 -2
- package/dist/openapi/models/EstimateQuality.d.ts +34 -0
- package/dist/openapi/models/EstimateQuality.js +52 -0
- package/dist/openapi/models/EstimateRange.d.ts +48 -0
- package/dist/openapi/models/EstimateRange.js +51 -0
- package/dist/openapi/models/ExternalDestination.d.ts +41 -0
- package/dist/openapi/models/ExternalDestination.js +47 -0
- package/dist/openapi/models/ExternalImportCreatedResponse.d.ts +49 -0
- package/dist/openapi/models/ExternalImportCreatedResponse.js +51 -0
- package/dist/openapi/models/ExternalImportCreatedSuccessEnvelope.d.ts +46 -0
- package/dist/openapi/models/ExternalImportCreatedSuccessEnvelope.js +54 -0
- package/dist/openapi/models/ExternalImportRequest.d.ts +92 -0
- package/dist/openapi/models/ExternalImportRequest.js +61 -0
- package/dist/openapi/models/ExternalImportToken.d.ts +51 -0
- package/dist/openapi/models/ExternalImportToken.js +53 -0
- package/dist/openapi/models/ExternalSource.d.ts +31 -0
- package/dist/openapi/models/ExternalSource.js +47 -0
- package/dist/openapi/models/FeatureNotAvailableResponse.d.ts +163 -0
- package/dist/openapi/models/FeatureNotAvailableResponse.js +76 -0
- package/dist/openapi/models/FeatureTierRestrictedResponse.d.ts +154 -0
- package/dist/openapi/models/FeatureTierRestrictedResponse.js +76 -0
- package/dist/openapi/models/FeatureViolation.d.ts +108 -0
- package/dist/openapi/models/FeatureViolation.js +63 -0
- package/dist/openapi/models/JobDefinition.d.ts +125 -14
- package/dist/openapi/models/JobDefinition.js +25 -4
- package/dist/openapi/models/JobDownload.d.ts +2 -2
- package/dist/openapi/models/JobDownload.js +2 -2
- package/dist/openapi/models/JobInputV2.d.ts +89 -0
- package/dist/openapi/models/JobInputV2.js +56 -0
- package/dist/openapi/models/JobOutputSource.d.ts +57 -0
- package/dist/openapi/models/JobOutputSource.js +55 -0
- package/dist/openapi/models/JobResponse.d.ts +2 -2
- package/dist/openapi/models/JobResponse.js +2 -2
- package/dist/openapi/models/JobStatus.d.ts +17 -8
- package/dist/openapi/models/JobStatus.js +17 -8
- package/dist/openapi/models/JobType.d.ts +2 -2
- package/dist/openapi/models/JobType.js +2 -2
- package/dist/openapi/models/LivenessResponse.d.ts +2 -2
- package/dist/openapi/models/LivenessResponse.js +2 -2
- package/dist/openapi/models/LoginUser200Response.d.ts +46 -0
- package/dist/openapi/models/LoginUser200Response.js +54 -0
- package/dist/openapi/models/LoginUser200ResponseData.d.ts +33 -0
- package/dist/openapi/models/LoginUser200ResponseData.js +44 -0
- package/dist/openapi/models/LoginUser200ResponseDataUser.d.ts +50 -0
- package/dist/openapi/models/LoginUser200ResponseDataUser.js +51 -0
- package/dist/openapi/models/LoginUserRequest.d.ts +38 -0
- package/dist/openapi/models/LoginUserRequest.js +47 -0
- package/dist/openapi/models/LogoutUser200Response.d.ts +50 -0
- package/dist/openapi/models/LogoutUser200Response.js +53 -0
- package/dist/openapi/models/MetadataResponse.d.ts +13 -2
- package/dist/openapi/models/MetadataResponse.js +6 -2
- package/dist/openapi/models/MetadataResponseDimensions.d.ts +2 -2
- package/dist/openapi/models/MetadataResponseDimensions.js +2 -2
- package/dist/openapi/models/MetadataResponseExif.d.ts +2 -2
- package/dist/openapi/models/MetadataResponseExif.js +3 -3
- package/dist/openapi/models/MetadataResponseExifGps.d.ts +2 -2
- package/dist/openapi/models/MetadataResponseExifGps.js +2 -2
- package/dist/openapi/models/MetadataSuccessEnvelope.d.ts +3 -3
- package/dist/openapi/models/MetadataSuccessEnvelope.js +2 -2
- package/dist/openapi/models/MimeGroupSchema.d.ts +46 -2
- package/dist/openapi/models/MimeGroupSchema.js +11 -2
- package/dist/openapi/models/MultipartCompleteRequest.d.ts +3 -3
- package/dist/openapi/models/MultipartCompleteRequest.js +2 -2
- package/dist/openapi/models/MultipartCompleteRequestPartsInner.d.ts +2 -2
- package/dist/openapi/models/MultipartCompleteRequestPartsInner.js +2 -2
- package/dist/openapi/models/MultipartCompleteResponse.d.ts +7 -4
- package/dist/openapi/models/MultipartCompleteResponse.js +2 -2
- package/dist/openapi/models/MultipartCompleteSuccessEnvelope.d.ts +3 -3
- package/dist/openapi/models/MultipartCompleteSuccessEnvelope.js +2 -2
- package/dist/openapi/models/MultipartInitiateRequestMetadataHint.d.ts +56 -0
- package/dist/openapi/models/MultipartInitiateRequestMetadataHint.js +45 -0
- package/dist/openapi/models/MultipartInitiateResponse.d.ts +38 -6
- package/dist/openapi/models/MultipartInitiateResponse.js +7 -2
- package/dist/openapi/models/MultipartInitiateSuccessEnvelope.d.ts +3 -3
- package/dist/openapi/models/MultipartInitiateSuccessEnvelope.js +2 -2
- package/dist/openapi/models/MultipartKeepaliveResponse.d.ts +43 -0
- package/dist/openapi/models/MultipartKeepaliveResponse.js +47 -0
- package/dist/openapi/models/MultipartKeepaliveSuccessEnvelope.d.ts +46 -0
- package/dist/openapi/models/MultipartKeepaliveSuccessEnvelope.js +54 -0
- package/dist/openapi/models/MultipartPartListing.d.ts +59 -0
- package/dist/openapi/models/MultipartPartListing.js +55 -0
- package/dist/openapi/models/MultipartPresignRequest.d.ts +41 -0
- package/dist/openapi/models/MultipartPresignRequest.js +43 -0
- package/dist/openapi/models/MultipartPresignResponse.d.ts +46 -0
- package/dist/openapi/models/MultipartPresignResponse.js +48 -0
- package/dist/openapi/models/MultipartPresignSuccessEnvelope.d.ts +46 -0
- package/dist/openapi/models/MultipartPresignSuccessEnvelope.js +54 -0
- package/dist/openapi/models/MultipartStatusResponse.d.ts +103 -0
- package/dist/openapi/models/MultipartStatusResponse.js +76 -0
- package/dist/openapi/models/MultipartStatusSuccessEnvelope.d.ts +46 -0
- package/dist/openapi/models/MultipartStatusSuccessEnvelope.js +54 -0
- package/dist/openapi/models/OperationDefinition.d.ts +2 -2
- package/dist/openapi/models/OperationDefinition.js +2 -2
- package/dist/openapi/models/OperationDownload.d.ts +30 -2
- package/dist/openapi/models/OperationDownload.js +6 -2
- package/dist/openapi/models/OperationInputModel.d.ts +4 -4
- package/dist/openapi/models/OperationInputModel.js +4 -4
- package/dist/openapi/models/OperationResponse.d.ts +21 -2
- package/dist/openapi/models/OperationResponse.js +6 -2
- package/dist/openapi/models/OperationResult.d.ts +2 -2
- package/dist/openapi/models/OperationResult.js +2 -2
- package/dist/openapi/models/OperationResultMetrics.d.ts +2 -2
- package/dist/openapi/models/OperationResultMetrics.js +2 -2
- package/dist/openapi/models/OperationSchemaDefinition.d.ts +52 -5
- package/dist/openapi/models/OperationSchemaDefinition.js +10 -6
- package/dist/openapi/models/OperationStatus.d.ts +2 -2
- package/dist/openapi/models/OperationStatus.js +2 -2
- package/dist/openapi/models/OperationType.d.ts +17 -5
- package/dist/openapi/models/OperationType.js +18 -6
- package/dist/openapi/models/OperationsSchemaResponse.d.ts +70 -10
- package/dist/openapi/models/OperationsSchemaResponse.js +17 -2
- package/dist/openapi/models/OptionSchema.d.ts +42 -4
- package/dist/openapi/models/OptionSchema.js +12 -2
- package/dist/openapi/models/PerValueAvailabilityEntry.d.ts +80 -0
- package/dist/openapi/models/PerValueAvailabilityEntry.js +53 -0
- package/dist/openapi/models/PresignedUrlPart.d.ts +2 -2
- package/dist/openapi/models/PresignedUrlPart.js +3 -3
- package/dist/openapi/models/ProcessingClass.d.ts +35 -0
- package/dist/openapi/models/ProcessingClass.js +53 -0
- package/dist/openapi/models/ProcessingClassBandViolation.d.ts +149 -0
- package/dist/openapi/models/ProcessingClassBandViolation.js +81 -0
- package/dist/openapi/models/ProcessingClassExceedsBandResponse.d.ts +174 -0
- package/dist/openapi/models/ProcessingClassExceedsBandResponse.js +76 -0
- package/dist/openapi/models/ProcessingClassHint.d.ts +36 -0
- package/dist/openapi/models/ProcessingClassHint.js +54 -0
- package/dist/openapi/models/ProcessingClassReason.d.ts +46 -0
- package/dist/openapi/models/ProcessingClassReason.js +64 -0
- package/dist/openapi/models/ProcessingClassRejectReason.d.ts +53 -0
- package/dist/openapi/models/ProcessingClassRejectReason.js +71 -0
- package/dist/openapi/models/ProcessingPlan.d.ts +70 -0
- package/dist/openapi/models/ProcessingPlan.js +49 -0
- package/dist/openapi/models/ProcessingPlanJob.d.ts +81 -0
- package/dist/openapi/models/ProcessingPlanJob.js +71 -0
- package/dist/openapi/models/ReadinessResponse.d.ts +2 -2
- package/dist/openapi/models/ReadinessResponse.js +2 -2
- package/dist/openapi/models/ResponseEnvelope.d.ts +2 -2
- package/dist/openapi/models/ResponseEnvelope.js +2 -2
- package/dist/openapi/models/RetryResponse.d.ts +5 -5
- package/dist/openapi/models/RetryResponse.js +2 -2
- package/dist/openapi/models/RetrySuccessEnvelope.d.ts +3 -3
- package/dist/openapi/models/RetrySuccessEnvelope.js +2 -2
- package/dist/openapi/models/SseEventType.d.ts +2 -2
- package/dist/openapi/models/SseEventType.js +2 -2
- package/dist/openapi/models/SseJobCompletedData.d.ts +3 -3
- package/dist/openapi/models/SseJobCompletedData.js +2 -2
- package/dist/openapi/models/SseJobFailedData.d.ts +3 -3
- package/dist/openapi/models/SseJobFailedData.js +2 -2
- package/dist/openapi/models/SseOperationCompletedData.d.ts +4 -4
- package/dist/openapi/models/SseOperationCompletedData.js +2 -2
- package/dist/openapi/models/SseOperationFailedData.d.ts +3 -3
- package/dist/openapi/models/SseOperationFailedData.js +2 -2
- package/dist/openapi/models/SseOperationProgressData.d.ts +61 -3
- package/dist/openapi/models/SseOperationProgressData.js +22 -2
- package/dist/openapi/models/SseWorkflowTerminalData.d.ts +26 -4
- package/dist/openapi/models/SseWorkflowTerminalData.js +4 -2
- package/dist/openapi/models/TierRestrictionKind.d.ts +33 -0
- package/dist/openapi/models/TierRestrictionKind.js +51 -0
- package/dist/openapi/models/TierRestrictionResponse.d.ts +173 -0
- package/dist/openapi/models/TierRestrictionResponse.js +83 -0
- package/dist/openapi/models/UploadConstraintsApplied.d.ts +70 -0
- package/dist/openapi/models/UploadConstraintsApplied.js +57 -0
- package/dist/openapi/models/UploadDurationExceedsTierResponse.d.ts +155 -0
- package/dist/openapi/models/UploadDurationExceedsTierResponse.js +82 -0
- package/dist/openapi/models/UploadFile403Response.d.ts +27 -0
- package/dist/openapi/models/UploadFile403Response.js +47 -0
- package/dist/openapi/models/UploadFile422Response.d.ts +27 -0
- package/dist/openapi/models/UploadFile422Response.js +47 -0
- package/dist/openapi/models/UploadProbeMediaMetadata.d.ts +172 -0
- package/dist/openapi/models/UploadProbeMediaMetadata.js +69 -0
- package/dist/openapi/models/UploadProbeProcessingClass.d.ts +33 -0
- package/dist/openapi/models/UploadProbeProcessingClass.js +51 -0
- package/dist/openapi/models/UploadProbeResponse.d.ts +58 -0
- package/dist/openapi/models/UploadProbeResponse.js +58 -0
- package/dist/openapi/models/UploadProbeStatus.d.ts +41 -0
- package/dist/openapi/models/UploadProbeStatus.js +59 -0
- package/dist/openapi/models/UploadResponse.d.ts +17 -3
- package/dist/openapi/models/UploadResponse.js +7 -2
- package/dist/openapi/models/UploadSizeExceedsTierResponse.d.ts +155 -0
- package/dist/openapi/models/UploadSizeExceedsTierResponse.js +82 -0
- package/dist/openapi/models/UploadSource.d.ts +48 -0
- package/dist/openapi/models/UploadSource.js +53 -0
- package/dist/openapi/models/UploadSuccessEnvelope.d.ts +3 -3
- package/dist/openapi/models/UploadSuccessEnvelope.js +2 -2
- package/dist/openapi/models/UploadThresholds.d.ts +126 -0
- package/dist/openapi/models/UploadThresholds.js +79 -0
- package/dist/openapi/models/UserTier.d.ts +41 -0
- package/dist/openapi/models/UserTier.js +59 -0
- package/dist/openapi/models/ValidationErrorEnvelope.d.ts +51 -4
- package/dist/openapi/models/ValidationErrorEnvelope.js +10 -2
- package/dist/openapi/models/ValidationErrorEnvelopeDetailsInner.d.ts +37 -4
- package/dist/openapi/models/ValidationErrorEnvelopeDetailsInner.js +6 -2
- package/dist/openapi/models/WarningType.d.ts +48 -0
- package/dist/openapi/models/WarningType.js +66 -0
- package/dist/openapi/models/WebhookOperationContext.d.ts +3 -3
- package/dist/openapi/models/WebhookOperationContext.js +2 -2
- package/dist/openapi/models/WebhookPayload.d.ts +2 -2
- package/dist/openapi/models/WebhookPayload.js +3 -3
- package/dist/openapi/models/WorkflowCancelBillingEffect.d.ts +36 -0
- package/dist/openapi/models/WorkflowCancelBillingEffect.js +54 -0
- package/dist/openapi/models/WorkflowCancelResponse.d.ts +66 -0
- package/dist/openapi/models/WorkflowCancelResponse.js +62 -0
- package/dist/openapi/models/WorkflowCancelSuccessEnvelope.d.ts +46 -0
- package/dist/openapi/models/WorkflowCancelSuccessEnvelope.js +54 -0
- package/dist/openapi/models/WorkflowCreateRequest.d.ts +39 -5
- package/dist/openapi/models/WorkflowCreateRequest.js +11 -5
- package/dist/openapi/models/WorkflowCreateResponse.d.ts +63 -2
- package/dist/openapi/models/WorkflowCreateResponse.js +21 -2
- package/dist/openapi/models/WorkflowCreateSuccessEnvelope.d.ts +3 -3
- package/dist/openapi/models/WorkflowCreateSuccessEnvelope.js +2 -2
- package/dist/openapi/models/WorkflowDownloadResponse.d.ts +2 -2
- package/dist/openapi/models/WorkflowDownloadResponse.js +2 -2
- package/dist/openapi/models/WorkflowDownloadSuccessEnvelope.d.ts +3 -3
- package/dist/openapi/models/WorkflowDownloadSuccessEnvelope.js +2 -2
- package/dist/openapi/models/WorkflowEdge.d.ts +2 -2
- package/dist/openapi/models/WorkflowEdge.js +2 -2
- package/dist/openapi/models/WorkflowExpiredResponse.d.ts +145 -0
- package/dist/openapi/models/WorkflowExpiredResponse.js +75 -0
- package/dist/openapi/models/WorkflowPauseRequiredAction.d.ts +30 -0
- package/dist/openapi/models/WorkflowPauseRequiredAction.js +48 -0
- package/dist/openapi/models/WorkflowPausedDetail.d.ts +99 -0
- package/dist/openapi/models/WorkflowPausedDetail.js +65 -0
- package/dist/openapi/models/WorkflowPausedDetailLinks.d.ts +47 -0
- package/dist/openapi/models/WorkflowPausedDetailLinks.js +45 -0
- package/dist/openapi/models/WorkflowProcessing.d.ts +36 -0
- package/dist/openapi/models/WorkflowProcessing.js +42 -0
- package/dist/openapi/models/WorkflowResumeResponse.d.ts +55 -0
- package/dist/openapi/models/WorkflowResumeResponse.js +57 -0
- package/dist/openapi/models/WorkflowResumeSuccessEnvelope.d.ts +46 -0
- package/dist/openapi/models/WorkflowResumeSuccessEnvelope.js +54 -0
- package/dist/openapi/models/WorkflowSource.d.ts +40 -0
- package/dist/openapi/models/WorkflowSource.js +57 -0
- package/dist/openapi/models/WorkflowStatus.d.ts +31 -8
- package/dist/openapi/models/WorkflowStatus.js +32 -9
- package/dist/openapi/models/WorkflowStatusResponse.d.ts +34 -2
- package/dist/openapi/models/WorkflowStatusResponse.js +13 -2
- package/dist/openapi/models/WorkflowStatusSuccessEnvelope.d.ts +3 -3
- package/dist/openapi/models/WorkflowStatusSuccessEnvelope.js +2 -2
- package/dist/openapi/models/WorkflowWarning.d.ts +119 -0
- package/dist/openapi/models/WorkflowWarning.js +63 -0
- package/dist/openapi/models/WorkflowWarningSeverity.d.ts +29 -0
- package/dist/openapi/models/WorkflowWarningSeverity.js +47 -0
- package/dist/openapi/models/index.d.ts +87 -3
- package/dist/openapi/models/index.js +87 -3
- package/dist/openapi/runtime.d.ts +2 -2
- package/dist/openapi/runtime.js +17 -2
- package/dist/operations/archive.metadata.d.ts +2 -0
- package/dist/operations/archive.metadata.js +13 -0
- package/dist/operations/audio_overlay.d.ts +48 -0
- package/dist/operations/audio_overlay.js +19 -0
- package/dist/operations/audio_overlay.metadata.d.ts +2 -0
- package/dist/operations/audio_overlay.metadata.js +167 -0
- package/dist/operations/audio_watermark.d.ts +42 -0
- package/dist/operations/audio_watermark.js +37 -0
- package/dist/operations/audio_watermark.metadata.d.ts +2 -0
- package/dist/operations/audio_watermark.metadata.js +94 -0
- package/dist/operations/compress.metadata.d.ts +2 -0
- package/dist/operations/compress.metadata.js +205 -0
- package/dist/operations/convert.metadata.d.ts +2 -0
- package/dist/operations/convert.metadata.js +85 -0
- package/dist/operations/custom_luma.d.ts +7 -0
- package/dist/operations/custom_luma.js +2 -0
- package/dist/operations/custom_luma.metadata.d.ts +2 -0
- package/dist/operations/custom_luma.metadata.js +49 -0
- package/dist/operations/image_watermark.d.ts +54 -0
- package/dist/operations/image_watermark.js +37 -0
- package/dist/operations/image_watermark.metadata.d.ts +2 -0
- package/dist/operations/image_watermark.metadata.js +97 -0
- package/dist/operations/index.d.ts +16 -1
- package/dist/operations/index.js +16 -1
- package/dist/operations/merge.d.ts +111 -31
- package/dist/operations/merge.js +106 -20
- package/dist/operations/merge.metadata.d.ts +2 -0
- package/dist/operations/merge.metadata.js +385 -0
- package/dist/operations/metadata-types.d.ts +47 -0
- package/dist/operations/metadata-types.js +2 -0
- package/dist/operations/text_watermark.d.ts +31 -0
- package/dist/operations/text_watermark.js +22 -0
- package/dist/operations/text_watermark.metadata.d.ts +2 -0
- package/dist/operations/text_watermark.metadata.js +46 -0
- package/dist/operations/thumbnail.metadata.d.ts +2 -0
- package/dist/operations/thumbnail.metadata.js +88 -0
- package/openapi/api.yaml +6413 -821
- package/operations/schemas/audio_overlay.yaml +409 -0
- package/operations/schemas/audio_watermark.yaml +192 -0
- package/operations/schemas/compress.yaml +26 -3
- package/operations/schemas/convert.yaml +25 -3
- package/operations/schemas/custom_luma.yaml +116 -0
- package/operations/schemas/image_watermark.yaml +287 -0
- package/operations/schemas/merge.yaml +301 -66
- package/operations/schemas/text_watermark.yaml +147 -0
- package/operations/schemas/thumbnail.yaml +22 -0
- package/package.json +10 -4
- package/dist/openapi/models/ExportConfig.d.ts +0 -63
- package/dist/openapi/models/ExportConfig.js +0 -59
- package/dist/openapi/models/JobInput.d.ts +0 -53
- package/dist/openapi/models/JobInput.js +0 -47
- package/dist/openapi/models/JobSource.d.ts +0 -43
- package/dist/openapi/models/JobSource.js +0 -45
- package/dist/operations/watermark.d.ts +0 -28
- package/dist/operations/watermark.js +0 -19
- package/operations/schemas/watermark.yaml +0 -87
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* GISL Compression API
|
|
3
|
+
* REST API for the GISL (Give It Smaller) file compression and processing service. **Architecture:** - Upload files to get a `file_id` - Create workflows referencing uploaded files with operations (compress, thumbnail, image_watermark, text_watermark, merge, archive, convert, custom_luma, audio_overlay, audio_watermark) - Poll status, stream SSE events, or receive webhook callbacks - Download results per operation output **Response envelope:** All mutation and query endpoints return `{ success: true, data: {...} }` on success and `{ success: false, error: \"...\", details: [...] }` on failure. Exceptions: `GET /api/operations/schema` returns raw JSON (per-tier private caching with ETag/Last-Modified revalidation per ADR-0002 + I3), health probes return flat objects, and `POST /api/contact` returns 204 with no body. **Availability metadata.** This spec uses the `x-availability` vendor extension as **decorative documentation only**. Per [ADR-0001](../docs/decisions/0001-contract-first-availability.md) §1.5, the runtime endpoint `GET /api/operations/schema` (ticket I3) is the authoritative source; the sidecar `availability.json` (ticket I3b) is the authoritative companion (generated, never hand-edited; CI cross-checks runtime ⇄ sidecar). SDKs MUST NOT depend on `x-availability` reaching generated code — code-generators that surface vendor extensions may emit it as documentation, but consumers read availability from the runtime endpoint, not from the generated bindings. The 5-value vocabulary (`stable | beta | experimental | planned | deprecated`) is defined in the `AvailabilityValue` schema. See `schemas/FORMAT.md` §Availability Taxonomy for the operational rules (parser obligation: absent = stable; per-enum-value granularity is the `per_value_availability` primitive landed via ticket I17). **Localisation (per ticket [I26](https://trello.com/c/rcnqwgI4)).** Error responses + paused/blocked workflow statuses carry a localised human-readable `message` alongside a stable, never-localised `message_key`. Machine-readable fields (`error`, enum values, status codes) stay canonical English. - **Request:** `Accept-Language` header per RFC 9110 §12.5.4 (q-value negotiation supported). The server selects the best-match locale from its supported list; falls back to `en-GB` when no match. - **Response:** `Content-Language: <locale>` echo on every localised response; `Vary: Accept-Language` on every response (CDN/cache correctness — different `Accept-Language` requests produce different responses). - **Fallback locale:** `en-GB` (also the canonical locale for `message_key` translations and English `message` prose). - **SDK guidance:** switch on `error` (machine code) for typed error branches; surface `message_key` to client-side i18n catalogs (SDK companion work tracked at X19, cross-repo); display `message` for end-user UI; **never parse `message` for control flow** — it changes per locale. Carrier shape lives on `ErrorEnvelope` (envelope-level optional `message_key` + `message` + `locale` + `message_params`) and `ValidationErrorEnvelope` (also per-`details[]` entry). Existing 402 / 403 / 422 envelopes (`BalanceExhaustedResponse`, `FeatureNotAvailableResponse`, `FeatureTierRestrictedResponse`, `WorkflowPausedDetail`) inherit the convention. **Upload thresholds (per tickets [u0ar7Yye](https://trello.com/c/u0ar7Yye) + [58nBQLWQ](https://trello.com/c/58nBQLWQ)).** Canonical upload constants (single-shot cap, multipart chunk size, multipart concurrency default, multipart first-chunk size) live on the `UploadThresholds` schema with `const:`-pinned values. SDK generators emit these as typed binding constants so frontend / API / SDKs reference one source of truth instead of hardcoding magic numbers. A runtime `GET /api/uploads/limits` endpoint for dynamic discovery (per-tier / per-environment overrides) is a deferred follow-up.
|
|
4
|
+
*
|
|
5
|
+
* The version of the OpenAPI document: 2.12.0
|
|
6
|
+
*
|
|
7
|
+
*
|
|
8
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
9
|
+
* https://openapi-generator.tech
|
|
10
|
+
* Do not edit the class manually.
|
|
11
|
+
*/
|
|
12
|
+
/**
|
|
13
|
+
* 200 response from `POST /api/audio-watermark/decode`. Per
|
|
14
|
+
* ticket [I20](https://trello.com/c/omiCq7Vn).
|
|
15
|
+
*
|
|
16
|
+
* @export
|
|
17
|
+
* @interface AudioWatermarkDecodeResponse
|
|
18
|
+
*/
|
|
19
|
+
export interface AudioWatermarkDecodeResponse {
|
|
20
|
+
/**
|
|
21
|
+
* The `watermark_id` of the detected watermark — either the
|
|
22
|
+
* UUID-v7 the server generated at embed time (when the
|
|
23
|
+
* caller did not supply a `payload`), or the
|
|
24
|
+
* server-assigned ID for caller-supplied payloads.
|
|
25
|
+
*
|
|
26
|
+
* @type {string}
|
|
27
|
+
* @memberof AudioWatermarkDecodeResponse
|
|
28
|
+
*/
|
|
29
|
+
watermarkId: string;
|
|
30
|
+
/**
|
|
31
|
+
* Caller-supplied payload that was embedded at
|
|
32
|
+
* watermark-creation time, when present. Absent when the
|
|
33
|
+
* embed call did not specify a `payload` (server-generated
|
|
34
|
+
* `watermark_id` only). Max 256 characters.
|
|
35
|
+
*
|
|
36
|
+
* @type {string}
|
|
37
|
+
* @memberof AudioWatermarkDecodeResponse
|
|
38
|
+
*/
|
|
39
|
+
payload?: string;
|
|
40
|
+
/**
|
|
41
|
+
* Decoder confidence in the extracted watermark. Values
|
|
42
|
+
* below 0.6 indicate a noisy / partial detection; the
|
|
43
|
+
* caller should treat such results as advisory.
|
|
44
|
+
*
|
|
45
|
+
* @type {number}
|
|
46
|
+
* @memberof AudioWatermarkDecodeResponse
|
|
47
|
+
*/
|
|
48
|
+
confidence: number;
|
|
49
|
+
/**
|
|
50
|
+
* Method that successfully extracted the watermark. (The
|
|
51
|
+
* `auto` value is request-side only; the response always
|
|
52
|
+
* reports the concrete method used.)
|
|
53
|
+
*
|
|
54
|
+
* @type {AudioWatermarkDecodeResponseMethodEnum}
|
|
55
|
+
* @memberof AudioWatermarkDecodeResponse
|
|
56
|
+
*/
|
|
57
|
+
method: AudioWatermarkDecodeResponseMethodEnum;
|
|
58
|
+
/**
|
|
59
|
+
* ISO-8601 timestamp at which the decode call ran.
|
|
60
|
+
* @type {Date}
|
|
61
|
+
* @memberof AudioWatermarkDecodeResponse
|
|
62
|
+
*/
|
|
63
|
+
detectedAt: Date;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* @export
|
|
67
|
+
*/
|
|
68
|
+
export declare const AudioWatermarkDecodeResponseMethodEnum: {
|
|
69
|
+
readonly psychoacoustic: "psychoacoustic";
|
|
70
|
+
readonly neural: "neural";
|
|
71
|
+
};
|
|
72
|
+
export type AudioWatermarkDecodeResponseMethodEnum = typeof AudioWatermarkDecodeResponseMethodEnum[keyof typeof AudioWatermarkDecodeResponseMethodEnum];
|
|
73
|
+
/**
|
|
74
|
+
* Check if a given object implements the AudioWatermarkDecodeResponse interface.
|
|
75
|
+
*/
|
|
76
|
+
export declare function instanceOfAudioWatermarkDecodeResponse(value: object): value is AudioWatermarkDecodeResponse;
|
|
77
|
+
export declare function AudioWatermarkDecodeResponseFromJSON(json: any): AudioWatermarkDecodeResponse;
|
|
78
|
+
export declare function AudioWatermarkDecodeResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): AudioWatermarkDecodeResponse;
|
|
79
|
+
export declare function AudioWatermarkDecodeResponseToJSON(json: any): AudioWatermarkDecodeResponse;
|
|
80
|
+
export declare function AudioWatermarkDecodeResponseToJSONTyped(value?: AudioWatermarkDecodeResponse | null, ignoreDiscriminator?: boolean): any;
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/* tslint:disable */
|
|
2
|
+
/* eslint-disable */
|
|
3
|
+
/**
|
|
4
|
+
* GISL Compression API
|
|
5
|
+
* REST API for the GISL (Give It Smaller) file compression and processing service. **Architecture:** - Upload files to get a `file_id` - Create workflows referencing uploaded files with operations (compress, thumbnail, image_watermark, text_watermark, merge, archive, convert, custom_luma, audio_overlay, audio_watermark) - Poll status, stream SSE events, or receive webhook callbacks - Download results per operation output **Response envelope:** All mutation and query endpoints return `{ success: true, data: {...} }` on success and `{ success: false, error: \"...\", details: [...] }` on failure. Exceptions: `GET /api/operations/schema` returns raw JSON (per-tier private caching with ETag/Last-Modified revalidation per ADR-0002 + I3), health probes return flat objects, and `POST /api/contact` returns 204 with no body. **Availability metadata.** This spec uses the `x-availability` vendor extension as **decorative documentation only**. Per [ADR-0001](../docs/decisions/0001-contract-first-availability.md) §1.5, the runtime endpoint `GET /api/operations/schema` (ticket I3) is the authoritative source; the sidecar `availability.json` (ticket I3b) is the authoritative companion (generated, never hand-edited; CI cross-checks runtime ⇄ sidecar). SDKs MUST NOT depend on `x-availability` reaching generated code — code-generators that surface vendor extensions may emit it as documentation, but consumers read availability from the runtime endpoint, not from the generated bindings. The 5-value vocabulary (`stable | beta | experimental | planned | deprecated`) is defined in the `AvailabilityValue` schema. See `schemas/FORMAT.md` §Availability Taxonomy for the operational rules (parser obligation: absent = stable; per-enum-value granularity is the `per_value_availability` primitive landed via ticket I17). **Localisation (per ticket [I26](https://trello.com/c/rcnqwgI4)).** Error responses + paused/blocked workflow statuses carry a localised human-readable `message` alongside a stable, never-localised `message_key`. Machine-readable fields (`error`, enum values, status codes) stay canonical English. - **Request:** `Accept-Language` header per RFC 9110 §12.5.4 (q-value negotiation supported). The server selects the best-match locale from its supported list; falls back to `en-GB` when no match. - **Response:** `Content-Language: <locale>` echo on every localised response; `Vary: Accept-Language` on every response (CDN/cache correctness — different `Accept-Language` requests produce different responses). - **Fallback locale:** `en-GB` (also the canonical locale for `message_key` translations and English `message` prose). - **SDK guidance:** switch on `error` (machine code) for typed error branches; surface `message_key` to client-side i18n catalogs (SDK companion work tracked at X19, cross-repo); display `message` for end-user UI; **never parse `message` for control flow** — it changes per locale. Carrier shape lives on `ErrorEnvelope` (envelope-level optional `message_key` + `message` + `locale` + `message_params`) and `ValidationErrorEnvelope` (also per-`details[]` entry). Existing 402 / 403 / 422 envelopes (`BalanceExhaustedResponse`, `FeatureNotAvailableResponse`, `FeatureTierRestrictedResponse`, `WorkflowPausedDetail`) inherit the convention. **Upload thresholds (per tickets [u0ar7Yye](https://trello.com/c/u0ar7Yye) + [58nBQLWQ](https://trello.com/c/58nBQLWQ)).** Canonical upload constants (single-shot cap, multipart chunk size, multipart concurrency default, multipart first-chunk size) live on the `UploadThresholds` schema with `const:`-pinned values. SDK generators emit these as typed binding constants so frontend / API / SDKs reference one source of truth instead of hardcoding magic numbers. A runtime `GET /api/uploads/limits` endpoint for dynamic discovery (per-tier / per-environment overrides) is a deferred follow-up.
|
|
6
|
+
*
|
|
7
|
+
* The version of the OpenAPI document: 2.12.0
|
|
8
|
+
*
|
|
9
|
+
*
|
|
10
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
11
|
+
* https://openapi-generator.tech
|
|
12
|
+
* Do not edit the class manually.
|
|
13
|
+
*/
|
|
14
|
+
/**
|
|
15
|
+
* @export
|
|
16
|
+
*/
|
|
17
|
+
export const AudioWatermarkDecodeResponseMethodEnum = {
|
|
18
|
+
psychoacoustic: 'psychoacoustic',
|
|
19
|
+
neural: 'neural'
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* Check if a given object implements the AudioWatermarkDecodeResponse interface.
|
|
23
|
+
*/
|
|
24
|
+
export function instanceOfAudioWatermarkDecodeResponse(value) {
|
|
25
|
+
if (!('watermarkId' in value) || value['watermarkId'] === undefined)
|
|
26
|
+
return false;
|
|
27
|
+
if (!('confidence' in value) || value['confidence'] === undefined)
|
|
28
|
+
return false;
|
|
29
|
+
if (!('method' in value) || value['method'] === undefined)
|
|
30
|
+
return false;
|
|
31
|
+
if (!('detectedAt' in value) || value['detectedAt'] === undefined)
|
|
32
|
+
return false;
|
|
33
|
+
return true;
|
|
34
|
+
}
|
|
35
|
+
export function AudioWatermarkDecodeResponseFromJSON(json) {
|
|
36
|
+
return AudioWatermarkDecodeResponseFromJSONTyped(json, false);
|
|
37
|
+
}
|
|
38
|
+
export function AudioWatermarkDecodeResponseFromJSONTyped(json, ignoreDiscriminator) {
|
|
39
|
+
if (json == null) {
|
|
40
|
+
return json;
|
|
41
|
+
}
|
|
42
|
+
return {
|
|
43
|
+
'watermarkId': json['watermark_id'],
|
|
44
|
+
'payload': json['payload'] == null ? undefined : json['payload'],
|
|
45
|
+
'confidence': json['confidence'],
|
|
46
|
+
'method': json['method'],
|
|
47
|
+
'detectedAt': (new Date(json['detected_at'])),
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
export function AudioWatermarkDecodeResponseToJSON(json) {
|
|
51
|
+
return AudioWatermarkDecodeResponseToJSONTyped(json, false);
|
|
52
|
+
}
|
|
53
|
+
export function AudioWatermarkDecodeResponseToJSONTyped(value, ignoreDiscriminator = false) {
|
|
54
|
+
if (value == null) {
|
|
55
|
+
return value;
|
|
56
|
+
}
|
|
57
|
+
return {
|
|
58
|
+
'watermark_id': value['watermarkId'],
|
|
59
|
+
'payload': value['payload'],
|
|
60
|
+
'confidence': value['confidence'],
|
|
61
|
+
'method': value['method'],
|
|
62
|
+
'detected_at': value['detectedAt'].toISOString(),
|
|
63
|
+
};
|
|
64
|
+
}
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* GISL Compression API
|
|
3
|
+
* REST API for the GISL (Give It Smaller) file compression and processing service. **Architecture:** - Upload files to get a `file_id` - Create workflows referencing uploaded files with operations (compress, thumbnail, image_watermark, text_watermark, merge, archive, convert, custom_luma, audio_overlay, audio_watermark) - Poll status, stream SSE events, or receive webhook callbacks - Download results per operation output **Response envelope:** All mutation and query endpoints return `{ success: true, data: {...} }` on success and `{ success: false, error: \"...\", details: [...] }` on failure. Exceptions: `GET /api/operations/schema` returns raw JSON (per-tier private caching with ETag/Last-Modified revalidation per ADR-0002 + I3), health probes return flat objects, and `POST /api/contact` returns 204 with no body. **Availability metadata.** This spec uses the `x-availability` vendor extension as **decorative documentation only**. Per [ADR-0001](../docs/decisions/0001-contract-first-availability.md) §1.5, the runtime endpoint `GET /api/operations/schema` (ticket I3) is the authoritative source; the sidecar `availability.json` (ticket I3b) is the authoritative companion (generated, never hand-edited; CI cross-checks runtime ⇄ sidecar). SDKs MUST NOT depend on `x-availability` reaching generated code — code-generators that surface vendor extensions may emit it as documentation, but consumers read availability from the runtime endpoint, not from the generated bindings. The 5-value vocabulary (`stable | beta | experimental | planned | deprecated`) is defined in the `AvailabilityValue` schema. See `schemas/FORMAT.md` §Availability Taxonomy for the operational rules (parser obligation: absent = stable; per-enum-value granularity is the `per_value_availability` primitive landed via ticket I17). **Localisation (per ticket [I26](https://trello.com/c/rcnqwgI4)).** Error responses + paused/blocked workflow statuses carry a localised human-readable `message` alongside a stable, never-localised `message_key`. Machine-readable fields (`error`, enum values, status codes) stay canonical English. - **Request:** `Accept-Language` header per RFC 9110 §12.5.4 (q-value negotiation supported). The server selects the best-match locale from its supported list; falls back to `en-GB` when no match. - **Response:** `Content-Language: <locale>` echo on every localised response; `Vary: Accept-Language` on every response (CDN/cache correctness — different `Accept-Language` requests produce different responses). - **Fallback locale:** `en-GB` (also the canonical locale for `message_key` translations and English `message` prose). - **SDK guidance:** switch on `error` (machine code) for typed error branches; surface `message_key` to client-side i18n catalogs (SDK companion work tracked at X19, cross-repo); display `message` for end-user UI; **never parse `message` for control flow** — it changes per locale. Carrier shape lives on `ErrorEnvelope` (envelope-level optional `message_key` + `message` + `locale` + `message_params`) and `ValidationErrorEnvelope` (also per-`details[]` entry). Existing 402 / 403 / 422 envelopes (`BalanceExhaustedResponse`, `FeatureNotAvailableResponse`, `FeatureTierRestrictedResponse`, `WorkflowPausedDetail`) inherit the convention. **Upload thresholds (per tickets [u0ar7Yye](https://trello.com/c/u0ar7Yye) + [58nBQLWQ](https://trello.com/c/58nBQLWQ)).** Canonical upload constants (single-shot cap, multipart chunk size, multipart concurrency default, multipart first-chunk size) live on the `UploadThresholds` schema with `const:`-pinned values. SDK generators emit these as typed binding constants so frontend / API / SDKs reference one source of truth instead of hardcoding magic numbers. A runtime `GET /api/uploads/limits` endpoint for dynamic discovery (per-tier / per-environment overrides) is a deferred follow-up.
|
|
4
|
+
*
|
|
5
|
+
* The version of the OpenAPI document: 2.12.0
|
|
6
|
+
*
|
|
7
|
+
*
|
|
8
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
9
|
+
* https://openapi-generator.tech
|
|
10
|
+
* Do not edit the class manually.
|
|
11
|
+
*/
|
|
12
|
+
import type { AuthErrorType } from './AuthErrorType.js';
|
|
13
|
+
/**
|
|
14
|
+
* Error response for auth HTTP failures. Extends `ErrorEnvelope` via
|
|
15
|
+
* `allOf` with an `error_type` discriminator. This is the first
|
|
16
|
+
* `allOf`-based envelope extension in this spec — subsequent auth-related
|
|
17
|
+
* error envelopes should follow the same pattern rather than redefining
|
|
18
|
+
* a parallel flat shape.
|
|
19
|
+
*
|
|
20
|
+
* @export
|
|
21
|
+
* @interface AuthErrorResponse
|
|
22
|
+
*/
|
|
23
|
+
export interface AuthErrorResponse {
|
|
24
|
+
/**
|
|
25
|
+
*
|
|
26
|
+
* @type {AuthErrorResponseSuccessEnum}
|
|
27
|
+
* @memberof AuthErrorResponse
|
|
28
|
+
*/
|
|
29
|
+
success: AuthErrorResponseSuccessEnum;
|
|
30
|
+
/**
|
|
31
|
+
* Stable, machine-readable error code (e.g.
|
|
32
|
+
* `INVALID_OPTIONS`, `BALANCE_EXHAUSTED`,
|
|
33
|
+
* `REQUIRES_REENCODE`). Canonical English; never localised.
|
|
34
|
+
* SDKs duck-type on this field for typed error-branch
|
|
35
|
+
* helpers.
|
|
36
|
+
*
|
|
37
|
+
* Multipart-session resume codes (per ticket
|
|
38
|
+
* [`HxUmVr3Y`](https://trello.com/c/HxUmVr3Y), V2.10.0):
|
|
39
|
+
* - `MULTIPART_SESSION_NOT_FOUND` (404) — upload_id does
|
|
40
|
+
* not match an in-flight session (expired / never
|
|
41
|
+
* existed / wrong account namespace). Fired by /status,
|
|
42
|
+
* /presign, /keepalive.
|
|
43
|
+
* - `MULTIPART_SESSION_OWNERSHIP` (403) — authenticated
|
|
44
|
+
* caller is not the session owner. Fired by /status,
|
|
45
|
+
* /presign, /keepalive, /complete (when manifest.userId
|
|
46
|
+
* is non-null and differs).
|
|
47
|
+
* - `MULTIPART_SESSION_AUTH_REQUIRED` (403) — session was
|
|
48
|
+
* anonymously initiated; the three resume endpoints
|
|
49
|
+
* require authentication. The `8LABloaz` follow-up will
|
|
50
|
+
* flip `/initiate` to also require auth.
|
|
51
|
+
* - `FILE_TOO_LARGE_FOR_MULTIPART` (422) — assembled object
|
|
52
|
+
* would exceed the S3 multipart capacity cap. Pre-S3
|
|
53
|
+
* server-side capacity gate; distinct from tier-quota
|
|
54
|
+
* rejections (`upload_size_exceeds_tier`).
|
|
55
|
+
*
|
|
56
|
+
* @type {string}
|
|
57
|
+
* @memberof AuthErrorResponse
|
|
58
|
+
*/
|
|
59
|
+
error: string;
|
|
60
|
+
/**
|
|
61
|
+
* Human-readable error message, localised per the
|
|
62
|
+
* request's `Accept-Language` header (fallback locale
|
|
63
|
+
* `en-GB`). The response carries `Content-Language:
|
|
64
|
+
* <locale>` + `Vary: Accept-Language` headers. **Never
|
|
65
|
+
* parse this field for control flow** — it changes per
|
|
66
|
+
* locale.
|
|
67
|
+
*
|
|
68
|
+
* @type {string}
|
|
69
|
+
* @memberof AuthErrorResponse
|
|
70
|
+
*/
|
|
71
|
+
message?: string;
|
|
72
|
+
/**
|
|
73
|
+
* Stable canonical lookup key for the message (e.g.
|
|
74
|
+
* `error.balance_exhausted.add_credits`,
|
|
75
|
+
* `error.upload_size_exceeds_tier`). Never localised. SDK +
|
|
76
|
+
* frontend translation layers gate on this for client-side
|
|
77
|
+
* i18n catalogs (per ticket X19, cross-repo SDK companion
|
|
78
|
+
* work). Stable across server message-prose updates.
|
|
79
|
+
*
|
|
80
|
+
* @type {string}
|
|
81
|
+
* @memberof AuthErrorResponse
|
|
82
|
+
*/
|
|
83
|
+
messageKey?: string;
|
|
84
|
+
/**
|
|
85
|
+
* BCP 47 locale tag echoing the resolved `Content-Language`
|
|
86
|
+
* response header value (e.g. `en-GB`, `pt-BR`, `ja-JP`).
|
|
87
|
+
* Lets the SDK confirm which locale the server selected
|
|
88
|
+
* when the request used q-value negotiation across multiple
|
|
89
|
+
* `Accept-Language` values.
|
|
90
|
+
*
|
|
91
|
+
* @type {string}
|
|
92
|
+
* @memberof AuthErrorResponse
|
|
93
|
+
*/
|
|
94
|
+
locale?: string;
|
|
95
|
+
/**
|
|
96
|
+
* Optional interpolation values for the localised
|
|
97
|
+
* `message`. Keys are stable parameter names referenced by
|
|
98
|
+
* the translation table (e.g.
|
|
99
|
+
* `{ "filename": "photo.heic", "max_size_mb": 100 }`).
|
|
100
|
+
* **Excludes cost / monetary numbers** per plan v5 §F11
|
|
101
|
+
* round-13 narrowing — pricing-related localisation reads
|
|
102
|
+
* numeric state from `GET /api/v2/credits/balance`, not
|
|
103
|
+
* from this field. Values are JSON-native scalars
|
|
104
|
+
* (`string` / `integer` / `number` / `boolean` / `null`)
|
|
105
|
+
* — no nested objects, to keep translation-table
|
|
106
|
+
* integration simple.
|
|
107
|
+
*
|
|
108
|
+
* @type {{ [key: string]: any; }}
|
|
109
|
+
* @memberof AuthErrorResponse
|
|
110
|
+
*/
|
|
111
|
+
messageParams?: {
|
|
112
|
+
[key: string]: any;
|
|
113
|
+
};
|
|
114
|
+
/**
|
|
115
|
+
*
|
|
116
|
+
* @type {AuthErrorType}
|
|
117
|
+
* @memberof AuthErrorResponse
|
|
118
|
+
*/
|
|
119
|
+
errorType: AuthErrorType;
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* @export
|
|
123
|
+
*/
|
|
124
|
+
export declare const AuthErrorResponseSuccessEnum: {
|
|
125
|
+
readonly false: false;
|
|
126
|
+
};
|
|
127
|
+
export type AuthErrorResponseSuccessEnum = typeof AuthErrorResponseSuccessEnum[keyof typeof AuthErrorResponseSuccessEnum];
|
|
128
|
+
/**
|
|
129
|
+
* Check if a given object implements the AuthErrorResponse interface.
|
|
130
|
+
*/
|
|
131
|
+
export declare function instanceOfAuthErrorResponse(value: object): value is AuthErrorResponse;
|
|
132
|
+
export declare function AuthErrorResponseFromJSON(json: any): AuthErrorResponse;
|
|
133
|
+
export declare function AuthErrorResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): AuthErrorResponse;
|
|
134
|
+
export declare function AuthErrorResponseToJSON(json: any): AuthErrorResponse;
|
|
135
|
+
export declare function AuthErrorResponseToJSONTyped(value?: AuthErrorResponse | null, ignoreDiscriminator?: boolean): any;
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
/* tslint:disable */
|
|
2
|
+
/* eslint-disable */
|
|
3
|
+
/**
|
|
4
|
+
* GISL Compression API
|
|
5
|
+
* REST API for the GISL (Give It Smaller) file compression and processing service. **Architecture:** - Upload files to get a `file_id` - Create workflows referencing uploaded files with operations (compress, thumbnail, image_watermark, text_watermark, merge, archive, convert, custom_luma, audio_overlay, audio_watermark) - Poll status, stream SSE events, or receive webhook callbacks - Download results per operation output **Response envelope:** All mutation and query endpoints return `{ success: true, data: {...} }` on success and `{ success: false, error: \"...\", details: [...] }` on failure. Exceptions: `GET /api/operations/schema` returns raw JSON (per-tier private caching with ETag/Last-Modified revalidation per ADR-0002 + I3), health probes return flat objects, and `POST /api/contact` returns 204 with no body. **Availability metadata.** This spec uses the `x-availability` vendor extension as **decorative documentation only**. Per [ADR-0001](../docs/decisions/0001-contract-first-availability.md) §1.5, the runtime endpoint `GET /api/operations/schema` (ticket I3) is the authoritative source; the sidecar `availability.json` (ticket I3b) is the authoritative companion (generated, never hand-edited; CI cross-checks runtime ⇄ sidecar). SDKs MUST NOT depend on `x-availability` reaching generated code — code-generators that surface vendor extensions may emit it as documentation, but consumers read availability from the runtime endpoint, not from the generated bindings. The 5-value vocabulary (`stable | beta | experimental | planned | deprecated`) is defined in the `AvailabilityValue` schema. See `schemas/FORMAT.md` §Availability Taxonomy for the operational rules (parser obligation: absent = stable; per-enum-value granularity is the `per_value_availability` primitive landed via ticket I17). **Localisation (per ticket [I26](https://trello.com/c/rcnqwgI4)).** Error responses + paused/blocked workflow statuses carry a localised human-readable `message` alongside a stable, never-localised `message_key`. Machine-readable fields (`error`, enum values, status codes) stay canonical English. - **Request:** `Accept-Language` header per RFC 9110 §12.5.4 (q-value negotiation supported). The server selects the best-match locale from its supported list; falls back to `en-GB` when no match. - **Response:** `Content-Language: <locale>` echo on every localised response; `Vary: Accept-Language` on every response (CDN/cache correctness — different `Accept-Language` requests produce different responses). - **Fallback locale:** `en-GB` (also the canonical locale for `message_key` translations and English `message` prose). - **SDK guidance:** switch on `error` (machine code) for typed error branches; surface `message_key` to client-side i18n catalogs (SDK companion work tracked at X19, cross-repo); display `message` for end-user UI; **never parse `message` for control flow** — it changes per locale. Carrier shape lives on `ErrorEnvelope` (envelope-level optional `message_key` + `message` + `locale` + `message_params`) and `ValidationErrorEnvelope` (also per-`details[]` entry). Existing 402 / 403 / 422 envelopes (`BalanceExhaustedResponse`, `FeatureNotAvailableResponse`, `FeatureTierRestrictedResponse`, `WorkflowPausedDetail`) inherit the convention. **Upload thresholds (per tickets [u0ar7Yye](https://trello.com/c/u0ar7Yye) + [58nBQLWQ](https://trello.com/c/58nBQLWQ)).** Canonical upload constants (single-shot cap, multipart chunk size, multipart concurrency default, multipart first-chunk size) live on the `UploadThresholds` schema with `const:`-pinned values. SDK generators emit these as typed binding constants so frontend / API / SDKs reference one source of truth instead of hardcoding magic numbers. A runtime `GET /api/uploads/limits` endpoint for dynamic discovery (per-tier / per-environment overrides) is a deferred follow-up.
|
|
6
|
+
*
|
|
7
|
+
* The version of the OpenAPI document: 2.12.0
|
|
8
|
+
*
|
|
9
|
+
*
|
|
10
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
11
|
+
* https://openapi-generator.tech
|
|
12
|
+
* Do not edit the class manually.
|
|
13
|
+
*/
|
|
14
|
+
import { AuthErrorTypeFromJSON, AuthErrorTypeToJSON, } from './AuthErrorType.js';
|
|
15
|
+
/**
|
|
16
|
+
* @export
|
|
17
|
+
*/
|
|
18
|
+
export const AuthErrorResponseSuccessEnum = {
|
|
19
|
+
false: false
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* Check if a given object implements the AuthErrorResponse interface.
|
|
23
|
+
*/
|
|
24
|
+
export function instanceOfAuthErrorResponse(value) {
|
|
25
|
+
if (!('success' in value) || value['success'] === undefined)
|
|
26
|
+
return false;
|
|
27
|
+
if (!('error' in value) || value['error'] === undefined)
|
|
28
|
+
return false;
|
|
29
|
+
if (!('errorType' in value) || value['errorType'] === undefined)
|
|
30
|
+
return false;
|
|
31
|
+
return true;
|
|
32
|
+
}
|
|
33
|
+
export function AuthErrorResponseFromJSON(json) {
|
|
34
|
+
return AuthErrorResponseFromJSONTyped(json, false);
|
|
35
|
+
}
|
|
36
|
+
export function AuthErrorResponseFromJSONTyped(json, ignoreDiscriminator) {
|
|
37
|
+
if (json == null) {
|
|
38
|
+
return json;
|
|
39
|
+
}
|
|
40
|
+
return {
|
|
41
|
+
'success': json['success'],
|
|
42
|
+
'error': json['error'],
|
|
43
|
+
'message': json['message'] == null ? undefined : json['message'],
|
|
44
|
+
'messageKey': json['message_key'] == null ? undefined : json['message_key'],
|
|
45
|
+
'locale': json['locale'] == null ? undefined : json['locale'],
|
|
46
|
+
'messageParams': json['message_params'] == null ? undefined : json['message_params'],
|
|
47
|
+
'errorType': AuthErrorTypeFromJSON(json['error_type']),
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
export function AuthErrorResponseToJSON(json) {
|
|
51
|
+
return AuthErrorResponseToJSONTyped(json, false);
|
|
52
|
+
}
|
|
53
|
+
export function AuthErrorResponseToJSONTyped(value, ignoreDiscriminator = false) {
|
|
54
|
+
if (value == null) {
|
|
55
|
+
return value;
|
|
56
|
+
}
|
|
57
|
+
return {
|
|
58
|
+
'success': value['success'],
|
|
59
|
+
'error': value['error'],
|
|
60
|
+
'message': value['message'],
|
|
61
|
+
'message_key': value['messageKey'],
|
|
62
|
+
'locale': value['locale'],
|
|
63
|
+
'message_params': value['messageParams'],
|
|
64
|
+
'error_type': AuthErrorTypeToJSON(value['errorType']),
|
|
65
|
+
};
|
|
66
|
+
}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* GISL Compression API
|
|
3
|
+
* REST API for the GISL (Give It Smaller) file compression and processing service. **Architecture:** - Upload files to get a `file_id` - Create workflows referencing uploaded files with operations (compress, thumbnail, image_watermark, text_watermark, merge, archive, convert, custom_luma, audio_overlay, audio_watermark) - Poll status, stream SSE events, or receive webhook callbacks - Download results per operation output **Response envelope:** All mutation and query endpoints return `{ success: true, data: {...} }` on success and `{ success: false, error: \"...\", details: [...] }` on failure. Exceptions: `GET /api/operations/schema` returns raw JSON (per-tier private caching with ETag/Last-Modified revalidation per ADR-0002 + I3), health probes return flat objects, and `POST /api/contact` returns 204 with no body. **Availability metadata.** This spec uses the `x-availability` vendor extension as **decorative documentation only**. Per [ADR-0001](../docs/decisions/0001-contract-first-availability.md) §1.5, the runtime endpoint `GET /api/operations/schema` (ticket I3) is the authoritative source; the sidecar `availability.json` (ticket I3b) is the authoritative companion (generated, never hand-edited; CI cross-checks runtime ⇄ sidecar). SDKs MUST NOT depend on `x-availability` reaching generated code — code-generators that surface vendor extensions may emit it as documentation, but consumers read availability from the runtime endpoint, not from the generated bindings. The 5-value vocabulary (`stable | beta | experimental | planned | deprecated`) is defined in the `AvailabilityValue` schema. See `schemas/FORMAT.md` §Availability Taxonomy for the operational rules (parser obligation: absent = stable; per-enum-value granularity is the `per_value_availability` primitive landed via ticket I17). **Localisation (per ticket [I26](https://trello.com/c/rcnqwgI4)).** Error responses + paused/blocked workflow statuses carry a localised human-readable `message` alongside a stable, never-localised `message_key`. Machine-readable fields (`error`, enum values, status codes) stay canonical English. - **Request:** `Accept-Language` header per RFC 9110 §12.5.4 (q-value negotiation supported). The server selects the best-match locale from its supported list; falls back to `en-GB` when no match. - **Response:** `Content-Language: <locale>` echo on every localised response; `Vary: Accept-Language` on every response (CDN/cache correctness — different `Accept-Language` requests produce different responses). - **Fallback locale:** `en-GB` (also the canonical locale for `message_key` translations and English `message` prose). - **SDK guidance:** switch on `error` (machine code) for typed error branches; surface `message_key` to client-side i18n catalogs (SDK companion work tracked at X19, cross-repo); display `message` for end-user UI; **never parse `message` for control flow** — it changes per locale. Carrier shape lives on `ErrorEnvelope` (envelope-level optional `message_key` + `message` + `locale` + `message_params`) and `ValidationErrorEnvelope` (also per-`details[]` entry). Existing 402 / 403 / 422 envelopes (`BalanceExhaustedResponse`, `FeatureNotAvailableResponse`, `FeatureTierRestrictedResponse`, `WorkflowPausedDetail`) inherit the convention. **Upload thresholds (per tickets [u0ar7Yye](https://trello.com/c/u0ar7Yye) + [58nBQLWQ](https://trello.com/c/58nBQLWQ)).** Canonical upload constants (single-shot cap, multipart chunk size, multipart concurrency default, multipart first-chunk size) live on the `UploadThresholds` schema with `const:`-pinned values. SDK generators emit these as typed binding constants so frontend / API / SDKs reference one source of truth instead of hardcoding magic numbers. A runtime `GET /api/uploads/limits` endpoint for dynamic discovery (per-tier / per-environment overrides) is a deferred follow-up.
|
|
4
|
+
*
|
|
5
|
+
* The version of the OpenAPI document: 2.12.0
|
|
6
|
+
*
|
|
7
|
+
*
|
|
8
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
9
|
+
* https://openapi-generator.tech
|
|
10
|
+
* Do not edit the class manually.
|
|
11
|
+
*/
|
|
12
|
+
/**
|
|
13
|
+
* Machine-readable discriminator for auth HTTP errors (401/403). Distinct
|
|
14
|
+
* from rate-limit 429 responses, which carry no `error_type` and use the
|
|
15
|
+
* plain `ErrorEnvelope` with a `Retry-After` header.
|
|
16
|
+
*
|
|
17
|
+
* Values are emitted by three auth mechanisms on the server:
|
|
18
|
+
*
|
|
19
|
+
* - **Login** (`POST /api/auth/login`) — password-based authentication.
|
|
20
|
+
* - **`ApiEntryPoint`** — challenge emitted on any protected route
|
|
21
|
+
* when no authenticated principal is present.
|
|
22
|
+
* - **`ApiKeyAuthenticator`** — validates `Authorization: Bearer <key>`
|
|
23
|
+
* headers on the `api` firewall.
|
|
24
|
+
*
|
|
25
|
+
* Per-value attribution:
|
|
26
|
+
*
|
|
27
|
+
* - `invalid_credentials` (Login): wrong password, OR correct password on
|
|
28
|
+
* an unverified account. The two cases are intentionally collapsed to
|
|
29
|
+
* avoid leaking account existence on the machine-readable channel;
|
|
30
|
+
* this keeps the login path consistent with the backend's registration
|
|
31
|
+
* and password-reset flows, both of which are also anti-enumeration
|
|
32
|
+
* (no existence leak on duplicate email or unknown account).
|
|
33
|
+
* - `account_locked` (Login OR `ApiKeyAuthenticator`): account is in a
|
|
34
|
+
* persisted locked state (e.g. set after repeated failures on the
|
|
35
|
+
* server side). Can occur on both mechanisms when the underlying
|
|
36
|
+
* account is locked, regardless of credential validity.
|
|
37
|
+
* - `account_disabled` (Login OR `ApiKeyAuthenticator`): account has been
|
|
38
|
+
* disabled by an administrator.
|
|
39
|
+
* - `account_deleted` (Login OR `ApiKeyAuthenticator`): account has been
|
|
40
|
+
* deleted.
|
|
41
|
+
* - `account_deletion_expired` (Login OR `ApiKeyAuthenticator`): grace
|
|
42
|
+
* period expired after a user-initiated deletion request.
|
|
43
|
+
* - `authentication_required` (`ApiEntryPoint`): unauthenticated
|
|
44
|
+
* request reached an endpoint that requires authentication.
|
|
45
|
+
* Emitted as a 401 challenge; no credentials were presented or
|
|
46
|
+
* the session is absent/expired. (Endpoint-level auth requirements
|
|
47
|
+
* are not declared in this spec yet — tracked as a separate
|
|
48
|
+
* housekeeping item to wire `security` requirements per route.)
|
|
49
|
+
* - `api_key_invalid` (`ApiKeyAuthenticator`): API key not found, or the
|
|
50
|
+
* key resolves to a user that does not exist. The two cases are
|
|
51
|
+
* intentionally collapsed for anti-enumeration (same reasoning as
|
|
52
|
+
* `invalid_credentials`).
|
|
53
|
+
* - `api_key_revoked` (`ApiKeyAuthenticator`): API key was found but is
|
|
54
|
+
* no longer active (`isActive() === false`).
|
|
55
|
+
*
|
|
56
|
+
* @export
|
|
57
|
+
*/
|
|
58
|
+
export declare const AuthErrorType: {
|
|
59
|
+
readonly invalid_credentials: "invalid_credentials";
|
|
60
|
+
readonly account_locked: "account_locked";
|
|
61
|
+
readonly account_disabled: "account_disabled";
|
|
62
|
+
readonly account_deleted: "account_deleted";
|
|
63
|
+
readonly account_deletion_expired: "account_deletion_expired";
|
|
64
|
+
readonly authentication_required: "authentication_required";
|
|
65
|
+
readonly api_key_invalid: "api_key_invalid";
|
|
66
|
+
readonly api_key_revoked: "api_key_revoked";
|
|
67
|
+
};
|
|
68
|
+
export type AuthErrorType = typeof AuthErrorType[keyof typeof AuthErrorType];
|
|
69
|
+
export declare function instanceOfAuthErrorType(value: any): boolean;
|
|
70
|
+
export declare function AuthErrorTypeFromJSON(json: any): AuthErrorType;
|
|
71
|
+
export declare function AuthErrorTypeFromJSONTyped(json: any, ignoreDiscriminator: boolean): AuthErrorType;
|
|
72
|
+
export declare function AuthErrorTypeToJSON(value?: AuthErrorType | null): any;
|
|
73
|
+
export declare function AuthErrorTypeToJSONTyped(value: any, ignoreDiscriminator: boolean): AuthErrorType;
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
/* tslint:disable */
|
|
2
|
+
/* eslint-disable */
|
|
3
|
+
/**
|
|
4
|
+
* GISL Compression API
|
|
5
|
+
* REST API for the GISL (Give It Smaller) file compression and processing service. **Architecture:** - Upload files to get a `file_id` - Create workflows referencing uploaded files with operations (compress, thumbnail, image_watermark, text_watermark, merge, archive, convert, custom_luma, audio_overlay, audio_watermark) - Poll status, stream SSE events, or receive webhook callbacks - Download results per operation output **Response envelope:** All mutation and query endpoints return `{ success: true, data: {...} }` on success and `{ success: false, error: \"...\", details: [...] }` on failure. Exceptions: `GET /api/operations/schema` returns raw JSON (per-tier private caching with ETag/Last-Modified revalidation per ADR-0002 + I3), health probes return flat objects, and `POST /api/contact` returns 204 with no body. **Availability metadata.** This spec uses the `x-availability` vendor extension as **decorative documentation only**. Per [ADR-0001](../docs/decisions/0001-contract-first-availability.md) §1.5, the runtime endpoint `GET /api/operations/schema` (ticket I3) is the authoritative source; the sidecar `availability.json` (ticket I3b) is the authoritative companion (generated, never hand-edited; CI cross-checks runtime ⇄ sidecar). SDKs MUST NOT depend on `x-availability` reaching generated code — code-generators that surface vendor extensions may emit it as documentation, but consumers read availability from the runtime endpoint, not from the generated bindings. The 5-value vocabulary (`stable | beta | experimental | planned | deprecated`) is defined in the `AvailabilityValue` schema. See `schemas/FORMAT.md` §Availability Taxonomy for the operational rules (parser obligation: absent = stable; per-enum-value granularity is the `per_value_availability` primitive landed via ticket I17). **Localisation (per ticket [I26](https://trello.com/c/rcnqwgI4)).** Error responses + paused/blocked workflow statuses carry a localised human-readable `message` alongside a stable, never-localised `message_key`. Machine-readable fields (`error`, enum values, status codes) stay canonical English. - **Request:** `Accept-Language` header per RFC 9110 §12.5.4 (q-value negotiation supported). The server selects the best-match locale from its supported list; falls back to `en-GB` when no match. - **Response:** `Content-Language: <locale>` echo on every localised response; `Vary: Accept-Language` on every response (CDN/cache correctness — different `Accept-Language` requests produce different responses). - **Fallback locale:** `en-GB` (also the canonical locale for `message_key` translations and English `message` prose). - **SDK guidance:** switch on `error` (machine code) for typed error branches; surface `message_key` to client-side i18n catalogs (SDK companion work tracked at X19, cross-repo); display `message` for end-user UI; **never parse `message` for control flow** — it changes per locale. Carrier shape lives on `ErrorEnvelope` (envelope-level optional `message_key` + `message` + `locale` + `message_params`) and `ValidationErrorEnvelope` (also per-`details[]` entry). Existing 402 / 403 / 422 envelopes (`BalanceExhaustedResponse`, `FeatureNotAvailableResponse`, `FeatureTierRestrictedResponse`, `WorkflowPausedDetail`) inherit the convention. **Upload thresholds (per tickets [u0ar7Yye](https://trello.com/c/u0ar7Yye) + [58nBQLWQ](https://trello.com/c/58nBQLWQ)).** Canonical upload constants (single-shot cap, multipart chunk size, multipart concurrency default, multipart first-chunk size) live on the `UploadThresholds` schema with `const:`-pinned values. SDK generators emit these as typed binding constants so frontend / API / SDKs reference one source of truth instead of hardcoding magic numbers. A runtime `GET /api/uploads/limits` endpoint for dynamic discovery (per-tier / per-environment overrides) is a deferred follow-up.
|
|
6
|
+
*
|
|
7
|
+
* The version of the OpenAPI document: 2.12.0
|
|
8
|
+
*
|
|
9
|
+
*
|
|
10
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
11
|
+
* https://openapi-generator.tech
|
|
12
|
+
* Do not edit the class manually.
|
|
13
|
+
*/
|
|
14
|
+
/**
|
|
15
|
+
* Machine-readable discriminator for auth HTTP errors (401/403). Distinct
|
|
16
|
+
* from rate-limit 429 responses, which carry no `error_type` and use the
|
|
17
|
+
* plain `ErrorEnvelope` with a `Retry-After` header.
|
|
18
|
+
*
|
|
19
|
+
* Values are emitted by three auth mechanisms on the server:
|
|
20
|
+
*
|
|
21
|
+
* - **Login** (`POST /api/auth/login`) — password-based authentication.
|
|
22
|
+
* - **`ApiEntryPoint`** — challenge emitted on any protected route
|
|
23
|
+
* when no authenticated principal is present.
|
|
24
|
+
* - **`ApiKeyAuthenticator`** — validates `Authorization: Bearer <key>`
|
|
25
|
+
* headers on the `api` firewall.
|
|
26
|
+
*
|
|
27
|
+
* Per-value attribution:
|
|
28
|
+
*
|
|
29
|
+
* - `invalid_credentials` (Login): wrong password, OR correct password on
|
|
30
|
+
* an unverified account. The two cases are intentionally collapsed to
|
|
31
|
+
* avoid leaking account existence on the machine-readable channel;
|
|
32
|
+
* this keeps the login path consistent with the backend's registration
|
|
33
|
+
* and password-reset flows, both of which are also anti-enumeration
|
|
34
|
+
* (no existence leak on duplicate email or unknown account).
|
|
35
|
+
* - `account_locked` (Login OR `ApiKeyAuthenticator`): account is in a
|
|
36
|
+
* persisted locked state (e.g. set after repeated failures on the
|
|
37
|
+
* server side). Can occur on both mechanisms when the underlying
|
|
38
|
+
* account is locked, regardless of credential validity.
|
|
39
|
+
* - `account_disabled` (Login OR `ApiKeyAuthenticator`): account has been
|
|
40
|
+
* disabled by an administrator.
|
|
41
|
+
* - `account_deleted` (Login OR `ApiKeyAuthenticator`): account has been
|
|
42
|
+
* deleted.
|
|
43
|
+
* - `account_deletion_expired` (Login OR `ApiKeyAuthenticator`): grace
|
|
44
|
+
* period expired after a user-initiated deletion request.
|
|
45
|
+
* - `authentication_required` (`ApiEntryPoint`): unauthenticated
|
|
46
|
+
* request reached an endpoint that requires authentication.
|
|
47
|
+
* Emitted as a 401 challenge; no credentials were presented or
|
|
48
|
+
* the session is absent/expired. (Endpoint-level auth requirements
|
|
49
|
+
* are not declared in this spec yet — tracked as a separate
|
|
50
|
+
* housekeeping item to wire `security` requirements per route.)
|
|
51
|
+
* - `api_key_invalid` (`ApiKeyAuthenticator`): API key not found, or the
|
|
52
|
+
* key resolves to a user that does not exist. The two cases are
|
|
53
|
+
* intentionally collapsed for anti-enumeration (same reasoning as
|
|
54
|
+
* `invalid_credentials`).
|
|
55
|
+
* - `api_key_revoked` (`ApiKeyAuthenticator`): API key was found but is
|
|
56
|
+
* no longer active (`isActive() === false`).
|
|
57
|
+
*
|
|
58
|
+
* @export
|
|
59
|
+
*/
|
|
60
|
+
export const AuthErrorType = {
|
|
61
|
+
invalid_credentials: 'invalid_credentials',
|
|
62
|
+
account_locked: 'account_locked',
|
|
63
|
+
account_disabled: 'account_disabled',
|
|
64
|
+
account_deleted: 'account_deleted',
|
|
65
|
+
account_deletion_expired: 'account_deletion_expired',
|
|
66
|
+
authentication_required: 'authentication_required',
|
|
67
|
+
api_key_invalid: 'api_key_invalid',
|
|
68
|
+
api_key_revoked: 'api_key_revoked'
|
|
69
|
+
};
|
|
70
|
+
export function instanceOfAuthErrorType(value) {
|
|
71
|
+
for (const key in AuthErrorType) {
|
|
72
|
+
if (Object.prototype.hasOwnProperty.call(AuthErrorType, key)) {
|
|
73
|
+
if (AuthErrorType[key] === value) {
|
|
74
|
+
return true;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
return false;
|
|
79
|
+
}
|
|
80
|
+
export function AuthErrorTypeFromJSON(json) {
|
|
81
|
+
return AuthErrorTypeFromJSONTyped(json, false);
|
|
82
|
+
}
|
|
83
|
+
export function AuthErrorTypeFromJSONTyped(json, ignoreDiscriminator) {
|
|
84
|
+
return json;
|
|
85
|
+
}
|
|
86
|
+
export function AuthErrorTypeToJSON(value) {
|
|
87
|
+
return value;
|
|
88
|
+
}
|
|
89
|
+
export function AuthErrorTypeToJSONTyped(value, ignoreDiscriminator) {
|
|
90
|
+
return value;
|
|
91
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* GISL Compression API
|
|
3
|
+
* REST API for the GISL (Give It Smaller) file compression and processing service. **Architecture:** - Upload files to get a `file_id` - Create workflows referencing uploaded files with operations (compress, thumbnail, image_watermark, text_watermark, merge, archive, convert, custom_luma, audio_overlay, audio_watermark) - Poll status, stream SSE events, or receive webhook callbacks - Download results per operation output **Response envelope:** All mutation and query endpoints return `{ success: true, data: {...} }` on success and `{ success: false, error: \"...\", details: [...] }` on failure. Exceptions: `GET /api/operations/schema` returns raw JSON (per-tier private caching with ETag/Last-Modified revalidation per ADR-0002 + I3), health probes return flat objects, and `POST /api/contact` returns 204 with no body. **Availability metadata.** This spec uses the `x-availability` vendor extension as **decorative documentation only**. Per [ADR-0001](../docs/decisions/0001-contract-first-availability.md) §1.5, the runtime endpoint `GET /api/operations/schema` (ticket I3) is the authoritative source; the sidecar `availability.json` (ticket I3b) is the authoritative companion (generated, never hand-edited; CI cross-checks runtime ⇄ sidecar). SDKs MUST NOT depend on `x-availability` reaching generated code — code-generators that surface vendor extensions may emit it as documentation, but consumers read availability from the runtime endpoint, not from the generated bindings. The 5-value vocabulary (`stable | beta | experimental | planned | deprecated`) is defined in the `AvailabilityValue` schema. See `schemas/FORMAT.md` §Availability Taxonomy for the operational rules (parser obligation: absent = stable; per-enum-value granularity is the `per_value_availability` primitive landed via ticket I17). **Localisation (per ticket [I26](https://trello.com/c/rcnqwgI4)).** Error responses + paused/blocked workflow statuses carry a localised human-readable `message` alongside a stable, never-localised `message_key`. Machine-readable fields (`error`, enum values, status codes) stay canonical English. - **Request:** `Accept-Language` header per RFC 9110 §12.5.4 (q-value negotiation supported). The server selects the best-match locale from its supported list; falls back to `en-GB` when no match. - **Response:** `Content-Language: <locale>` echo on every localised response; `Vary: Accept-Language` on every response (CDN/cache correctness — different `Accept-Language` requests produce different responses). - **Fallback locale:** `en-GB` (also the canonical locale for `message_key` translations and English `message` prose). - **SDK guidance:** switch on `error` (machine code) for typed error branches; surface `message_key` to client-side i18n catalogs (SDK companion work tracked at X19, cross-repo); display `message` for end-user UI; **never parse `message` for control flow** — it changes per locale. Carrier shape lives on `ErrorEnvelope` (envelope-level optional `message_key` + `message` + `locale` + `message_params`) and `ValidationErrorEnvelope` (also per-`details[]` entry). Existing 402 / 403 / 422 envelopes (`BalanceExhaustedResponse`, `FeatureNotAvailableResponse`, `FeatureTierRestrictedResponse`, `WorkflowPausedDetail`) inherit the convention. **Upload thresholds (per tickets [u0ar7Yye](https://trello.com/c/u0ar7Yye) + [58nBQLWQ](https://trello.com/c/58nBQLWQ)).** Canonical upload constants (single-shot cap, multipart chunk size, multipart concurrency default, multipart first-chunk size) live on the `UploadThresholds` schema with `const:`-pinned values. SDK generators emit these as typed binding constants so frontend / API / SDKs reference one source of truth instead of hardcoding magic numbers. A runtime `GET /api/uploads/limits` endpoint for dynamic discovery (per-tier / per-environment overrides) is a deferred follow-up.
|
|
4
|
+
*
|
|
5
|
+
* The version of the OpenAPI document: 2.12.0
|
|
6
|
+
*
|
|
7
|
+
*
|
|
8
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
9
|
+
* https://openapi-generator.tech
|
|
10
|
+
* Do not edit the class manually.
|
|
11
|
+
*/
|
|
12
|
+
/**
|
|
13
|
+
* Availability level for an operation, mime_group, option, or
|
|
14
|
+
* per-enum-value entry per ADR-0001 §1.3. Used as the value of
|
|
15
|
+
* decorative `x-availability` extensions in this spec, and as the
|
|
16
|
+
* typed schema referenced by the runtime capability endpoint
|
|
17
|
+
* (`GET /api/operations/schema`, ticket I3) and the sidecar
|
|
18
|
+
* `availability.json` (ticket I3b).
|
|
19
|
+
*
|
|
20
|
+
* Per ADR-0001 §1.4: when `availability` is absent on a schema
|
|
21
|
+
* entry, the implicit value is `stable` for SDK / client / external
|
|
22
|
+
* consumers. `stable_pending_audit` is internal CI / audit
|
|
23
|
+
* accounting only and never surfaces to consumers.
|
|
24
|
+
*
|
|
25
|
+
* See `schemas/FORMAT.md` §Availability Taxonomy and
|
|
26
|
+
* `docs/decisions/0001-contract-first-availability.md` for the full
|
|
27
|
+
* rules, vocabulary rationale, and parser obligations.
|
|
28
|
+
*
|
|
29
|
+
* @export
|
|
30
|
+
*/
|
|
31
|
+
export declare const AvailabilityValue: {
|
|
32
|
+
readonly stable: "stable";
|
|
33
|
+
readonly beta: "beta";
|
|
34
|
+
readonly experimental: "experimental";
|
|
35
|
+
readonly planned: "planned";
|
|
36
|
+
readonly deprecated: "deprecated";
|
|
37
|
+
};
|
|
38
|
+
export type AvailabilityValue = typeof AvailabilityValue[keyof typeof AvailabilityValue];
|
|
39
|
+
export declare function instanceOfAvailabilityValue(value: any): boolean;
|
|
40
|
+
export declare function AvailabilityValueFromJSON(json: any): AvailabilityValue;
|
|
41
|
+
export declare function AvailabilityValueFromJSONTyped(json: any, ignoreDiscriminator: boolean): AvailabilityValue;
|
|
42
|
+
export declare function AvailabilityValueToJSON(value?: AvailabilityValue | null): any;
|
|
43
|
+
export declare function AvailabilityValueToJSONTyped(value: any, ignoreDiscriminator: boolean): AvailabilityValue;
|