From 9b4e6075454d288668ce969bbd7ffc0c0d0a1326 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Thu, 13 Aug 2026 02:27:32 +0000 Subject: [PATCH] feat: Updated OpenAPI spec --- ...eAI.BillingPlansClient.GetBillingPlan.g.cs | 510 + ....BillingPlansClient.ListBillingPlans.g.cs} | 123 +- .../ResembleAI.BillingPlansClient.g.cs | 175 + ...SubscriptionsClient.ChangeBillingPlan.g.cs | 734 + ...ent.ConfirmBillingSubscriptionPayment.g.cs | 694 + ...riptionsClient.GetBillingSubscription.g.cs | 538 + ...ent.UpdateBillingSubscriptionProducts.g.cs | 729 + ...ResembleAI.BillingSubscriptionsClient.g.cs | 175 + ...lient.ExportBillingWalletTransactions.g.cs | 534 + ...lingWalletClient.GetBillingAutoReload.g.cs | 538 + ....BillingWalletClient.GetBillingWallet.g.cs | 538 + ...tClient.ListBillingWalletTransactions.g.cs | 615 + ...gWalletClient.UpdateBillingAutoReload.g.cs | 664 + .../ResembleAI.BillingWalletClient.g.cs | 175 + ...AI.IBillingPlansClient.GetBillingPlan.g.cs | 32 + ....IBillingPlansClient.ListBillingPlans.g.cs | 28 + .../ResembleAI.IBillingPlansClient.g.cs | 48 + ...SubscriptionsClient.ChangeBillingPlan.g.cs | 50 + ...ent.ConfirmBillingSubscriptionPayment.g.cs | 48 + ...riptionsClient.GetBillingSubscription.g.cs | 28 + ...ent.UpdateBillingSubscriptionProducts.g.cs | 46 + ...esembleAI.IBillingSubscriptionsClient.g.cs | 48 + ...ient.ExportBillingWalletTransactions.g.cs} | 14 +- ...lingWalletClient.GetBillingAutoReload.g.cs | 28 + ...IBillingWalletClient.GetBillingWallet.g.cs | 28 + ...tClient.ListBillingWalletTransactions.g.cs | 48 + ...gWalletClient.UpdateBillingAutoReload.g.cs | 52 + .../ResembleAI.IBillingWalletClient.g.cs | 48 + .../ResembleAI.IResembleAIClient.g.cs | 20 + ...gnalClient.CreateSignalCustomCategory.g.cs | 68 + ....ISignalClient.CreateSignalSubmission.g.cs | 66 + ...gnalClient.DeleteSignalCustomCategory.g.cs | 32 + ....ISignalClient.DeleteSignalSubmission.g.cs | 32 + ...ISignalClient.GetSignalCustomCategory.g.cs | 32 + ...gnalClient.ListSignalCustomCategories.g.cs | 28 + ...I.ISignalClient.ListSignalSubmissions.g.cs | 44 + ...gnalClient.UpdateSignalCustomCategory.g.cs | 60 + ...AI.ISignalClient.UpdateSignalSettings.g.cs | 48 + .../Generated/ResembleAI.ISignalClient.g.cs | 48 + ...Converters.BillingPlanBillingInterval.g.cs | 53 + ...rs.BillingPlanBillingIntervalNullable.g.cs | 60 + ...AI.JsonConverters.BillingPlanPlanType.g.cs | 53 + ...onverters.BillingPlanPlanTypeNullable.g.cs | 60 + ...Converters.BillingPlanProductCategory.g.cs | 53 + ...rs.BillingPlanProductCategoryNullable.g.cs | 60 + ...rs.BillingSubscriptionProductCategory.g.cs | 53 + ...ngSubscriptionProductCategoryNullable.g.cs | 60 + ...nConverters.BillingSubscriptionStatus.g.cs | 53 + ...ers.BillingSubscriptionStatusNullable.g.cs | 60 + ...llingWalletTransactionTransactionType.g.cs | 53 + ...letTransactionTransactionTypeNullable.g.cs | 60 + ...ngPlanRequestUnprocessableEntityError.g.cs | 141 + ...aymentRequestUnprocessableEntityError.g.cs | 141 + ...Converters.SignalCustomCategoryStatus.g.cs | 53 + ...rs.SignalCustomCategoryStatusNullable.g.cs | 60 + ...nverters.SignalScoreItemInputModality.g.cs | 53 + ....SignalScoreItemInputModalityNullable.g.cs | 60 + ...JsonConverters.SignalScoreItemVerdict.g.cs | 53 + ...erters.SignalScoreItemVerdictNullable.g.cs | 60 + ...verters.SignalSubmissionInputModality.g.cs | 53 + ...SignalSubmissionInputModalityNullable.g.cs | 60 + ...sonConverters.SignalSubmissionVerdict.g.cs | 53 + ...rters.SignalSubmissionVerdictNullable.g.cs | 60 + ...ReloadRequestUnprocessableEntityError.g.cs | 141 + ...oductsRequestUnprocessableEntityError.g.cs | 141 + .../ResembleAI.JsonSerializerContext.g.cs | 903 +- ...ResembleAI.JsonSerializerContextTypes.g.cs | 826 +- ...Models.BillingAutoReloadResponse.Json.g.cs | 141 + ...leAI.Models.BillingAutoReloadResponse.g.cs | 63 + ....Models.BillingAutoReloadSetting.Json.g.cs | 141 + ...bleAI.Models.BillingAutoReloadSetting.g.cs | 152 + ....Models.BillingChangePlanRequest.Json.g.cs | 141 + ...bleAI.Models.BillingChangePlanRequest.g.cs | 56 + ...angePlanRequestProductQuantities.Json.g.cs | 141 + ...ingChangePlanRequestProductQuantities.g.cs | 19 + ...els.BillingConfirmPaymentRequest.Json.g.cs | 141 + ...I.Models.BillingConfirmPaymentRequest.g.cs | 47 + .../ResembleAI.Models.BillingError.Json.g.cs | 141 + .../ResembleAI.Models.BillingError.g.cs | 47 + ...eAI.Models.BillingForbiddenError.Json.g.cs | 141 + ...sembleAI.Models.BillingForbiddenError.g.cs | 58 + ...embleAI.Models.BillingPagination.Json.g.cs | 141 + .../ResembleAI.Models.BillingPagination.g.cs | 71 + ...els.BillingPaymentActionRequired.Json.g.cs | 141 + ...I.Models.BillingPaymentActionRequired.g.cs | 57 + .../ResembleAI.Models.BillingPlan.Json.g.cs | 141 + .../ResembleAI.Models.BillingPlan.g.cs | 184 + ...eAI.Models.BillingPlanBillingInterval.g.cs | 57 + ...embleAI.Models.BillingPlanFamily.Json.g.cs | 141 + .../ResembleAI.Models.BillingPlanFamily.g.cs | 71 + ...ResembleAI.Models.BillingPlanPlanType.g.cs | 57 + ...mbleAI.Models.BillingPlanProduct.Json.g.cs | 141 + .../ResembleAI.Models.BillingPlanProduct.g.cs | 191 + ...eAI.Models.BillingPlanProductCategory.g.cs | 63 + ...bleAI.Models.BillingPlanResponse.Json.g.cs | 141 + ...ResembleAI.Models.BillingPlanResponse.g.cs | 45 + ...leAI.Models.BillingPlansResponse.Json.g.cs | 141 + ...esembleAI.Models.BillingPlansResponse.g.cs | 45 + ...leAI.Models.BillingProductFamily.Json.g.cs | 141 + ...esembleAI.Models.BillingProductFamily.g.cs | 71 + ...els.BillingProductQuantityChange.Json.g.cs | 141 + ...I.Models.BillingProductQuantityChange.g.cs | 59 + ...AI.Models.BillingProductRateTier.Json.g.cs | 141 + ...embleAI.Models.BillingProductRateTier.g.cs | 80 + ...bleAI.Models.BillingSubscription.Json.g.cs | 141 + ...ResembleAI.Models.BillingSubscription.g.cs | 153 + ...I.Models.BillingSubscriptionItem.Json.g.cs | 141 + ...mbleAI.Models.BillingSubscriptionItem.g.cs | 134 + ...s.BillingSubscriptionPlanProduct.Json.g.cs | 141 + ...Models.BillingSubscriptionPlanProduct.g.cs | 71 + ...odels.BillingSubscriptionProduct.Json.g.cs | 141 + ...eAI.Models.BillingSubscriptionProduct.g.cs | 119 + ...ls.BillingSubscriptionProductCategory.g.cs | 63 + ...dels.BillingSubscriptionResponse.Json.g.cs | 141 + ...AI.Models.BillingSubscriptionResponse.g.cs | 46 + ...leAI.Models.BillingSubscriptionStatus.g.cs | 87 + ...dels.BillingTransactionsResponse.Json.g.cs | 141 + ...AI.Models.BillingTransactionsResponse.g.cs | 54 + ...s.BillingUpdateAutoReloadRequest.Json.g.cs | 141 + ...Models.BillingUpdateAutoReloadRequest.g.cs | 75 + ...els.BillingUpdateProductsRequest.Json.g.cs | 141 + ...I.Models.BillingUpdateProductsRequest.g.cs | 45 + ...I.Models.BillingValidationErrors.Json.g.cs | 141 + ...mbleAI.Models.BillingValidationErrors.g.cs | 45 + .../ResembleAI.Models.BillingWallet.Json.g.cs | 141 + .../ResembleAI.Models.BillingWallet.g.cs | 134 + ...eAI.Models.BillingWalletResponse.Json.g.cs | 141 + ...sembleAI.Models.BillingWalletResponse.g.cs | 44 + ....Models.BillingWalletTransaction.Json.g.cs | 141 + ...bleAI.Models.BillingWalletTransaction.g.cs | 101 + ...BillingWalletTransactionMetadata.Json.g.cs | 141 + ...dels.BillingWalletTransactionMetadata.g.cs | 19 + ...illingWalletTransactionMetadata2.Json.g.cs | 141 + ...els.BillingWalletTransactionMetadata2.g.cs | 19 + ...llingWalletTransactionTransactionType.g.cs | 105 + ...dateBillingAutoReloadResponse200.Json.g.cs | 141 + ...letUpdateBillingAutoReloadResponse200.g.cs | 44 + ...nRequestUnprocessableEntityError.Json.g.cs | 141 + ...ngPlanRequestUnprocessableEntityError.g.cs | 295 + ...tRequestUnprocessableEntityError.Json.g.cs | 141 + ...aymentRequestUnprocessableEntityError.g.cs | 295 + ...ls.CreateSignalSubmissionRequest.Json.g.cs | 141 + ....Models.CreateSignalSubmissionRequest.g.cs | 47 + ...illingWalletTransactionsResponse.Json.g.cs | 141 + ...portBillingWalletTransactionsResponse.g.cs | 19 + ...eAI.Models.SignalBuiltInCategory.Json.g.cs | 141 + ...sembleAI.Models.SignalBuiltInCategory.g.cs | 80 + ...embleAI.Models.SignalCalibration.Json.g.cs | 141 + .../ResembleAI.Models.SignalCalibration.g.cs | 71 + ...s.SignalCalibrationWarningsItems.Json.g.cs | 141 + ...Models.SignalCalibrationWarningsItems.g.cs | 19 + ...bleAI.Models.SignalCategoryScore.Json.g.cs | 141 + ...ResembleAI.Models.SignalCategoryScore.g.cs | 68 + ...leAI.Models.SignalCustomCategory.Json.g.cs | 141 + ...esembleAI.Models.SignalCustomCategory.g.cs | 150 + ...ignalCustomCategoryCreateRequest.Json.g.cs | 141 + ...els.SignalCustomCategoryCreateRequest.g.cs | 90 + ...SignalCustomCategoryListResponse.Json.g.cs | 141 + ...dels.SignalCustomCategoryListResponse.g.cs | 83 + ...ignalCustomCategoryOverlapsItems.Json.g.cs | 141 + ...els.SignalCustomCategoryOverlapsItems.g.cs | 19 + ...els.SignalCustomCategoryResponse.Json.g.cs | 141 + ...I.Models.SignalCustomCategoryResponse.g.cs | 55 + ...eAI.Models.SignalCustomCategoryStatus.g.cs | 69 + ...ignalCustomCategoryUpdateRequest.Json.g.cs | 141 + ...els.SignalCustomCategoryUpdateRequest.g.cs | 80 + .../ResembleAI.Models.SignalError.Json.g.cs | 141 + .../ResembleAI.Models.SignalError.g.cs | 64 + ...ResembleAI.Models.SignalScenario.Json.g.cs | 141 + .../ResembleAI.Models.SignalScenario.g.cs | 64 + ...esembleAI.Models.SignalScoreItem.Json.g.cs | 141 + .../ResembleAI.Models.SignalScoreItem.g.cs | 150 + ...I.Models.SignalScoreItemInputModality.g.cs | 63 + ...embleAI.Models.SignalScoreItemVerdict.g.cs | 57 + ...bleAI.Models.SignalScoreResponse.Json.g.cs | 141 + ...ResembleAI.Models.SignalScoreResponse.g.cs | 55 + ...ResembleAI.Models.SignalSettings.Json.g.cs | 141 + .../ResembleAI.Models.SignalSettings.g.cs | 46 + ...AI.Models.SignalSettingsResponse.Json.g.cs | 141 + ...embleAI.Models.SignalSettingsResponse.g.cs | 55 + ...dels.SignalSettingsUpdateRequest.Json.g.cs | 141 + ...AI.Models.SignalSettingsUpdateRequest.g.cs | 46 + ...sembleAI.Models.SignalSubmission.Json.g.cs | 141 + .../ResembleAI.Models.SignalSubmission.g.cs | 142 + ....Models.SignalSubmissionInputModality.g.cs | 63 + ...els.SignalSubmissionListResponse.Json.g.cs | 141 + ...I.Models.SignalSubmissionListResponse.g.cs | 91 + ...mbleAI.Models.SignalSubmissionVerdict.g.cs | 57 + ...eAI.Models.SignalSuccessResponse.Json.g.cs | 141 + ...sembleAI.Models.SignalSuccessResponse.g.cs | 45 + ...ResembleAI.Models.SignalTopMatch.Json.g.cs | 141 + .../ResembleAI.Models.SignalTopMatch.g.cs | 66 + ...dRequestUnprocessableEntityError.Json.g.cs | 141 + ...ReloadRequestUnprocessableEntityError.g.cs | 295 + ...sRequestUnprocessableEntityError.Json.g.cs | 141 + ...oductsRequestUnprocessableEntityError.g.cs | 295 + .../ResembleAI.ResembleAIClient.g.cs | 45 + ...gnalClient.CreateSignalCustomCategory.g.cs | 533 + ...I.SignalClient.CreateSignalSubmission.g.cs | 601 + ...gnalClient.DeleteSignalCustomCategory.g.cs | 473 + ...I.SignalClient.DeleteSignalSubmission.g.cs | 473 + ....SignalClient.GetSignalCustomCategory.g.cs | 473 + ...gnalClient.ListSignalCustomCategories.g.cs | 464 + ...AI.SignalClient.ListSignalSubmissions.g.cs | 494 + ...gnalClient.UpdateSignalCustomCategory.g.cs | 568 + ...eAI.SignalClient.UpdateSignalSettings.g.cs | 509 + .../Generated/ResembleAI.SignalClient.g.cs | 175 + src/libs/ResembleAI/openapi.yaml | 12971 ++++++++++------ 208 files changed, 38072 insertions(+), 5273 deletions(-) create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.BillingPlansClient.GetBillingPlan.g.cs rename src/libs/ResembleAI/Generated/{ResembleAI.AccountClient.GetBillingUsage.g.cs => ResembleAI.BillingPlansClient.ListBillingPlans.g.cs} (79%) create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.BillingPlansClient.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.BillingSubscriptionsClient.ChangeBillingPlan.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.BillingSubscriptionsClient.ConfirmBillingSubscriptionPayment.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.BillingSubscriptionsClient.GetBillingSubscription.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.BillingSubscriptionsClient.UpdateBillingSubscriptionProducts.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.BillingSubscriptionsClient.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.BillingWalletClient.ExportBillingWalletTransactions.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.BillingWalletClient.GetBillingAutoReload.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.BillingWalletClient.GetBillingWallet.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.BillingWalletClient.ListBillingWalletTransactions.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.BillingWalletClient.UpdateBillingAutoReload.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.BillingWalletClient.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.IBillingPlansClient.GetBillingPlan.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.IBillingPlansClient.ListBillingPlans.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.IBillingPlansClient.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.IBillingSubscriptionsClient.ChangeBillingPlan.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.IBillingSubscriptionsClient.ConfirmBillingSubscriptionPayment.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.IBillingSubscriptionsClient.GetBillingSubscription.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.IBillingSubscriptionsClient.UpdateBillingSubscriptionProducts.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.IBillingSubscriptionsClient.g.cs rename src/libs/ResembleAI/Generated/{ResembleAI.IAccountClient.GetBillingUsage.g.cs => ResembleAI.IBillingWalletClient.ExportBillingWalletTransactions.g.cs} (69%) create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.IBillingWalletClient.GetBillingAutoReload.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.IBillingWalletClient.GetBillingWallet.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.IBillingWalletClient.ListBillingWalletTransactions.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.IBillingWalletClient.UpdateBillingAutoReload.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.IBillingWalletClient.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.ISignalClient.CreateSignalCustomCategory.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.ISignalClient.CreateSignalSubmission.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.ISignalClient.DeleteSignalCustomCategory.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.ISignalClient.DeleteSignalSubmission.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.ISignalClient.GetSignalCustomCategory.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.ISignalClient.ListSignalCustomCategories.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.ISignalClient.ListSignalSubmissions.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.ISignalClient.UpdateSignalCustomCategory.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.ISignalClient.UpdateSignalSettings.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.ISignalClient.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingPlanBillingInterval.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingPlanBillingIntervalNullable.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingPlanPlanType.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingPlanPlanTypeNullable.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingPlanProductCategory.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingPlanProductCategoryNullable.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingSubscriptionProductCategory.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingSubscriptionProductCategoryNullable.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingSubscriptionStatus.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingSubscriptionStatusNullable.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingWalletTransactionTransactionType.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingWalletTransactionTransactionTypeNullable.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.ChangeBillingPlanRequestUnprocessableEntityError.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.SignalCustomCategoryStatus.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.SignalCustomCategoryStatusNullable.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.SignalScoreItemInputModality.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.SignalScoreItemInputModalityNullable.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.SignalScoreItemVerdict.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.SignalScoreItemVerdictNullable.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.SignalSubmissionInputModality.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.SignalSubmissionInputModalityNullable.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.SignalSubmissionVerdict.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.SignalSubmissionVerdictNullable.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.UpdateBillingAutoReloadRequestUnprocessableEntityError.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.UpdateBillingSubscriptionProductsRequestUnprocessableEntityError.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingAutoReloadResponse.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingAutoReloadResponse.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingAutoReloadSetting.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingAutoReloadSetting.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingChangePlanRequest.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingChangePlanRequest.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingChangePlanRequestProductQuantities.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingChangePlanRequestProductQuantities.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingConfirmPaymentRequest.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingConfirmPaymentRequest.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingError.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingError.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingForbiddenError.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingForbiddenError.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPagination.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPagination.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPaymentActionRequired.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPaymentActionRequired.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlan.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlan.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlanBillingInterval.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlanFamily.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlanFamily.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlanPlanType.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlanProduct.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlanProduct.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlanProductCategory.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlanResponse.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlanResponse.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlansResponse.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlansResponse.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingProductFamily.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingProductFamily.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingProductQuantityChange.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingProductQuantityChange.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingProductRateTier.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingProductRateTier.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscription.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscription.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscriptionItem.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscriptionItem.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscriptionPlanProduct.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscriptionPlanProduct.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscriptionProduct.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscriptionProduct.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscriptionProductCategory.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscriptionResponse.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscriptionResponse.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscriptionStatus.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingTransactionsResponse.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingTransactionsResponse.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingUpdateAutoReloadRequest.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingUpdateAutoReloadRequest.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingUpdateProductsRequest.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingUpdateProductsRequest.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingValidationErrors.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingValidationErrors.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWallet.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWallet.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletResponse.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletResponse.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletTransaction.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletTransaction.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletTransactionMetadata.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletTransactionMetadata.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletTransactionMetadata2.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletTransactionMetadata2.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletTransactionTransactionType.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletUpdateBillingAutoReloadResponse200.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletUpdateBillingAutoReloadResponse200.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.ChangeBillingPlanRequestUnprocessableEntityError.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.ChangeBillingPlanRequestUnprocessableEntityError.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.CreateSignalSubmissionRequest.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.CreateSignalSubmissionRequest.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.ExportBillingWalletTransactionsResponse.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.ExportBillingWalletTransactionsResponse.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalBuiltInCategory.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalBuiltInCategory.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCalibration.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCalibration.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCalibrationWarningsItems.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCalibrationWarningsItems.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCategoryScore.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCategoryScore.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategory.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategory.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryCreateRequest.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryCreateRequest.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryListResponse.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryListResponse.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryOverlapsItems.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryOverlapsItems.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryResponse.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryResponse.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryStatus.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryUpdateRequest.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryUpdateRequest.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalError.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalError.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalScenario.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalScenario.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalScoreItem.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalScoreItem.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalScoreItemInputModality.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalScoreItemVerdict.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalScoreResponse.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalScoreResponse.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSettings.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSettings.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSettingsResponse.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSettingsResponse.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSettingsUpdateRequest.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSettingsUpdateRequest.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSubmission.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSubmission.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSubmissionInputModality.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSubmissionListResponse.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSubmissionListResponse.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSubmissionVerdict.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSuccessResponse.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSuccessResponse.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalTopMatch.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.SignalTopMatch.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.UpdateBillingAutoReloadRequestUnprocessableEntityError.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.UpdateBillingAutoReloadRequestUnprocessableEntityError.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.UpdateBillingSubscriptionProductsRequestUnprocessableEntityError.Json.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.Models.UpdateBillingSubscriptionProductsRequestUnprocessableEntityError.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.SignalClient.CreateSignalCustomCategory.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.SignalClient.CreateSignalSubmission.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.SignalClient.DeleteSignalCustomCategory.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.SignalClient.DeleteSignalSubmission.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.SignalClient.GetSignalCustomCategory.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.SignalClient.ListSignalCustomCategories.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.SignalClient.ListSignalSubmissions.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.SignalClient.UpdateSignalCustomCategory.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.SignalClient.UpdateSignalSettings.g.cs create mode 100644 src/libs/ResembleAI/Generated/ResembleAI.SignalClient.g.cs diff --git a/src/libs/ResembleAI/Generated/ResembleAI.BillingPlansClient.GetBillingPlan.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.BillingPlansClient.GetBillingPlan.g.cs new file mode 100644 index 0000000..247383d --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.BillingPlansClient.GetBillingPlan.g.cs @@ -0,0 +1,510 @@ + +#nullable enable + +namespace ResembleAI +{ + public partial class BillingPlansClient + { + + private static readonly global::ResembleAI.AutoSDKServer[] s_GetBillingPlanServers = new global::ResembleAI.AutoSDKServer[] + { new global::ResembleAI.AutoSDKServer( + id: "https-app-resemble-ai-api-v2", + name: "app.resemble.ai api v2", + url: "https://app.resemble.ai/api/v2", + description: ""), + }; + + + private static readonly global::ResembleAI.EndPointSecurityRequirement s_GetBillingPlanSecurityRequirement0 = + new global::ResembleAI.EndPointSecurityRequirement + { + Authorizations = new global::ResembleAI.EndPointAuthorizationRequirement[] + { new global::ResembleAI.EndPointAuthorizationRequirement + { + Type = "Http", + SchemeId = "HttpBearer", + Location = "Header", + Name = "Bearer", + FriendlyName = "Bearer", + }, + }, + }; + private static readonly global::ResembleAI.EndPointSecurityRequirement[] s_GetBillingPlanSecurityRequirements = + new global::ResembleAI.EndPointSecurityRequirement[] + { s_GetBillingPlanSecurityRequirement0, + }; + partial void PrepareGetBillingPlanArguments( + global::System.Net.Http.HttpClient httpClient, + ref string id); + partial void PrepareGetBillingPlanRequest( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpRequestMessage httpRequestMessage, + string id); + partial void ProcessGetBillingPlanResponse( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpResponseMessage httpResponseMessage); + + partial void ProcessGetBillingPlanResponseContent( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpResponseMessage httpResponseMessage, + ref string content); + + /// + /// Get a billing plan
+ /// Returns an active billing plan by slug, including its products, prices, and quantity rules. This endpoint is public. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task GetBillingPlanAsync( + string id, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + var __response = await GetBillingPlanAsResponseAsync( + id: id, + requestOptions: requestOptions, + cancellationToken: cancellationToken + ).ConfigureAwait(false); + + return __response.Body; + } + /// + /// Get a billing plan
+ /// Returns an active billing plan by slug, including its products, prices, and quantity rules. This endpoint is public. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task> GetBillingPlanAsResponseAsync( + string id, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + PrepareArguments( + client: HttpClient); + PrepareGetBillingPlanArguments( + httpClient: HttpClient, + id: ref id); + + + var __authorizations = global::ResembleAI.EndPointSecurityResolver.ResolveAuthorizations( + availableAuthorizations: Authorizations, + securityRequirements: s_GetBillingPlanSecurityRequirements, + operationName: "GetBillingPlanAsync"); + + using var __timeoutCancellationTokenSource = global::ResembleAI.AutoSDKRequestOptionsSupport.CreateTimeoutCancellationTokenSource( + clientOptions: Options, + requestOptions: requestOptions, + cancellationToken: cancellationToken); + var __effectiveCancellationToken = __timeoutCancellationTokenSource?.Token ?? cancellationToken; + var __effectiveReadResponseAsString = global::ResembleAI.AutoSDKRequestOptionsSupport.GetReadResponseAsString( + clientOptions: Options, + requestOptions: requestOptions, + fallbackValue: ReadResponseAsString); + var __maxAttempts = global::ResembleAI.AutoSDKRequestOptionsSupport.GetMaxAttempts( + clientOptions: Options, + requestOptions: requestOptions, + supportsRetry: true); + + global::System.Net.Http.HttpRequestMessage __CreateHttpRequest() + { + + var __pathBuilder = new global::ResembleAI.PathBuilder( + path: $"/plans/{id}", + baseUri: ResolveBaseUri( + servers: s_GetBillingPlanServers, + defaultBaseUrl: "https://app.resemble.ai/api/v2")); + var __path = __pathBuilder.ToString(); + __path = global::ResembleAI.AutoSDKRequestOptionsSupport.AppendQueryParameters( + path: __path, + clientParameters: Options.QueryParameters, + requestParameters: requestOptions?.QueryParameters); + var __httpRequest = new global::System.Net.Http.HttpRequestMessage( + method: global::System.Net.Http.HttpMethod.Get, + requestUri: new global::System.Uri(__path, global::System.UriKind.RelativeOrAbsolute)); +#if NET6_0_OR_GREATER + __httpRequest.Version = global::System.Net.HttpVersion.Version11; + __httpRequest.VersionPolicy = global::System.Net.Http.HttpVersionPolicy.RequestVersionOrHigher; +#endif + + foreach (var __authorization in __authorizations) + { + if (__authorization.Type == "Http" || + __authorization.Type == "OAuth2" || + __authorization.Type == "OpenIdConnect") + { + __httpRequest.Headers.Authorization = new global::System.Net.Http.Headers.AuthenticationHeaderValue( + scheme: __authorization.Name, + parameter: __authorization.Value); + } + else if (__authorization.Type == "ApiKey" && + __authorization.Location == "Header") + { + __httpRequest.Headers.Add(__authorization.Name, __authorization.Value); + } + } + global::ResembleAI.AutoSDKRequestOptionsSupport.ApplyHeaders( + request: __httpRequest, + clientHeaders: Options.Headers, + requestHeaders: requestOptions?.Headers); + + PrepareRequest( + client: HttpClient, + request: __httpRequest); + PrepareGetBillingPlanRequest( + httpClient: HttpClient, + httpRequestMessage: __httpRequest, + id: id!); + + return __httpRequest; + } + + global::System.Net.Http.HttpRequestMessage? __httpRequest = null; + global::System.Net.Http.HttpResponseMessage? __response = null; + var __attemptNumber = 0; + try + { + for (var __attempt = 1; __attempt <= __maxAttempts; __attempt++) + { + __attemptNumber = __attempt; + __httpRequest = __CreateHttpRequest(); + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnBeforeRequestAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "GetBillingPlan", + methodName: "GetBillingPlanAsync", + pathTemplate: "$\"/plans/{id}\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: null, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + try + { + __response = await HttpClient.SendAsync( + request: __httpRequest, + completionOption: global::System.Net.Http.HttpCompletionOption.ResponseContentRead, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + } + catch (global::System.Net.Http.HttpRequestException __exception) + { + var __retryDelay = global::ResembleAI.AutoSDKRequestOptionsSupport.GetRetryDelay( + clientOptions: Options, + requestOptions: requestOptions, + response: null, + attempt: __attempt); + var __willRetry = __attempt < __maxAttempts && !__effectiveCancellationToken.IsCancellationRequested; + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "GetBillingPlan", + methodName: "GetBillingPlanAsync", + pathTemplate: "$\"/plans/{id}\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: null, + exception: __exception, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: __willRetry, + retryDelay: __willRetry ? __retryDelay : (global::System.TimeSpan?)null, + retryReason: "exception", + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + if (!__willRetry) + { + throw; + } + + __httpRequest.Dispose(); + __httpRequest = null; + await global::ResembleAI.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync( + retryDelay: __retryDelay, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + continue; + } + + if (__response != null && + __attempt < __maxAttempts && + global::ResembleAI.AutoSDKRequestOptionsSupport.ShouldRetryStatusCode(__response.StatusCode)) + { + var __retryDelay = global::ResembleAI.AutoSDKRequestOptionsSupport.GetRetryDelay( + clientOptions: Options, + requestOptions: requestOptions, + response: __response, + attempt: __attempt); + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "GetBillingPlan", + methodName: "GetBillingPlanAsync", + pathTemplate: "$\"/plans/{id}\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: true, + retryDelay: __retryDelay, + retryReason: "status:" + ((int)__response.StatusCode).ToString(global::System.Globalization.CultureInfo.InvariantCulture), + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + __response.Dispose(); + __response = null; + __httpRequest.Dispose(); + __httpRequest = null; + await global::ResembleAI.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync( + retryDelay: __retryDelay, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + continue; + } + + break; + } + + if (__response == null) + { + throw new global::System.InvalidOperationException("No response received."); + } + + using (__response) + { + + ProcessResponse( + client: HttpClient, + response: __response); + ProcessGetBillingPlanResponse( + httpClient: HttpClient, + httpResponseMessage: __response); + if (__response.IsSuccessStatusCode) + { + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterSuccessAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "GetBillingPlan", + methodName: "GetBillingPlanAsync", + pathTemplate: "$\"/plans/{id}\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attemptNumber, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + } + else + { + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "GetBillingPlan", + methodName: "GetBillingPlanAsync", + pathTemplate: "$\"/plans/{id}\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attemptNumber, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + } + // The requested billing resource does not exist for the current team. + if ((int)__response.StatusCode == 404) + { + string? __content_404 = null; + global::System.Exception? __exception_404 = null; + global::ResembleAI.BillingError? __value_404 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_404 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_404 = global::ResembleAI.BillingError.FromJson(__content_404, JsonSerializerContext); + } + else + { + __content_404 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_404 = global::ResembleAI.BillingError.FromJson(__content_404, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_404 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_404 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_404, + responseBody: __content_404, + responseObject: __value_404, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + // An unexpected billing error occurred. + if ((int)__response.StatusCode == 500) + { + string? __content_500 = null; + global::System.Exception? __exception_500 = null; + global::ResembleAI.BillingError? __value_500 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_500 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_500 = global::ResembleAI.BillingError.FromJson(__content_500, JsonSerializerContext); + } + else + { + __content_500 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_500 = global::ResembleAI.BillingError.FromJson(__content_500, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_500 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_500 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_500, + responseBody: __content_500, + responseObject: __value_500, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + + if (__effectiveReadResponseAsString) + { + var __content = await __response.Content.ReadAsStringAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + + ProcessResponseContent( + client: HttpClient, + response: __response, + content: ref __content); + ProcessGetBillingPlanResponseContent( + httpClient: HttpClient, + httpResponseMessage: __response, + content: ref __content); + + try + { + __response.EnsureSuccessStatusCode(); + + var __value = global::ResembleAI.BillingPlanResponse.FromJson(__content, JsonSerializerContext) ?? + throw new global::System.InvalidOperationException($"Response deserialization failed for \"{__content}\" "); + return new global::ResembleAI.AutoSDKHttpResponse( + statusCode: __response.StatusCode, + headers: global::ResembleAI.AutoSDKHttpResponse.CreateHeaders(__response), + requestUri: __response.RequestMessage?.RequestUri, + body: __value); + } + catch (global::System.Exception __ex) + { + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content ?? __response.ReasonPhrase ?? string.Empty, + innerException: __ex, + responseBody: __content, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + } + else + { + try + { + __response.EnsureSuccessStatusCode(); + using var __content = await __response.Content.ReadAsStreamAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + + var __value = await global::ResembleAI.BillingPlanResponse.FromJsonStreamAsync(__content, JsonSerializerContext).ConfigureAwait(false) ?? + throw new global::System.InvalidOperationException("Response deserialization failed."); + return new global::ResembleAI.AutoSDKHttpResponse( + statusCode: __response.StatusCode, + headers: global::ResembleAI.AutoSDKHttpResponse.CreateHeaders(__response), + requestUri: __response.RequestMessage?.RequestUri, + body: __value); + } + catch (global::System.Exception __ex) + { + string? __content = null; + try + { + __content = await __response.Content.ReadAsStringAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + } + catch (global::System.Exception) + { + } + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content ?? __response.ReasonPhrase ?? string.Empty, + innerException: __ex, + responseBody: __content, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + } + + } + } + finally + { + __httpRequest?.Dispose(); + } + } + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.AccountClient.GetBillingUsage.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.BillingPlansClient.ListBillingPlans.g.cs similarity index 79% rename from src/libs/ResembleAI/Generated/ResembleAI.AccountClient.GetBillingUsage.g.cs rename to src/libs/ResembleAI/Generated/ResembleAI.BillingPlansClient.ListBillingPlans.g.cs index 7d78f1d..0e7d27c 100644 --- a/src/libs/ResembleAI/Generated/ResembleAI.AccountClient.GetBillingUsage.g.cs +++ b/src/libs/ResembleAI/Generated/ResembleAI.BillingPlansClient.ListBillingPlans.g.cs @@ -3,10 +3,10 @@ namespace ResembleAI { - public partial class AccountClient + public partial class BillingPlansClient { - private static readonly global::ResembleAI.AutoSDKServer[] s_GetBillingUsageServers = new global::ResembleAI.AutoSDKServer[] + private static readonly global::ResembleAI.AutoSDKServer[] s_ListBillingPlansServers = new global::ResembleAI.AutoSDKServer[] { new global::ResembleAI.AutoSDKServer( id: "https-app-resemble-ai-api-v2", name: "app.resemble.ai api v2", @@ -15,7 +15,7 @@ public partial class AccountClient }; - private static readonly global::ResembleAI.EndPointSecurityRequirement s_GetBillingUsageSecurityRequirement0 = + private static readonly global::ResembleAI.EndPointSecurityRequirement s_ListBillingPlansSecurityRequirement0 = new global::ResembleAI.EndPointSecurityRequirement { Authorizations = new global::ResembleAI.EndPointAuthorizationRequirement[] @@ -29,36 +29,36 @@ public partial class AccountClient }, }, }; - private static readonly global::ResembleAI.EndPointSecurityRequirement[] s_GetBillingUsageSecurityRequirements = + private static readonly global::ResembleAI.EndPointSecurityRequirement[] s_ListBillingPlansSecurityRequirements = new global::ResembleAI.EndPointSecurityRequirement[] - { s_GetBillingUsageSecurityRequirement0, + { s_ListBillingPlansSecurityRequirement0, }; - partial void PrepareGetBillingUsageArguments( + partial void PrepareListBillingPlansArguments( global::System.Net.Http.HttpClient httpClient); - partial void PrepareGetBillingUsageRequest( + partial void PrepareListBillingPlansRequest( global::System.Net.Http.HttpClient httpClient, global::System.Net.Http.HttpRequestMessage httpRequestMessage); - partial void ProcessGetBillingUsageResponse( + partial void ProcessListBillingPlansResponse( global::System.Net.Http.HttpClient httpClient, global::System.Net.Http.HttpResponseMessage httpResponseMessage); - partial void ProcessGetBillingUsageResponseContent( + partial void ProcessListBillingPlansResponseContent( global::System.Net.Http.HttpClient httpClient, global::System.Net.Http.HttpResponseMessage httpResponseMessage, ref string content); /// - /// Get billing usage
- /// Get billing and usage information + /// List billing plans
+ /// Returns all active self-serve plans, their products, prices, and plan-specific quantity rules. This endpoint is public. ///
/// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. /// The token to cancel the operation with /// - public async global::System.Threading.Tasks.Task GetBillingUsageAsync( + public async global::System.Threading.Tasks.Task ListBillingPlansAsync( global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, global::System.Threading.CancellationToken cancellationToken = default) { - var __response = await GetBillingUsageAsResponseAsync( + var __response = await ListBillingPlansAsResponseAsync( requestOptions: requestOptions, cancellationToken: cancellationToken ).ConfigureAwait(false); @@ -66,26 +66,26 @@ partial void ProcessGetBillingUsageResponseContent( return __response.Body; } /// - /// Get billing usage
- /// Get billing and usage information + /// List billing plans
+ /// Returns all active self-serve plans, their products, prices, and plan-specific quantity rules. This endpoint is public. ///
/// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. /// The token to cancel the operation with /// - public async global::System.Threading.Tasks.Task> GetBillingUsageAsResponseAsync( + public async global::System.Threading.Tasks.Task> ListBillingPlansAsResponseAsync( global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, global::System.Threading.CancellationToken cancellationToken = default) { PrepareArguments( client: HttpClient); - PrepareGetBillingUsageArguments( + PrepareListBillingPlansArguments( httpClient: HttpClient); var __authorizations = global::ResembleAI.EndPointSecurityResolver.ResolveAuthorizations( availableAuthorizations: Authorizations, - securityRequirements: s_GetBillingUsageSecurityRequirements, - operationName: "GetBillingUsageAsync"); + securityRequirements: s_ListBillingPlansSecurityRequirements, + operationName: "ListBillingPlansAsync"); using var __timeoutCancellationTokenSource = global::ResembleAI.AutoSDKRequestOptionsSupport.CreateTimeoutCancellationTokenSource( clientOptions: Options, @@ -105,9 +105,9 @@ partial void ProcessGetBillingUsageResponseContent( { var __pathBuilder = new global::ResembleAI.PathBuilder( - path: "/account/billing_usage", + path: "/plans", baseUri: ResolveBaseUri( - servers: s_GetBillingUsageServers, + servers: s_ListBillingPlansServers, defaultBaseUrl: "https://app.resemble.ai/api/v2")); var __path = __pathBuilder.ToString(); __path = global::ResembleAI.AutoSDKRequestOptionsSupport.AppendQueryParameters( @@ -146,7 +146,7 @@ partial void ProcessGetBillingUsageResponseContent( PrepareRequest( client: HttpClient, request: __httpRequest); - PrepareGetBillingUsageRequest( + PrepareListBillingPlansRequest( httpClient: HttpClient, httpRequestMessage: __httpRequest); @@ -165,9 +165,9 @@ partial void ProcessGetBillingUsageResponseContent( await global::ResembleAI.AutoSDKRequestOptionsSupport.OnBeforeRequestAsync( clientOptions: Options, context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( - operationId: "GetBillingUsage", - methodName: "GetBillingUsageAsync", - pathTemplate: "\"/account/billing_usage\"", + operationId: "ListBillingPlans", + methodName: "ListBillingPlansAsync", + pathTemplate: "\"/plans\"", httpMethod: "GET", baseUri: BaseUri, request: __httpRequest!, @@ -199,9 +199,9 @@ partial void ProcessGetBillingUsageResponseContent( await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( clientOptions: Options, context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( - operationId: "GetBillingUsage", - methodName: "GetBillingUsageAsync", - pathTemplate: "\"/account/billing_usage\"", + operationId: "ListBillingPlans", + methodName: "ListBillingPlansAsync", + pathTemplate: "\"/plans\"", httpMethod: "GET", baseUri: BaseUri, request: __httpRequest!, @@ -240,9 +240,9 @@ partial void ProcessGetBillingUsageResponseContent( await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( clientOptions: Options, context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( - operationId: "GetBillingUsage", - methodName: "GetBillingUsageAsync", - pathTemplate: "\"/account/billing_usage\"", + operationId: "ListBillingPlans", + methodName: "ListBillingPlansAsync", + pathTemplate: "\"/plans\"", httpMethod: "GET", baseUri: BaseUri, request: __httpRequest!, @@ -280,7 +280,7 @@ partial void ProcessGetBillingUsageResponseContent( ProcessResponse( client: HttpClient, response: __response); - ProcessGetBillingUsageResponse( + ProcessListBillingPlansResponse( httpClient: HttpClient, httpResponseMessage: __response); if (__response.IsSuccessStatusCode) @@ -288,9 +288,9 @@ partial void ProcessGetBillingUsageResponseContent( await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterSuccessAsync( clientOptions: Options, context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( - operationId: "GetBillingUsage", - methodName: "GetBillingUsageAsync", - pathTemplate: "\"/account/billing_usage\"", + operationId: "ListBillingPlans", + methodName: "ListBillingPlansAsync", + pathTemplate: "\"/plans\"", httpMethod: "GET", baseUri: BaseUri, request: __httpRequest!, @@ -310,9 +310,9 @@ partial void ProcessGetBillingUsageResponseContent( await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( clientOptions: Options, context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( - operationId: "GetBillingUsage", - methodName: "GetBillingUsageAsync", - pathTemplate: "\"/account/billing_usage\"", + operationId: "ListBillingPlans", + methodName: "ListBillingPlansAsync", + pathTemplate: "\"/plans\"", httpMethod: "GET", baseUri: BaseUri, request: __httpRequest!, @@ -327,6 +327,43 @@ partial void ProcessGetBillingUsageResponseContent( retryReason: global::System.String.Empty, cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); } + // An unexpected billing error occurred. + if ((int)__response.StatusCode == 500) + { + string? __content_500 = null; + global::System.Exception? __exception_500 = null; + global::ResembleAI.BillingError? __value_500 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_500 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_500 = global::ResembleAI.BillingError.FromJson(__content_500, JsonSerializerContext); + } + else + { + __content_500 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_500 = global::ResembleAI.BillingError.FromJson(__content_500, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_500 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_500 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_500, + responseBody: __content_500, + responseObject: __value_500, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } if (__effectiveReadResponseAsString) { @@ -340,7 +377,7 @@ partial void ProcessGetBillingUsageResponseContent( client: HttpClient, response: __response, content: ref __content); - ProcessGetBillingUsageResponseContent( + ProcessListBillingPlansResponseContent( httpClient: HttpClient, httpResponseMessage: __response, content: ref __content); @@ -349,9 +386,9 @@ partial void ProcessGetBillingUsageResponseContent( { __response.EnsureSuccessStatusCode(); - var __value = global::ResembleAI.AccountGetBillingUsageResponse200.FromJson(__content, JsonSerializerContext) ?? + var __value = global::ResembleAI.BillingPlansResponse.FromJson(__content, JsonSerializerContext) ?? throw new global::System.InvalidOperationException($"Response deserialization failed for \"{__content}\" "); - return new global::ResembleAI.AutoSDKHttpResponse( + return new global::ResembleAI.AutoSDKHttpResponse( statusCode: __response.StatusCode, headers: global::ResembleAI.AutoSDKHttpResponse.CreateHeaders(__response), requestUri: __response.RequestMessage?.RequestUri, @@ -381,9 +418,9 @@ partial void ProcessGetBillingUsageResponseContent( #endif ).ConfigureAwait(false); - var __value = await global::ResembleAI.AccountGetBillingUsageResponse200.FromJsonStreamAsync(__content, JsonSerializerContext).ConfigureAwait(false) ?? + var __value = await global::ResembleAI.BillingPlansResponse.FromJsonStreamAsync(__content, JsonSerializerContext).ConfigureAwait(false) ?? throw new global::System.InvalidOperationException("Response deserialization failed."); - return new global::ResembleAI.AutoSDKHttpResponse( + return new global::ResembleAI.AutoSDKHttpResponse( statusCode: __response.StatusCode, headers: global::ResembleAI.AutoSDKHttpResponse.CreateHeaders(__response), requestUri: __response.RequestMessage?.RequestUri, diff --git a/src/libs/ResembleAI/Generated/ResembleAI.BillingPlansClient.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.BillingPlansClient.g.cs new file mode 100644 index 0000000..c454be5 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.BillingPlansClient.g.cs @@ -0,0 +1,175 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// If no httpClient is provided, a new one will be created.
+ /// If no baseUri is provided, the default baseUri from OpenAPI spec will be used. + ///
+ public sealed partial class BillingPlansClient : global::ResembleAI.IBillingPlansClient, global::System.IDisposable + { + /// + /// + /// + public const string DefaultBaseUrl = "https://app.resemble.ai/api/v2"; + + private bool _disposeHttpClient = true; + + /// + public global::System.Net.Http.HttpClient HttpClient { get; } + + /// + public System.Uri? BaseUri => HttpClient.BaseAddress; + + /// + public global::System.Collections.Generic.List Authorizations { get; } + + /// + public bool ReadResponseAsString { get; set; } +#if DEBUG + = true; +#endif + + /// + public global::ResembleAI.AutoSDKClientOptions Options { get; } + + + internal global::ResembleAI.AutoSDKServerConfiguration AutoSDKServerConfiguration { get; set; } = new global::ResembleAI.AutoSDKServerConfiguration(); + /// + /// + /// + public global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } = global::ResembleAI.SourceGenerationContext.Default; + + + /// + /// Creates a new instance of the BillingPlansClient. + /// If no httpClient is provided, a new one will be created. + /// If no baseUri is provided, the default baseUri from OpenAPI spec will be used. + /// + /// The HttpClient instance. If not provided, a new one will be created. + /// The base URL for the API. If not provided, the default baseUri from OpenAPI spec will be used. + /// The authorizations to use for the requests. + /// Dispose the HttpClient when the instance is disposed. True by default. + public BillingPlansClient( + global::System.Net.Http.HttpClient? httpClient = null, + global::System.Uri? baseUri = null, + global::System.Collections.Generic.List? authorizations = null, + bool disposeHttpClient = true) : this( + httpClient, + baseUri, + authorizations, + options: null, + disposeHttpClient: disposeHttpClient) + { + } + + /// + /// Creates a new instance of the BillingPlansClient with explicit options but no base URL override. + /// Skips passing baseUri so the default base URL from the OpenAPI spec applies. + /// + /// The HttpClient instance. If not provided, a new one will be created. + /// The authorizations to use for the requests. + /// Client-wide request defaults such as headers, query parameters, retries, and timeout. + /// Dispose the HttpClient when the instance is disposed. True by default. + public BillingPlansClient( + global::System.Net.Http.HttpClient? httpClient, + global::System.Collections.Generic.List? authorizations, + global::ResembleAI.AutoSDKClientOptions? options, + bool disposeHttpClient = true) : this( + httpClient, + baseUri: null, + authorizations, + options, + disposeHttpClient: disposeHttpClient) + { + } + + /// + /// Creates a new instance of the BillingPlansClient. + /// If no httpClient is provided, a new one will be created. + /// If no baseUri is provided, the default baseUri from OpenAPI spec will be used. + /// + /// The HttpClient instance. If not provided, a new one will be created. + /// The base URL for the API. If not provided, the default baseUri from OpenAPI spec will be used. + /// The authorizations to use for the requests. + /// Client-wide request defaults such as headers, query parameters, retries, and timeout. + /// Dispose the HttpClient when the instance is disposed. True by default. + public BillingPlansClient( + global::System.Net.Http.HttpClient? httpClient, + global::System.Uri? baseUri, + global::System.Collections.Generic.List? authorizations, + global::ResembleAI.AutoSDKClientOptions? options, + bool disposeHttpClient = true) + { + + HttpClient = httpClient ?? new global::System.Net.Http.HttpClient(); + if (baseUri is not null) + { + HttpClient.BaseAddress ??= baseUri; + } + Authorizations = authorizations ?? new global::System.Collections.Generic.List(); + Options = options ?? new global::ResembleAI.AutoSDKClientOptions(); + _disposeHttpClient = disposeHttpClient; + + AutoSDKServerConfiguration.ExplicitBaseUri = baseUri ?? httpClient?.BaseAddress; + + Initialized(HttpClient); + } + + /// + public void Dispose() + { + if (_disposeHttpClient) + { + HttpClient.Dispose(); + } + } + + partial void Initialized( + global::System.Net.Http.HttpClient client); + partial void PrepareArguments( + global::System.Net.Http.HttpClient client); + partial void PrepareRequest( + global::System.Net.Http.HttpClient client, + global::System.Net.Http.HttpRequestMessage request); + partial void ProcessResponse( + global::System.Net.Http.HttpClient client, + global::System.Net.Http.HttpResponseMessage response); + partial void ProcessResponseContent( + global::System.Net.Http.HttpClient client, + global::System.Net.Http.HttpResponseMessage response, + ref string content); + + + private global::System.Uri? ResolveBaseUri( + global::ResembleAI.AutoSDKServer[] servers, + string defaultBaseUrl) + { + if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri) + { + return explicitBaseUri; + } + + if (AutoSDKServerConfiguration.SelectedServer is global::ResembleAI.AutoSDKServer selectedServer) + { + foreach (var server in servers) + { + if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal)) + { + return server.Uri; + } + } + } + + if (servers.Length > 0) + { + return servers[0].Uri; + } + + return string.IsNullOrWhiteSpace(defaultBaseUrl) + ? HttpClient.BaseAddress + : new global::System.Uri(defaultBaseUrl, global::System.UriKind.RelativeOrAbsolute); + } + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.BillingSubscriptionsClient.ChangeBillingPlan.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.BillingSubscriptionsClient.ChangeBillingPlan.g.cs new file mode 100644 index 0000000..d205b28 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.BillingSubscriptionsClient.ChangeBillingPlan.g.cs @@ -0,0 +1,734 @@ + +#nullable enable + +namespace ResembleAI +{ + public partial class BillingSubscriptionsClient + { + + private static readonly global::ResembleAI.AutoSDKServer[] s_ChangeBillingPlanServers = new global::ResembleAI.AutoSDKServer[] + { new global::ResembleAI.AutoSDKServer( + id: "https-app-resemble-ai-api-v2", + name: "app.resemble.ai api v2", + url: "https://app.resemble.ai/api/v2", + description: ""), + }; + + + private static readonly global::ResembleAI.EndPointSecurityRequirement s_ChangeBillingPlanSecurityRequirement0 = + new global::ResembleAI.EndPointSecurityRequirement + { + Authorizations = new global::ResembleAI.EndPointAuthorizationRequirement[] + { new global::ResembleAI.EndPointAuthorizationRequirement + { + Type = "Http", + SchemeId = "HttpBearer", + Location = "Header", + Name = "Bearer", + FriendlyName = "Bearer", + }, + }, + }; + private static readonly global::ResembleAI.EndPointSecurityRequirement[] s_ChangeBillingPlanSecurityRequirements = + new global::ResembleAI.EndPointSecurityRequirement[] + { s_ChangeBillingPlanSecurityRequirement0, + }; + partial void PrepareChangeBillingPlanArguments( + global::System.Net.Http.HttpClient httpClient, + global::ResembleAI.BillingChangePlanRequest request); + partial void PrepareChangeBillingPlanRequest( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpRequestMessage httpRequestMessage, + global::ResembleAI.BillingChangePlanRequest request); + partial void ProcessChangeBillingPlanResponse( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpResponseMessage httpResponseMessage); + + partial void ProcessChangeBillingPlanResponseContent( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpResponseMessage httpResponseMessage, + ref string content); + + /// + /// Change the current subscription plan
+ /// Changes a self-serve subscription to another active plan with proration. Optional product quantities are absolute quantities on the destination plan. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task ChangeBillingPlanAsync( + + global::ResembleAI.BillingChangePlanRequest request, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + var __response = await ChangeBillingPlanAsResponseAsync( + + request: request, + requestOptions: requestOptions, + cancellationToken: cancellationToken + ).ConfigureAwait(false); + + return __response.Body; + } + /// + /// Change the current subscription plan
+ /// Changes a self-serve subscription to another active plan with proration. Optional product quantities are absolute quantities on the destination plan. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task> ChangeBillingPlanAsResponseAsync( + + global::ResembleAI.BillingChangePlanRequest request, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + request = request ?? throw new global::System.ArgumentNullException(nameof(request)); + + PrepareArguments( + client: HttpClient); + PrepareChangeBillingPlanArguments( + httpClient: HttpClient, + request: request); + + + var __authorizations = global::ResembleAI.EndPointSecurityResolver.ResolveAuthorizations( + availableAuthorizations: Authorizations, + securityRequirements: s_ChangeBillingPlanSecurityRequirements, + operationName: "ChangeBillingPlanAsync"); + + using var __timeoutCancellationTokenSource = global::ResembleAI.AutoSDKRequestOptionsSupport.CreateTimeoutCancellationTokenSource( + clientOptions: Options, + requestOptions: requestOptions, + cancellationToken: cancellationToken); + var __effectiveCancellationToken = __timeoutCancellationTokenSource?.Token ?? cancellationToken; + var __effectiveReadResponseAsString = global::ResembleAI.AutoSDKRequestOptionsSupport.GetReadResponseAsString( + clientOptions: Options, + requestOptions: requestOptions, + fallbackValue: ReadResponseAsString); + var __maxAttempts = global::ResembleAI.AutoSDKRequestOptionsSupport.GetMaxAttempts( + clientOptions: Options, + requestOptions: requestOptions, + supportsRetry: true); + + global::System.Net.Http.HttpRequestMessage __CreateHttpRequest() + { + + var __pathBuilder = new global::ResembleAI.PathBuilder( + path: "/subscription/change_plan", + baseUri: ResolveBaseUri( + servers: s_ChangeBillingPlanServers, + defaultBaseUrl: "https://app.resemble.ai/api/v2")); + var __path = __pathBuilder.ToString(); + __path = global::ResembleAI.AutoSDKRequestOptionsSupport.AppendQueryParameters( + path: __path, + clientParameters: Options.QueryParameters, + requestParameters: requestOptions?.QueryParameters); + var __httpRequest = new global::System.Net.Http.HttpRequestMessage( + method: new global::System.Net.Http.HttpMethod("PATCH"), + requestUri: new global::System.Uri(__path, global::System.UriKind.RelativeOrAbsolute)); +#if NET6_0_OR_GREATER + __httpRequest.Version = global::System.Net.HttpVersion.Version11; + __httpRequest.VersionPolicy = global::System.Net.Http.HttpVersionPolicy.RequestVersionOrHigher; +#endif + + foreach (var __authorization in __authorizations) + { + if (__authorization.Type == "Http" || + __authorization.Type == "OAuth2" || + __authorization.Type == "OpenIdConnect") + { + __httpRequest.Headers.Authorization = new global::System.Net.Http.Headers.AuthenticationHeaderValue( + scheme: __authorization.Name, + parameter: __authorization.Value); + } + else if (__authorization.Type == "ApiKey" && + __authorization.Location == "Header") + { + __httpRequest.Headers.Add(__authorization.Name, __authorization.Value); + } + } + var __httpRequestContentBody = request.ToJson(JsonSerializerContext); + var __httpRequestContent = new global::System.Net.Http.StringContent( + content: __httpRequestContentBody, + encoding: global::System.Text.Encoding.UTF8, + mediaType: "application/json"); + __httpRequest.Content = __httpRequestContent; + global::ResembleAI.AutoSDKRequestOptionsSupport.ApplyHeaders( + request: __httpRequest, + clientHeaders: Options.Headers, + requestHeaders: requestOptions?.Headers); + + PrepareRequest( + client: HttpClient, + request: __httpRequest); + PrepareChangeBillingPlanRequest( + httpClient: HttpClient, + httpRequestMessage: __httpRequest, + request: request); + + return __httpRequest; + } + + global::System.Net.Http.HttpRequestMessage? __httpRequest = null; + global::System.Net.Http.HttpResponseMessage? __response = null; + var __attemptNumber = 0; + try + { + for (var __attempt = 1; __attempt <= __maxAttempts; __attempt++) + { + __attemptNumber = __attempt; + __httpRequest = __CreateHttpRequest(); + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnBeforeRequestAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "ChangeBillingPlan", + methodName: "ChangeBillingPlanAsync", + pathTemplate: "\"/subscription/change_plan\"", + httpMethod: "PATCH", + baseUri: BaseUri, + request: __httpRequest!, + response: null, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + try + { + __response = await HttpClient.SendAsync( + request: __httpRequest, + completionOption: global::System.Net.Http.HttpCompletionOption.ResponseContentRead, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + } + catch (global::System.Net.Http.HttpRequestException __exception) + { + var __retryDelay = global::ResembleAI.AutoSDKRequestOptionsSupport.GetRetryDelay( + clientOptions: Options, + requestOptions: requestOptions, + response: null, + attempt: __attempt); + var __willRetry = __attempt < __maxAttempts && !__effectiveCancellationToken.IsCancellationRequested; + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "ChangeBillingPlan", + methodName: "ChangeBillingPlanAsync", + pathTemplate: "\"/subscription/change_plan\"", + httpMethod: "PATCH", + baseUri: BaseUri, + request: __httpRequest!, + response: null, + exception: __exception, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: __willRetry, + retryDelay: __willRetry ? __retryDelay : (global::System.TimeSpan?)null, + retryReason: "exception", + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + if (!__willRetry) + { + throw; + } + + __httpRequest.Dispose(); + __httpRequest = null; + await global::ResembleAI.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync( + retryDelay: __retryDelay, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + continue; + } + + if (__response != null && + __attempt < __maxAttempts && + global::ResembleAI.AutoSDKRequestOptionsSupport.ShouldRetryStatusCode(__response.StatusCode)) + { + var __retryDelay = global::ResembleAI.AutoSDKRequestOptionsSupport.GetRetryDelay( + clientOptions: Options, + requestOptions: requestOptions, + response: __response, + attempt: __attempt); + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "ChangeBillingPlan", + methodName: "ChangeBillingPlanAsync", + pathTemplate: "\"/subscription/change_plan\"", + httpMethod: "PATCH", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: true, + retryDelay: __retryDelay, + retryReason: "status:" + ((int)__response.StatusCode).ToString(global::System.Globalization.CultureInfo.InvariantCulture), + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + __response.Dispose(); + __response = null; + __httpRequest.Dispose(); + __httpRequest = null; + await global::ResembleAI.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync( + retryDelay: __retryDelay, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + continue; + } + + break; + } + + if (__response == null) + { + throw new global::System.InvalidOperationException("No response received."); + } + + using (__response) + { + + ProcessResponse( + client: HttpClient, + response: __response); + ProcessChangeBillingPlanResponse( + httpClient: HttpClient, + httpResponseMessage: __response); + if (__response.IsSuccessStatusCode) + { + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterSuccessAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "ChangeBillingPlan", + methodName: "ChangeBillingPlanAsync", + pathTemplate: "\"/subscription/change_plan\"", + httpMethod: "PATCH", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attemptNumber, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + } + else + { + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "ChangeBillingPlan", + methodName: "ChangeBillingPlanAsync", + pathTemplate: "\"/subscription/change_plan\"", + httpMethod: "PATCH", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attemptNumber, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + } + // The request could not be parsed or contains invalid parameters. + if ((int)__response.StatusCode == 400) + { + string? __content_400 = null; + global::System.Exception? __exception_400 = null; + global::ResembleAI.BillingError? __value_400 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_400 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_400 = global::ResembleAI.BillingError.FromJson(__content_400, JsonSerializerContext); + } + else + { + __content_400 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_400 = global::ResembleAI.BillingError.FromJson(__content_400, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_400 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_400 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_400, + responseBody: __content_400, + responseObject: __value_400, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + // A valid API key was not provided. + if ((int)__response.StatusCode == 401) + { + string? __content_401 = null; + global::System.Exception? __exception_401 = null; + global::ResembleAI.BillingError? __value_401 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_401 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_401 = global::ResembleAI.BillingError.FromJson(__content_401, JsonSerializerContext); + } + else + { + __content_401 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_401 = global::ResembleAI.BillingError.FromJson(__content_401, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_401 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_401 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_401, + responseBody: __content_401, + responseObject: __value_401, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + // Additional customer authentication is required before the billing change can complete. + if ((int)__response.StatusCode == 402) + { + string? __content_402 = null; + global::System.Exception? __exception_402 = null; + global::ResembleAI.BillingPaymentActionRequired? __value_402 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_402 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_402 = global::ResembleAI.BillingPaymentActionRequired.FromJson(__content_402, JsonSerializerContext); + } + else + { + __content_402 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_402 = global::ResembleAI.BillingPaymentActionRequired.FromJson(__content_402, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_402 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_402 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_402, + responseBody: __content_402, + responseObject: __value_402, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + // The API key owner cannot manage billing, or the Billing API is unavailable for the customer's billing arrangement. + if ((int)__response.StatusCode == 403) + { + string? __content_403 = null; + global::System.Exception? __exception_403 = null; + global::ResembleAI.BillingForbiddenError? __value_403 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_403 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_403 = global::ResembleAI.BillingForbiddenError.FromJson(__content_403, JsonSerializerContext); + } + else + { + __content_403 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_403 = global::ResembleAI.BillingForbiddenError.FromJson(__content_403, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_403 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_403 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_403, + responseBody: __content_403, + responseObject: __value_403, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + // The requested billing resource does not exist for the current team. + if ((int)__response.StatusCode == 404) + { + string? __content_404 = null; + global::System.Exception? __exception_404 = null; + global::ResembleAI.BillingError? __value_404 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_404 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_404 = global::ResembleAI.BillingError.FromJson(__content_404, JsonSerializerContext); + } + else + { + __content_404 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_404 = global::ResembleAI.BillingError.FromJson(__content_404, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_404 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_404 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_404, + responseBody: __content_404, + responseObject: __value_404, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + // The request was understood but violates a billing rule. + if ((int)__response.StatusCode == 422) + { + string? __content_422 = null; + global::System.Exception? __exception_422 = null; + global::ResembleAI.ChangeBillingPlanRequestUnprocessableEntityError? __value_422 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_422 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_422 = global::ResembleAI.ChangeBillingPlanRequestUnprocessableEntityError.FromJson(__content_422, JsonSerializerContext); + } + else + { + __content_422 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_422 = global::ResembleAI.ChangeBillingPlanRequestUnprocessableEntityError.FromJson(__content_422, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_422 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_422 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_422, + responseBody: __content_422, + responseObject: __value_422, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + // An unexpected billing error occurred. + if ((int)__response.StatusCode == 500) + { + string? __content_500 = null; + global::System.Exception? __exception_500 = null; + global::ResembleAI.BillingError? __value_500 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_500 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_500 = global::ResembleAI.BillingError.FromJson(__content_500, JsonSerializerContext); + } + else + { + __content_500 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_500 = global::ResembleAI.BillingError.FromJson(__content_500, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_500 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_500 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_500, + responseBody: __content_500, + responseObject: __value_500, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + + if (__effectiveReadResponseAsString) + { + var __content = await __response.Content.ReadAsStringAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + + ProcessResponseContent( + client: HttpClient, + response: __response, + content: ref __content); + ProcessChangeBillingPlanResponseContent( + httpClient: HttpClient, + httpResponseMessage: __response, + content: ref __content); + + try + { + __response.EnsureSuccessStatusCode(); + + var __value = global::ResembleAI.BillingSubscriptionResponse.FromJson(__content, JsonSerializerContext) ?? + throw new global::System.InvalidOperationException($"Response deserialization failed for \"{__content}\" "); + return new global::ResembleAI.AutoSDKHttpResponse( + statusCode: __response.StatusCode, + headers: global::ResembleAI.AutoSDKHttpResponse.CreateHeaders(__response), + requestUri: __response.RequestMessage?.RequestUri, + body: __value); + } + catch (global::System.Exception __ex) + { + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content ?? __response.ReasonPhrase ?? string.Empty, + innerException: __ex, + responseBody: __content, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + } + else + { + try + { + __response.EnsureSuccessStatusCode(); + using var __content = await __response.Content.ReadAsStreamAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + + var __value = await global::ResembleAI.BillingSubscriptionResponse.FromJsonStreamAsync(__content, JsonSerializerContext).ConfigureAwait(false) ?? + throw new global::System.InvalidOperationException("Response deserialization failed."); + return new global::ResembleAI.AutoSDKHttpResponse( + statusCode: __response.StatusCode, + headers: global::ResembleAI.AutoSDKHttpResponse.CreateHeaders(__response), + requestUri: __response.RequestMessage?.RequestUri, + body: __value); + } + catch (global::System.Exception __ex) + { + string? __content = null; + try + { + __content = await __response.Content.ReadAsStringAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + } + catch (global::System.Exception) + { + } + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content ?? __response.ReasonPhrase ?? string.Empty, + innerException: __ex, + responseBody: __content, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + } + + } + } + finally + { + __httpRequest?.Dispose(); + } + } + /// + /// Change the current subscription plan
+ /// Changes a self-serve subscription to another active plan with proration. Optional product quantities are absolute quantities on the destination plan. + ///
+ /// + /// + /// Optional map of product slugs to desired quantities on the new plan. + /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task ChangeBillingPlanAsync( + string planSlug, + global::System.Collections.Generic.Dictionary? productQuantities = default, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + var __request = new global::ResembleAI.BillingChangePlanRequest + { + PlanSlug = planSlug, + ProductQuantities = productQuantities, + }; + + return await ChangeBillingPlanAsync( + request: __request, + requestOptions: requestOptions, + cancellationToken: cancellationToken).ConfigureAwait(false); + } + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.BillingSubscriptionsClient.ConfirmBillingSubscriptionPayment.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.BillingSubscriptionsClient.ConfirmBillingSubscriptionPayment.g.cs new file mode 100644 index 0000000..6aa0c96 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.BillingSubscriptionsClient.ConfirmBillingSubscriptionPayment.g.cs @@ -0,0 +1,694 @@ + +#nullable enable + +namespace ResembleAI +{ + public partial class BillingSubscriptionsClient + { + + private static readonly global::ResembleAI.AutoSDKServer[] s_ConfirmBillingSubscriptionPaymentServers = new global::ResembleAI.AutoSDKServer[] + { new global::ResembleAI.AutoSDKServer( + id: "https-app-resemble-ai-api-v2", + name: "app.resemble.ai api v2", + url: "https://app.resemble.ai/api/v2", + description: ""), + }; + + + private static readonly global::ResembleAI.EndPointSecurityRequirement s_ConfirmBillingSubscriptionPaymentSecurityRequirement0 = + new global::ResembleAI.EndPointSecurityRequirement + { + Authorizations = new global::ResembleAI.EndPointAuthorizationRequirement[] + { new global::ResembleAI.EndPointAuthorizationRequirement + { + Type = "Http", + SchemeId = "HttpBearer", + Location = "Header", + Name = "Bearer", + FriendlyName = "Bearer", + }, + }, + }; + private static readonly global::ResembleAI.EndPointSecurityRequirement[] s_ConfirmBillingSubscriptionPaymentSecurityRequirements = + new global::ResembleAI.EndPointSecurityRequirement[] + { s_ConfirmBillingSubscriptionPaymentSecurityRequirement0, + }; + partial void PrepareConfirmBillingSubscriptionPaymentArguments( + global::System.Net.Http.HttpClient httpClient, + global::ResembleAI.BillingConfirmPaymentRequest request); + partial void PrepareConfirmBillingSubscriptionPaymentRequest( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpRequestMessage httpRequestMessage, + global::ResembleAI.BillingConfirmPaymentRequest request); + partial void ProcessConfirmBillingSubscriptionPaymentResponse( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpResponseMessage httpResponseMessage); + + partial void ProcessConfirmBillingSubscriptionPaymentResponseContent( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpResponseMessage httpResponseMessage, + ref string content); + + /// + /// Confirm a subscription payment
+ /// Synchronizes the subscription after the customer completes the additional payment authentication requested by a quantity or plan change. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task ConfirmBillingSubscriptionPaymentAsync( + + global::ResembleAI.BillingConfirmPaymentRequest request, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + var __response = await ConfirmBillingSubscriptionPaymentAsResponseAsync( + + request: request, + requestOptions: requestOptions, + cancellationToken: cancellationToken + ).ConfigureAwait(false); + + return __response.Body; + } + /// + /// Confirm a subscription payment
+ /// Synchronizes the subscription after the customer completes the additional payment authentication requested by a quantity or plan change. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task> ConfirmBillingSubscriptionPaymentAsResponseAsync( + + global::ResembleAI.BillingConfirmPaymentRequest request, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + request = request ?? throw new global::System.ArgumentNullException(nameof(request)); + + PrepareArguments( + client: HttpClient); + PrepareConfirmBillingSubscriptionPaymentArguments( + httpClient: HttpClient, + request: request); + + + var __authorizations = global::ResembleAI.EndPointSecurityResolver.ResolveAuthorizations( + availableAuthorizations: Authorizations, + securityRequirements: s_ConfirmBillingSubscriptionPaymentSecurityRequirements, + operationName: "ConfirmBillingSubscriptionPaymentAsync"); + + using var __timeoutCancellationTokenSource = global::ResembleAI.AutoSDKRequestOptionsSupport.CreateTimeoutCancellationTokenSource( + clientOptions: Options, + requestOptions: requestOptions, + cancellationToken: cancellationToken); + var __effectiveCancellationToken = __timeoutCancellationTokenSource?.Token ?? cancellationToken; + var __effectiveReadResponseAsString = global::ResembleAI.AutoSDKRequestOptionsSupport.GetReadResponseAsString( + clientOptions: Options, + requestOptions: requestOptions, + fallbackValue: ReadResponseAsString); + var __maxAttempts = global::ResembleAI.AutoSDKRequestOptionsSupport.GetMaxAttempts( + clientOptions: Options, + requestOptions: requestOptions, + supportsRetry: true); + + global::System.Net.Http.HttpRequestMessage __CreateHttpRequest() + { + + var __pathBuilder = new global::ResembleAI.PathBuilder( + path: "/subscription/confirm_payment", + baseUri: ResolveBaseUri( + servers: s_ConfirmBillingSubscriptionPaymentServers, + defaultBaseUrl: "https://app.resemble.ai/api/v2")); + var __path = __pathBuilder.ToString(); + __path = global::ResembleAI.AutoSDKRequestOptionsSupport.AppendQueryParameters( + path: __path, + clientParameters: Options.QueryParameters, + requestParameters: requestOptions?.QueryParameters); + var __httpRequest = new global::System.Net.Http.HttpRequestMessage( + method: global::System.Net.Http.HttpMethod.Post, + requestUri: new global::System.Uri(__path, global::System.UriKind.RelativeOrAbsolute)); +#if NET6_0_OR_GREATER + __httpRequest.Version = global::System.Net.HttpVersion.Version11; + __httpRequest.VersionPolicy = global::System.Net.Http.HttpVersionPolicy.RequestVersionOrHigher; +#endif + + foreach (var __authorization in __authorizations) + { + if (__authorization.Type == "Http" || + __authorization.Type == "OAuth2" || + __authorization.Type == "OpenIdConnect") + { + __httpRequest.Headers.Authorization = new global::System.Net.Http.Headers.AuthenticationHeaderValue( + scheme: __authorization.Name, + parameter: __authorization.Value); + } + else if (__authorization.Type == "ApiKey" && + __authorization.Location == "Header") + { + __httpRequest.Headers.Add(__authorization.Name, __authorization.Value); + } + } + var __httpRequestContentBody = request.ToJson(JsonSerializerContext); + var __httpRequestContent = new global::System.Net.Http.StringContent( + content: __httpRequestContentBody, + encoding: global::System.Text.Encoding.UTF8, + mediaType: "application/json"); + __httpRequest.Content = __httpRequestContent; + global::ResembleAI.AutoSDKRequestOptionsSupport.ApplyHeaders( + request: __httpRequest, + clientHeaders: Options.Headers, + requestHeaders: requestOptions?.Headers); + + PrepareRequest( + client: HttpClient, + request: __httpRequest); + PrepareConfirmBillingSubscriptionPaymentRequest( + httpClient: HttpClient, + httpRequestMessage: __httpRequest, + request: request); + + return __httpRequest; + } + + global::System.Net.Http.HttpRequestMessage? __httpRequest = null; + global::System.Net.Http.HttpResponseMessage? __response = null; + var __attemptNumber = 0; + try + { + for (var __attempt = 1; __attempt <= __maxAttempts; __attempt++) + { + __attemptNumber = __attempt; + __httpRequest = __CreateHttpRequest(); + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnBeforeRequestAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "ConfirmBillingSubscriptionPayment", + methodName: "ConfirmBillingSubscriptionPaymentAsync", + pathTemplate: "\"/subscription/confirm_payment\"", + httpMethod: "POST", + baseUri: BaseUri, + request: __httpRequest!, + response: null, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + try + { + __response = await HttpClient.SendAsync( + request: __httpRequest, + completionOption: global::System.Net.Http.HttpCompletionOption.ResponseContentRead, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + } + catch (global::System.Net.Http.HttpRequestException __exception) + { + var __retryDelay = global::ResembleAI.AutoSDKRequestOptionsSupport.GetRetryDelay( + clientOptions: Options, + requestOptions: requestOptions, + response: null, + attempt: __attempt); + var __willRetry = __attempt < __maxAttempts && !__effectiveCancellationToken.IsCancellationRequested; + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "ConfirmBillingSubscriptionPayment", + methodName: "ConfirmBillingSubscriptionPaymentAsync", + pathTemplate: "\"/subscription/confirm_payment\"", + httpMethod: "POST", + baseUri: BaseUri, + request: __httpRequest!, + response: null, + exception: __exception, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: __willRetry, + retryDelay: __willRetry ? __retryDelay : (global::System.TimeSpan?)null, + retryReason: "exception", + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + if (!__willRetry) + { + throw; + } + + __httpRequest.Dispose(); + __httpRequest = null; + await global::ResembleAI.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync( + retryDelay: __retryDelay, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + continue; + } + + if (__response != null && + __attempt < __maxAttempts && + global::ResembleAI.AutoSDKRequestOptionsSupport.ShouldRetryStatusCode(__response.StatusCode)) + { + var __retryDelay = global::ResembleAI.AutoSDKRequestOptionsSupport.GetRetryDelay( + clientOptions: Options, + requestOptions: requestOptions, + response: __response, + attempt: __attempt); + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "ConfirmBillingSubscriptionPayment", + methodName: "ConfirmBillingSubscriptionPaymentAsync", + pathTemplate: "\"/subscription/confirm_payment\"", + httpMethod: "POST", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: true, + retryDelay: __retryDelay, + retryReason: "status:" + ((int)__response.StatusCode).ToString(global::System.Globalization.CultureInfo.InvariantCulture), + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + __response.Dispose(); + __response = null; + __httpRequest.Dispose(); + __httpRequest = null; + await global::ResembleAI.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync( + retryDelay: __retryDelay, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + continue; + } + + break; + } + + if (__response == null) + { + throw new global::System.InvalidOperationException("No response received."); + } + + using (__response) + { + + ProcessResponse( + client: HttpClient, + response: __response); + ProcessConfirmBillingSubscriptionPaymentResponse( + httpClient: HttpClient, + httpResponseMessage: __response); + if (__response.IsSuccessStatusCode) + { + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterSuccessAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "ConfirmBillingSubscriptionPayment", + methodName: "ConfirmBillingSubscriptionPaymentAsync", + pathTemplate: "\"/subscription/confirm_payment\"", + httpMethod: "POST", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attemptNumber, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + } + else + { + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "ConfirmBillingSubscriptionPayment", + methodName: "ConfirmBillingSubscriptionPaymentAsync", + pathTemplate: "\"/subscription/confirm_payment\"", + httpMethod: "POST", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attemptNumber, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + } + // The request could not be parsed or contains invalid parameters. + if ((int)__response.StatusCode == 400) + { + string? __content_400 = null; + global::System.Exception? __exception_400 = null; + global::ResembleAI.BillingError? __value_400 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_400 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_400 = global::ResembleAI.BillingError.FromJson(__content_400, JsonSerializerContext); + } + else + { + __content_400 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_400 = global::ResembleAI.BillingError.FromJson(__content_400, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_400 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_400 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_400, + responseBody: __content_400, + responseObject: __value_400, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + // A valid API key was not provided. + if ((int)__response.StatusCode == 401) + { + string? __content_401 = null; + global::System.Exception? __exception_401 = null; + global::ResembleAI.BillingError? __value_401 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_401 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_401 = global::ResembleAI.BillingError.FromJson(__content_401, JsonSerializerContext); + } + else + { + __content_401 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_401 = global::ResembleAI.BillingError.FromJson(__content_401, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_401 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_401 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_401, + responseBody: __content_401, + responseObject: __value_401, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + // The API key owner cannot manage billing, or the Billing API is unavailable for the customer's billing arrangement. + if ((int)__response.StatusCode == 403) + { + string? __content_403 = null; + global::System.Exception? __exception_403 = null; + global::ResembleAI.BillingForbiddenError? __value_403 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_403 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_403 = global::ResembleAI.BillingForbiddenError.FromJson(__content_403, JsonSerializerContext); + } + else + { + __content_403 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_403 = global::ResembleAI.BillingForbiddenError.FromJson(__content_403, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_403 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_403 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_403, + responseBody: __content_403, + responseObject: __value_403, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + // The requested billing resource does not exist for the current team. + if ((int)__response.StatusCode == 404) + { + string? __content_404 = null; + global::System.Exception? __exception_404 = null; + global::ResembleAI.BillingError? __value_404 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_404 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_404 = global::ResembleAI.BillingError.FromJson(__content_404, JsonSerializerContext); + } + else + { + __content_404 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_404 = global::ResembleAI.BillingError.FromJson(__content_404, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_404 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_404 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_404, + responseBody: __content_404, + responseObject: __value_404, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + // The request was understood but violates a billing rule. + if ((int)__response.StatusCode == 422) + { + string? __content_422 = null; + global::System.Exception? __exception_422 = null; + global::ResembleAI.ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError? __value_422 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_422 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_422 = global::ResembleAI.ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError.FromJson(__content_422, JsonSerializerContext); + } + else + { + __content_422 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_422 = global::ResembleAI.ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError.FromJson(__content_422, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_422 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_422 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_422, + responseBody: __content_422, + responseObject: __value_422, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + // An unexpected billing error occurred. + if ((int)__response.StatusCode == 500) + { + string? __content_500 = null; + global::System.Exception? __exception_500 = null; + global::ResembleAI.BillingError? __value_500 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_500 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_500 = global::ResembleAI.BillingError.FromJson(__content_500, JsonSerializerContext); + } + else + { + __content_500 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_500 = global::ResembleAI.BillingError.FromJson(__content_500, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_500 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_500 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_500, + responseBody: __content_500, + responseObject: __value_500, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + + if (__effectiveReadResponseAsString) + { + var __content = await __response.Content.ReadAsStringAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + + ProcessResponseContent( + client: HttpClient, + response: __response, + content: ref __content); + ProcessConfirmBillingSubscriptionPaymentResponseContent( + httpClient: HttpClient, + httpResponseMessage: __response, + content: ref __content); + + try + { + __response.EnsureSuccessStatusCode(); + + var __value = global::ResembleAI.BillingSubscriptionResponse.FromJson(__content, JsonSerializerContext) ?? + throw new global::System.InvalidOperationException($"Response deserialization failed for \"{__content}\" "); + return new global::ResembleAI.AutoSDKHttpResponse( + statusCode: __response.StatusCode, + headers: global::ResembleAI.AutoSDKHttpResponse.CreateHeaders(__response), + requestUri: __response.RequestMessage?.RequestUri, + body: __value); + } + catch (global::System.Exception __ex) + { + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content ?? __response.ReasonPhrase ?? string.Empty, + innerException: __ex, + responseBody: __content, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + } + else + { + try + { + __response.EnsureSuccessStatusCode(); + using var __content = await __response.Content.ReadAsStreamAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + + var __value = await global::ResembleAI.BillingSubscriptionResponse.FromJsonStreamAsync(__content, JsonSerializerContext).ConfigureAwait(false) ?? + throw new global::System.InvalidOperationException("Response deserialization failed."); + return new global::ResembleAI.AutoSDKHttpResponse( + statusCode: __response.StatusCode, + headers: global::ResembleAI.AutoSDKHttpResponse.CreateHeaders(__response), + requestUri: __response.RequestMessage?.RequestUri, + body: __value); + } + catch (global::System.Exception __ex) + { + string? __content = null; + try + { + __content = await __response.Content.ReadAsStringAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + } + catch (global::System.Exception) + { + } + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content ?? __response.ReasonPhrase ?? string.Empty, + innerException: __ex, + responseBody: __content, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + } + + } + } + finally + { + __httpRequest?.Dispose(); + } + } + /// + /// Confirm a subscription payment
+ /// Synchronizes the subscription after the customer completes the additional payment authentication requested by a quantity or plan change. + ///
+ /// + /// Payment intent identifier completed by the customer. + /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task ConfirmBillingSubscriptionPaymentAsync( + string paymentIntentId, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + var __request = new global::ResembleAI.BillingConfirmPaymentRequest + { + PaymentIntentId = paymentIntentId, + }; + + return await ConfirmBillingSubscriptionPaymentAsync( + request: __request, + requestOptions: requestOptions, + cancellationToken: cancellationToken).ConfigureAwait(false); + } + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.BillingSubscriptionsClient.GetBillingSubscription.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.BillingSubscriptionsClient.GetBillingSubscription.g.cs new file mode 100644 index 0000000..73ae7f3 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.BillingSubscriptionsClient.GetBillingSubscription.g.cs @@ -0,0 +1,538 @@ + +#nullable enable + +namespace ResembleAI +{ + public partial class BillingSubscriptionsClient + { + + private static readonly global::ResembleAI.AutoSDKServer[] s_GetBillingSubscriptionServers = new global::ResembleAI.AutoSDKServer[] + { new global::ResembleAI.AutoSDKServer( + id: "https-app-resemble-ai-api-v2", + name: "app.resemble.ai api v2", + url: "https://app.resemble.ai/api/v2", + description: ""), + }; + + + private static readonly global::ResembleAI.EndPointSecurityRequirement s_GetBillingSubscriptionSecurityRequirement0 = + new global::ResembleAI.EndPointSecurityRequirement + { + Authorizations = new global::ResembleAI.EndPointAuthorizationRequirement[] + { new global::ResembleAI.EndPointAuthorizationRequirement + { + Type = "Http", + SchemeId = "HttpBearer", + Location = "Header", + Name = "Bearer", + FriendlyName = "Bearer", + }, + }, + }; + private static readonly global::ResembleAI.EndPointSecurityRequirement[] s_GetBillingSubscriptionSecurityRequirements = + new global::ResembleAI.EndPointSecurityRequirement[] + { s_GetBillingSubscriptionSecurityRequirement0, + }; + partial void PrepareGetBillingSubscriptionArguments( + global::System.Net.Http.HttpClient httpClient); + partial void PrepareGetBillingSubscriptionRequest( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpRequestMessage httpRequestMessage); + partial void ProcessGetBillingSubscriptionResponse( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpResponseMessage httpResponseMessage); + + partial void ProcessGetBillingSubscriptionResponseContent( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpResponseMessage httpResponseMessage, + ref string content); + + /// + /// Get the current subscription
+ /// Returns the current team's active, past-due, or delinquent subscription. Returns a null subscription when no customer-visible subscription exists. + ///
+ /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task GetBillingSubscriptionAsync( + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + var __response = await GetBillingSubscriptionAsResponseAsync( + requestOptions: requestOptions, + cancellationToken: cancellationToken + ).ConfigureAwait(false); + + return __response.Body; + } + /// + /// Get the current subscription
+ /// Returns the current team's active, past-due, or delinquent subscription. Returns a null subscription when no customer-visible subscription exists. + ///
+ /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task> GetBillingSubscriptionAsResponseAsync( + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + PrepareArguments( + client: HttpClient); + PrepareGetBillingSubscriptionArguments( + httpClient: HttpClient); + + + var __authorizations = global::ResembleAI.EndPointSecurityResolver.ResolveAuthorizations( + availableAuthorizations: Authorizations, + securityRequirements: s_GetBillingSubscriptionSecurityRequirements, + operationName: "GetBillingSubscriptionAsync"); + + using var __timeoutCancellationTokenSource = global::ResembleAI.AutoSDKRequestOptionsSupport.CreateTimeoutCancellationTokenSource( + clientOptions: Options, + requestOptions: requestOptions, + cancellationToken: cancellationToken); + var __effectiveCancellationToken = __timeoutCancellationTokenSource?.Token ?? cancellationToken; + var __effectiveReadResponseAsString = global::ResembleAI.AutoSDKRequestOptionsSupport.GetReadResponseAsString( + clientOptions: Options, + requestOptions: requestOptions, + fallbackValue: ReadResponseAsString); + var __maxAttempts = global::ResembleAI.AutoSDKRequestOptionsSupport.GetMaxAttempts( + clientOptions: Options, + requestOptions: requestOptions, + supportsRetry: true); + + global::System.Net.Http.HttpRequestMessage __CreateHttpRequest() + { + + var __pathBuilder = new global::ResembleAI.PathBuilder( + path: "/subscription", + baseUri: ResolveBaseUri( + servers: s_GetBillingSubscriptionServers, + defaultBaseUrl: "https://app.resemble.ai/api/v2")); + var __path = __pathBuilder.ToString(); + __path = global::ResembleAI.AutoSDKRequestOptionsSupport.AppendQueryParameters( + path: __path, + clientParameters: Options.QueryParameters, + requestParameters: requestOptions?.QueryParameters); + var __httpRequest = new global::System.Net.Http.HttpRequestMessage( + method: global::System.Net.Http.HttpMethod.Get, + requestUri: new global::System.Uri(__path, global::System.UriKind.RelativeOrAbsolute)); +#if NET6_0_OR_GREATER + __httpRequest.Version = global::System.Net.HttpVersion.Version11; + __httpRequest.VersionPolicy = global::System.Net.Http.HttpVersionPolicy.RequestVersionOrHigher; +#endif + + foreach (var __authorization in __authorizations) + { + if (__authorization.Type == "Http" || + __authorization.Type == "OAuth2" || + __authorization.Type == "OpenIdConnect") + { + __httpRequest.Headers.Authorization = new global::System.Net.Http.Headers.AuthenticationHeaderValue( + scheme: __authorization.Name, + parameter: __authorization.Value); + } + else if (__authorization.Type == "ApiKey" && + __authorization.Location == "Header") + { + __httpRequest.Headers.Add(__authorization.Name, __authorization.Value); + } + } + global::ResembleAI.AutoSDKRequestOptionsSupport.ApplyHeaders( + request: __httpRequest, + clientHeaders: Options.Headers, + requestHeaders: requestOptions?.Headers); + + PrepareRequest( + client: HttpClient, + request: __httpRequest); + PrepareGetBillingSubscriptionRequest( + httpClient: HttpClient, + httpRequestMessage: __httpRequest); + + return __httpRequest; + } + + global::System.Net.Http.HttpRequestMessage? __httpRequest = null; + global::System.Net.Http.HttpResponseMessage? __response = null; + var __attemptNumber = 0; + try + { + for (var __attempt = 1; __attempt <= __maxAttempts; __attempt++) + { + __attemptNumber = __attempt; + __httpRequest = __CreateHttpRequest(); + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnBeforeRequestAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "GetBillingSubscription", + methodName: "GetBillingSubscriptionAsync", + pathTemplate: "\"/subscription\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: null, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + try + { + __response = await HttpClient.SendAsync( + request: __httpRequest, + completionOption: global::System.Net.Http.HttpCompletionOption.ResponseContentRead, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + } + catch (global::System.Net.Http.HttpRequestException __exception) + { + var __retryDelay = global::ResembleAI.AutoSDKRequestOptionsSupport.GetRetryDelay( + clientOptions: Options, + requestOptions: requestOptions, + response: null, + attempt: __attempt); + var __willRetry = __attempt < __maxAttempts && !__effectiveCancellationToken.IsCancellationRequested; + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "GetBillingSubscription", + methodName: "GetBillingSubscriptionAsync", + pathTemplate: "\"/subscription\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: null, + exception: __exception, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: __willRetry, + retryDelay: __willRetry ? __retryDelay : (global::System.TimeSpan?)null, + retryReason: "exception", + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + if (!__willRetry) + { + throw; + } + + __httpRequest.Dispose(); + __httpRequest = null; + await global::ResembleAI.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync( + retryDelay: __retryDelay, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + continue; + } + + if (__response != null && + __attempt < __maxAttempts && + global::ResembleAI.AutoSDKRequestOptionsSupport.ShouldRetryStatusCode(__response.StatusCode)) + { + var __retryDelay = global::ResembleAI.AutoSDKRequestOptionsSupport.GetRetryDelay( + clientOptions: Options, + requestOptions: requestOptions, + response: __response, + attempt: __attempt); + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "GetBillingSubscription", + methodName: "GetBillingSubscriptionAsync", + pathTemplate: "\"/subscription\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: true, + retryDelay: __retryDelay, + retryReason: "status:" + ((int)__response.StatusCode).ToString(global::System.Globalization.CultureInfo.InvariantCulture), + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + __response.Dispose(); + __response = null; + __httpRequest.Dispose(); + __httpRequest = null; + await global::ResembleAI.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync( + retryDelay: __retryDelay, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + continue; + } + + break; + } + + if (__response == null) + { + throw new global::System.InvalidOperationException("No response received."); + } + + using (__response) + { + + ProcessResponse( + client: HttpClient, + response: __response); + ProcessGetBillingSubscriptionResponse( + httpClient: HttpClient, + httpResponseMessage: __response); + if (__response.IsSuccessStatusCode) + { + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterSuccessAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "GetBillingSubscription", + methodName: "GetBillingSubscriptionAsync", + pathTemplate: "\"/subscription\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attemptNumber, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + } + else + { + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "GetBillingSubscription", + methodName: "GetBillingSubscriptionAsync", + pathTemplate: "\"/subscription\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attemptNumber, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + } + // A valid API key was not provided. + if ((int)__response.StatusCode == 401) + { + string? __content_401 = null; + global::System.Exception? __exception_401 = null; + global::ResembleAI.BillingError? __value_401 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_401 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_401 = global::ResembleAI.BillingError.FromJson(__content_401, JsonSerializerContext); + } + else + { + __content_401 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_401 = global::ResembleAI.BillingError.FromJson(__content_401, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_401 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_401 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_401, + responseBody: __content_401, + responseObject: __value_401, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + // The API key owner cannot manage billing, or the Billing API is unavailable for the customer's billing arrangement. + if ((int)__response.StatusCode == 403) + { + string? __content_403 = null; + global::System.Exception? __exception_403 = null; + global::ResembleAI.BillingForbiddenError? __value_403 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_403 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_403 = global::ResembleAI.BillingForbiddenError.FromJson(__content_403, JsonSerializerContext); + } + else + { + __content_403 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_403 = global::ResembleAI.BillingForbiddenError.FromJson(__content_403, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_403 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_403 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_403, + responseBody: __content_403, + responseObject: __value_403, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + // An unexpected billing error occurred. + if ((int)__response.StatusCode == 500) + { + string? __content_500 = null; + global::System.Exception? __exception_500 = null; + global::ResembleAI.BillingError? __value_500 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_500 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_500 = global::ResembleAI.BillingError.FromJson(__content_500, JsonSerializerContext); + } + else + { + __content_500 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_500 = global::ResembleAI.BillingError.FromJson(__content_500, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_500 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_500 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_500, + responseBody: __content_500, + responseObject: __value_500, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + + if (__effectiveReadResponseAsString) + { + var __content = await __response.Content.ReadAsStringAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + + ProcessResponseContent( + client: HttpClient, + response: __response, + content: ref __content); + ProcessGetBillingSubscriptionResponseContent( + httpClient: HttpClient, + httpResponseMessage: __response, + content: ref __content); + + try + { + __response.EnsureSuccessStatusCode(); + + var __value = global::ResembleAI.BillingSubscriptionResponse.FromJson(__content, JsonSerializerContext) ?? + throw new global::System.InvalidOperationException($"Response deserialization failed for \"{__content}\" "); + return new global::ResembleAI.AutoSDKHttpResponse( + statusCode: __response.StatusCode, + headers: global::ResembleAI.AutoSDKHttpResponse.CreateHeaders(__response), + requestUri: __response.RequestMessage?.RequestUri, + body: __value); + } + catch (global::System.Exception __ex) + { + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content ?? __response.ReasonPhrase ?? string.Empty, + innerException: __ex, + responseBody: __content, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + } + else + { + try + { + __response.EnsureSuccessStatusCode(); + using var __content = await __response.Content.ReadAsStreamAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + + var __value = await global::ResembleAI.BillingSubscriptionResponse.FromJsonStreamAsync(__content, JsonSerializerContext).ConfigureAwait(false) ?? + throw new global::System.InvalidOperationException("Response deserialization failed."); + return new global::ResembleAI.AutoSDKHttpResponse( + statusCode: __response.StatusCode, + headers: global::ResembleAI.AutoSDKHttpResponse.CreateHeaders(__response), + requestUri: __response.RequestMessage?.RequestUri, + body: __value); + } + catch (global::System.Exception __ex) + { + string? __content = null; + try + { + __content = await __response.Content.ReadAsStringAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + } + catch (global::System.Exception) + { + } + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content ?? __response.ReasonPhrase ?? string.Empty, + innerException: __ex, + responseBody: __content, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + } + + } + } + finally + { + __httpRequest?.Dispose(); + } + } + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.BillingSubscriptionsClient.UpdateBillingSubscriptionProducts.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.BillingSubscriptionsClient.UpdateBillingSubscriptionProducts.g.cs new file mode 100644 index 0000000..00a5004 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.BillingSubscriptionsClient.UpdateBillingSubscriptionProducts.g.cs @@ -0,0 +1,729 @@ + +#nullable enable + +namespace ResembleAI +{ + public partial class BillingSubscriptionsClient + { + + private static readonly global::ResembleAI.AutoSDKServer[] s_UpdateBillingSubscriptionProductsServers = new global::ResembleAI.AutoSDKServer[] + { new global::ResembleAI.AutoSDKServer( + id: "https-app-resemble-ai-api-v2", + name: "app.resemble.ai api v2", + url: "https://app.resemble.ai/api/v2", + description: ""), + }; + + + private static readonly global::ResembleAI.EndPointSecurityRequirement s_UpdateBillingSubscriptionProductsSecurityRequirement0 = + new global::ResembleAI.EndPointSecurityRequirement + { + Authorizations = new global::ResembleAI.EndPointAuthorizationRequirement[] + { new global::ResembleAI.EndPointAuthorizationRequirement + { + Type = "Http", + SchemeId = "HttpBearer", + Location = "Header", + Name = "Bearer", + FriendlyName = "Bearer", + }, + }, + }; + private static readonly global::ResembleAI.EndPointSecurityRequirement[] s_UpdateBillingSubscriptionProductsSecurityRequirements = + new global::ResembleAI.EndPointSecurityRequirement[] + { s_UpdateBillingSubscriptionProductsSecurityRequirement0, + }; + partial void PrepareUpdateBillingSubscriptionProductsArguments( + global::System.Net.Http.HttpClient httpClient, + global::ResembleAI.BillingUpdateProductsRequest request); + partial void PrepareUpdateBillingSubscriptionProductsRequest( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpRequestMessage httpRequestMessage, + global::ResembleAI.BillingUpdateProductsRequest request); + partial void ProcessUpdateBillingSubscriptionProductsResponse( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpResponseMessage httpResponseMessage); + + partial void ProcessUpdateBillingSubscriptionProductsResponseContent( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpResponseMessage httpResponseMessage, + ref string content); + + /// + /// Update subscription product quantities
+ /// Updates one or more adjustable subscription products atomically. Each `new_quantity` is the desired absolute total, not an increment. A product is adjustable when its category is `subscription` and its `plan_product.allow_additional_usage` value is true. Quantities must remain within the plan's minimum and maximum and cannot be reduced below `consumed_quantity`. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task UpdateBillingSubscriptionProductsAsync( + + global::ResembleAI.BillingUpdateProductsRequest request, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + var __response = await UpdateBillingSubscriptionProductsAsResponseAsync( + + request: request, + requestOptions: requestOptions, + cancellationToken: cancellationToken + ).ConfigureAwait(false); + + return __response.Body; + } + /// + /// Update subscription product quantities
+ /// Updates one or more adjustable subscription products atomically. Each `new_quantity` is the desired absolute total, not an increment. A product is adjustable when its category is `subscription` and its `plan_product.allow_additional_usage` value is true. Quantities must remain within the plan's minimum and maximum and cannot be reduced below `consumed_quantity`. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task> UpdateBillingSubscriptionProductsAsResponseAsync( + + global::ResembleAI.BillingUpdateProductsRequest request, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + request = request ?? throw new global::System.ArgumentNullException(nameof(request)); + + PrepareArguments( + client: HttpClient); + PrepareUpdateBillingSubscriptionProductsArguments( + httpClient: HttpClient, + request: request); + + + var __authorizations = global::ResembleAI.EndPointSecurityResolver.ResolveAuthorizations( + availableAuthorizations: Authorizations, + securityRequirements: s_UpdateBillingSubscriptionProductsSecurityRequirements, + operationName: "UpdateBillingSubscriptionProductsAsync"); + + using var __timeoutCancellationTokenSource = global::ResembleAI.AutoSDKRequestOptionsSupport.CreateTimeoutCancellationTokenSource( + clientOptions: Options, + requestOptions: requestOptions, + cancellationToken: cancellationToken); + var __effectiveCancellationToken = __timeoutCancellationTokenSource?.Token ?? cancellationToken; + var __effectiveReadResponseAsString = global::ResembleAI.AutoSDKRequestOptionsSupport.GetReadResponseAsString( + clientOptions: Options, + requestOptions: requestOptions, + fallbackValue: ReadResponseAsString); + var __maxAttempts = global::ResembleAI.AutoSDKRequestOptionsSupport.GetMaxAttempts( + clientOptions: Options, + requestOptions: requestOptions, + supportsRetry: true); + + global::System.Net.Http.HttpRequestMessage __CreateHttpRequest() + { + + var __pathBuilder = new global::ResembleAI.PathBuilder( + path: "/subscription/products", + baseUri: ResolveBaseUri( + servers: s_UpdateBillingSubscriptionProductsServers, + defaultBaseUrl: "https://app.resemble.ai/api/v2")); + var __path = __pathBuilder.ToString(); + __path = global::ResembleAI.AutoSDKRequestOptionsSupport.AppendQueryParameters( + path: __path, + clientParameters: Options.QueryParameters, + requestParameters: requestOptions?.QueryParameters); + var __httpRequest = new global::System.Net.Http.HttpRequestMessage( + method: new global::System.Net.Http.HttpMethod("PATCH"), + requestUri: new global::System.Uri(__path, global::System.UriKind.RelativeOrAbsolute)); +#if NET6_0_OR_GREATER + __httpRequest.Version = global::System.Net.HttpVersion.Version11; + __httpRequest.VersionPolicy = global::System.Net.Http.HttpVersionPolicy.RequestVersionOrHigher; +#endif + + foreach (var __authorization in __authorizations) + { + if (__authorization.Type == "Http" || + __authorization.Type == "OAuth2" || + __authorization.Type == "OpenIdConnect") + { + __httpRequest.Headers.Authorization = new global::System.Net.Http.Headers.AuthenticationHeaderValue( + scheme: __authorization.Name, + parameter: __authorization.Value); + } + else if (__authorization.Type == "ApiKey" && + __authorization.Location == "Header") + { + __httpRequest.Headers.Add(__authorization.Name, __authorization.Value); + } + } + var __httpRequestContentBody = request.ToJson(JsonSerializerContext); + var __httpRequestContent = new global::System.Net.Http.StringContent( + content: __httpRequestContentBody, + encoding: global::System.Text.Encoding.UTF8, + mediaType: "application/json"); + __httpRequest.Content = __httpRequestContent; + global::ResembleAI.AutoSDKRequestOptionsSupport.ApplyHeaders( + request: __httpRequest, + clientHeaders: Options.Headers, + requestHeaders: requestOptions?.Headers); + + PrepareRequest( + client: HttpClient, + request: __httpRequest); + PrepareUpdateBillingSubscriptionProductsRequest( + httpClient: HttpClient, + httpRequestMessage: __httpRequest, + request: request); + + return __httpRequest; + } + + global::System.Net.Http.HttpRequestMessage? __httpRequest = null; + global::System.Net.Http.HttpResponseMessage? __response = null; + var __attemptNumber = 0; + try + { + for (var __attempt = 1; __attempt <= __maxAttempts; __attempt++) + { + __attemptNumber = __attempt; + __httpRequest = __CreateHttpRequest(); + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnBeforeRequestAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "UpdateBillingSubscriptionProducts", + methodName: "UpdateBillingSubscriptionProductsAsync", + pathTemplate: "\"/subscription/products\"", + httpMethod: "PATCH", + baseUri: BaseUri, + request: __httpRequest!, + response: null, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + try + { + __response = await HttpClient.SendAsync( + request: __httpRequest, + completionOption: global::System.Net.Http.HttpCompletionOption.ResponseContentRead, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + } + catch (global::System.Net.Http.HttpRequestException __exception) + { + var __retryDelay = global::ResembleAI.AutoSDKRequestOptionsSupport.GetRetryDelay( + clientOptions: Options, + requestOptions: requestOptions, + response: null, + attempt: __attempt); + var __willRetry = __attempt < __maxAttempts && !__effectiveCancellationToken.IsCancellationRequested; + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "UpdateBillingSubscriptionProducts", + methodName: "UpdateBillingSubscriptionProductsAsync", + pathTemplate: "\"/subscription/products\"", + httpMethod: "PATCH", + baseUri: BaseUri, + request: __httpRequest!, + response: null, + exception: __exception, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: __willRetry, + retryDelay: __willRetry ? __retryDelay : (global::System.TimeSpan?)null, + retryReason: "exception", + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + if (!__willRetry) + { + throw; + } + + __httpRequest.Dispose(); + __httpRequest = null; + await global::ResembleAI.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync( + retryDelay: __retryDelay, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + continue; + } + + if (__response != null && + __attempt < __maxAttempts && + global::ResembleAI.AutoSDKRequestOptionsSupport.ShouldRetryStatusCode(__response.StatusCode)) + { + var __retryDelay = global::ResembleAI.AutoSDKRequestOptionsSupport.GetRetryDelay( + clientOptions: Options, + requestOptions: requestOptions, + response: __response, + attempt: __attempt); + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "UpdateBillingSubscriptionProducts", + methodName: "UpdateBillingSubscriptionProductsAsync", + pathTemplate: "\"/subscription/products\"", + httpMethod: "PATCH", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: true, + retryDelay: __retryDelay, + retryReason: "status:" + ((int)__response.StatusCode).ToString(global::System.Globalization.CultureInfo.InvariantCulture), + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + __response.Dispose(); + __response = null; + __httpRequest.Dispose(); + __httpRequest = null; + await global::ResembleAI.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync( + retryDelay: __retryDelay, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + continue; + } + + break; + } + + if (__response == null) + { + throw new global::System.InvalidOperationException("No response received."); + } + + using (__response) + { + + ProcessResponse( + client: HttpClient, + response: __response); + ProcessUpdateBillingSubscriptionProductsResponse( + httpClient: HttpClient, + httpResponseMessage: __response); + if (__response.IsSuccessStatusCode) + { + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterSuccessAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "UpdateBillingSubscriptionProducts", + methodName: "UpdateBillingSubscriptionProductsAsync", + pathTemplate: "\"/subscription/products\"", + httpMethod: "PATCH", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attemptNumber, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + } + else + { + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "UpdateBillingSubscriptionProducts", + methodName: "UpdateBillingSubscriptionProductsAsync", + pathTemplate: "\"/subscription/products\"", + httpMethod: "PATCH", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attemptNumber, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + } + // The request could not be parsed or contains invalid parameters. + if ((int)__response.StatusCode == 400) + { + string? __content_400 = null; + global::System.Exception? __exception_400 = null; + global::ResembleAI.BillingError? __value_400 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_400 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_400 = global::ResembleAI.BillingError.FromJson(__content_400, JsonSerializerContext); + } + else + { + __content_400 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_400 = global::ResembleAI.BillingError.FromJson(__content_400, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_400 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_400 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_400, + responseBody: __content_400, + responseObject: __value_400, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + // A valid API key was not provided. + if ((int)__response.StatusCode == 401) + { + string? __content_401 = null; + global::System.Exception? __exception_401 = null; + global::ResembleAI.BillingError? __value_401 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_401 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_401 = global::ResembleAI.BillingError.FromJson(__content_401, JsonSerializerContext); + } + else + { + __content_401 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_401 = global::ResembleAI.BillingError.FromJson(__content_401, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_401 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_401 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_401, + responseBody: __content_401, + responseObject: __value_401, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + // Additional customer authentication is required before the billing change can complete. + if ((int)__response.StatusCode == 402) + { + string? __content_402 = null; + global::System.Exception? __exception_402 = null; + global::ResembleAI.BillingPaymentActionRequired? __value_402 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_402 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_402 = global::ResembleAI.BillingPaymentActionRequired.FromJson(__content_402, JsonSerializerContext); + } + else + { + __content_402 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_402 = global::ResembleAI.BillingPaymentActionRequired.FromJson(__content_402, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_402 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_402 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_402, + responseBody: __content_402, + responseObject: __value_402, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + // The API key owner cannot manage billing, or the Billing API is unavailable for the customer's billing arrangement. + if ((int)__response.StatusCode == 403) + { + string? __content_403 = null; + global::System.Exception? __exception_403 = null; + global::ResembleAI.BillingForbiddenError? __value_403 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_403 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_403 = global::ResembleAI.BillingForbiddenError.FromJson(__content_403, JsonSerializerContext); + } + else + { + __content_403 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_403 = global::ResembleAI.BillingForbiddenError.FromJson(__content_403, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_403 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_403 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_403, + responseBody: __content_403, + responseObject: __value_403, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + // The requested billing resource does not exist for the current team. + if ((int)__response.StatusCode == 404) + { + string? __content_404 = null; + global::System.Exception? __exception_404 = null; + global::ResembleAI.BillingError? __value_404 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_404 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_404 = global::ResembleAI.BillingError.FromJson(__content_404, JsonSerializerContext); + } + else + { + __content_404 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_404 = global::ResembleAI.BillingError.FromJson(__content_404, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_404 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_404 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_404, + responseBody: __content_404, + responseObject: __value_404, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + // The request was understood but violates a billing rule. + if ((int)__response.StatusCode == 422) + { + string? __content_422 = null; + global::System.Exception? __exception_422 = null; + global::ResembleAI.UpdateBillingSubscriptionProductsRequestUnprocessableEntityError? __value_422 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_422 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_422 = global::ResembleAI.UpdateBillingSubscriptionProductsRequestUnprocessableEntityError.FromJson(__content_422, JsonSerializerContext); + } + else + { + __content_422 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_422 = global::ResembleAI.UpdateBillingSubscriptionProductsRequestUnprocessableEntityError.FromJson(__content_422, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_422 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_422 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_422, + responseBody: __content_422, + responseObject: __value_422, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + // An unexpected billing error occurred. + if ((int)__response.StatusCode == 500) + { + string? __content_500 = null; + global::System.Exception? __exception_500 = null; + global::ResembleAI.BillingError? __value_500 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_500 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_500 = global::ResembleAI.BillingError.FromJson(__content_500, JsonSerializerContext); + } + else + { + __content_500 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_500 = global::ResembleAI.BillingError.FromJson(__content_500, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_500 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_500 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_500, + responseBody: __content_500, + responseObject: __value_500, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + + if (__effectiveReadResponseAsString) + { + var __content = await __response.Content.ReadAsStringAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + + ProcessResponseContent( + client: HttpClient, + response: __response, + content: ref __content); + ProcessUpdateBillingSubscriptionProductsResponseContent( + httpClient: HttpClient, + httpResponseMessage: __response, + content: ref __content); + + try + { + __response.EnsureSuccessStatusCode(); + + var __value = global::ResembleAI.BillingSubscriptionResponse.FromJson(__content, JsonSerializerContext) ?? + throw new global::System.InvalidOperationException($"Response deserialization failed for \"{__content}\" "); + return new global::ResembleAI.AutoSDKHttpResponse( + statusCode: __response.StatusCode, + headers: global::ResembleAI.AutoSDKHttpResponse.CreateHeaders(__response), + requestUri: __response.RequestMessage?.RequestUri, + body: __value); + } + catch (global::System.Exception __ex) + { + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content ?? __response.ReasonPhrase ?? string.Empty, + innerException: __ex, + responseBody: __content, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + } + else + { + try + { + __response.EnsureSuccessStatusCode(); + using var __content = await __response.Content.ReadAsStreamAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + + var __value = await global::ResembleAI.BillingSubscriptionResponse.FromJsonStreamAsync(__content, JsonSerializerContext).ConfigureAwait(false) ?? + throw new global::System.InvalidOperationException("Response deserialization failed."); + return new global::ResembleAI.AutoSDKHttpResponse( + statusCode: __response.StatusCode, + headers: global::ResembleAI.AutoSDKHttpResponse.CreateHeaders(__response), + requestUri: __response.RequestMessage?.RequestUri, + body: __value); + } + catch (global::System.Exception __ex) + { + string? __content = null; + try + { + __content = await __response.Content.ReadAsStringAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + } + catch (global::System.Exception) + { + } + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content ?? __response.ReasonPhrase ?? string.Empty, + innerException: __ex, + responseBody: __content, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + } + + } + } + finally + { + __httpRequest?.Dispose(); + } + } + /// + /// Update subscription product quantities
+ /// Updates one or more adjustable subscription products atomically. Each `new_quantity` is the desired absolute total, not an increment. A product is adjustable when its category is `subscription` and its `plan_product.allow_additional_usage` value is true. Quantities must remain within the plan's minimum and maximum and cannot be reduced below `consumed_quantity`. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task UpdateBillingSubscriptionProductsAsync( + global::System.Collections.Generic.IList changes, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + var __request = new global::ResembleAI.BillingUpdateProductsRequest + { + Changes = changes, + }; + + return await UpdateBillingSubscriptionProductsAsync( + request: __request, + requestOptions: requestOptions, + cancellationToken: cancellationToken).ConfigureAwait(false); + } + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.BillingSubscriptionsClient.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.BillingSubscriptionsClient.g.cs new file mode 100644 index 0000000..b7385c7 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.BillingSubscriptionsClient.g.cs @@ -0,0 +1,175 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// If no httpClient is provided, a new one will be created.
+ /// If no baseUri is provided, the default baseUri from OpenAPI spec will be used. + ///
+ public sealed partial class BillingSubscriptionsClient : global::ResembleAI.IBillingSubscriptionsClient, global::System.IDisposable + { + /// + /// + /// + public const string DefaultBaseUrl = "https://app.resemble.ai/api/v2"; + + private bool _disposeHttpClient = true; + + /// + public global::System.Net.Http.HttpClient HttpClient { get; } + + /// + public System.Uri? BaseUri => HttpClient.BaseAddress; + + /// + public global::System.Collections.Generic.List Authorizations { get; } + + /// + public bool ReadResponseAsString { get; set; } +#if DEBUG + = true; +#endif + + /// + public global::ResembleAI.AutoSDKClientOptions Options { get; } + + + internal global::ResembleAI.AutoSDKServerConfiguration AutoSDKServerConfiguration { get; set; } = new global::ResembleAI.AutoSDKServerConfiguration(); + /// + /// + /// + public global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } = global::ResembleAI.SourceGenerationContext.Default; + + + /// + /// Creates a new instance of the BillingSubscriptionsClient. + /// If no httpClient is provided, a new one will be created. + /// If no baseUri is provided, the default baseUri from OpenAPI spec will be used. + /// + /// The HttpClient instance. If not provided, a new one will be created. + /// The base URL for the API. If not provided, the default baseUri from OpenAPI spec will be used. + /// The authorizations to use for the requests. + /// Dispose the HttpClient when the instance is disposed. True by default. + public BillingSubscriptionsClient( + global::System.Net.Http.HttpClient? httpClient = null, + global::System.Uri? baseUri = null, + global::System.Collections.Generic.List? authorizations = null, + bool disposeHttpClient = true) : this( + httpClient, + baseUri, + authorizations, + options: null, + disposeHttpClient: disposeHttpClient) + { + } + + /// + /// Creates a new instance of the BillingSubscriptionsClient with explicit options but no base URL override. + /// Skips passing baseUri so the default base URL from the OpenAPI spec applies. + /// + /// The HttpClient instance. If not provided, a new one will be created. + /// The authorizations to use for the requests. + /// Client-wide request defaults such as headers, query parameters, retries, and timeout. + /// Dispose the HttpClient when the instance is disposed. True by default. + public BillingSubscriptionsClient( + global::System.Net.Http.HttpClient? httpClient, + global::System.Collections.Generic.List? authorizations, + global::ResembleAI.AutoSDKClientOptions? options, + bool disposeHttpClient = true) : this( + httpClient, + baseUri: null, + authorizations, + options, + disposeHttpClient: disposeHttpClient) + { + } + + /// + /// Creates a new instance of the BillingSubscriptionsClient. + /// If no httpClient is provided, a new one will be created. + /// If no baseUri is provided, the default baseUri from OpenAPI spec will be used. + /// + /// The HttpClient instance. If not provided, a new one will be created. + /// The base URL for the API. If not provided, the default baseUri from OpenAPI spec will be used. + /// The authorizations to use for the requests. + /// Client-wide request defaults such as headers, query parameters, retries, and timeout. + /// Dispose the HttpClient when the instance is disposed. True by default. + public BillingSubscriptionsClient( + global::System.Net.Http.HttpClient? httpClient, + global::System.Uri? baseUri, + global::System.Collections.Generic.List? authorizations, + global::ResembleAI.AutoSDKClientOptions? options, + bool disposeHttpClient = true) + { + + HttpClient = httpClient ?? new global::System.Net.Http.HttpClient(); + if (baseUri is not null) + { + HttpClient.BaseAddress ??= baseUri; + } + Authorizations = authorizations ?? new global::System.Collections.Generic.List(); + Options = options ?? new global::ResembleAI.AutoSDKClientOptions(); + _disposeHttpClient = disposeHttpClient; + + AutoSDKServerConfiguration.ExplicitBaseUri = baseUri ?? httpClient?.BaseAddress; + + Initialized(HttpClient); + } + + /// + public void Dispose() + { + if (_disposeHttpClient) + { + HttpClient.Dispose(); + } + } + + partial void Initialized( + global::System.Net.Http.HttpClient client); + partial void PrepareArguments( + global::System.Net.Http.HttpClient client); + partial void PrepareRequest( + global::System.Net.Http.HttpClient client, + global::System.Net.Http.HttpRequestMessage request); + partial void ProcessResponse( + global::System.Net.Http.HttpClient client, + global::System.Net.Http.HttpResponseMessage response); + partial void ProcessResponseContent( + global::System.Net.Http.HttpClient client, + global::System.Net.Http.HttpResponseMessage response, + ref string content); + + + private global::System.Uri? ResolveBaseUri( + global::ResembleAI.AutoSDKServer[] servers, + string defaultBaseUrl) + { + if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri) + { + return explicitBaseUri; + } + + if (AutoSDKServerConfiguration.SelectedServer is global::ResembleAI.AutoSDKServer selectedServer) + { + foreach (var server in servers) + { + if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal)) + { + return server.Uri; + } + } + } + + if (servers.Length > 0) + { + return servers[0].Uri; + } + + return string.IsNullOrWhiteSpace(defaultBaseUrl) + ? HttpClient.BaseAddress + : new global::System.Uri(defaultBaseUrl, global::System.UriKind.RelativeOrAbsolute); + } + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.BillingWalletClient.ExportBillingWalletTransactions.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.BillingWalletClient.ExportBillingWalletTransactions.g.cs new file mode 100644 index 0000000..bd41401 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.BillingWalletClient.ExportBillingWalletTransactions.g.cs @@ -0,0 +1,534 @@ + +#nullable enable + +namespace ResembleAI +{ + public partial class BillingWalletClient + { + + private static readonly global::ResembleAI.AutoSDKServer[] s_ExportBillingWalletTransactionsServers = new global::ResembleAI.AutoSDKServer[] + { new global::ResembleAI.AutoSDKServer( + id: "https-app-resemble-ai-api-v2", + name: "app.resemble.ai api v2", + url: "https://app.resemble.ai/api/v2", + description: ""), + }; + + + private static readonly global::ResembleAI.EndPointSecurityRequirement s_ExportBillingWalletTransactionsSecurityRequirement0 = + new global::ResembleAI.EndPointSecurityRequirement + { + Authorizations = new global::ResembleAI.EndPointAuthorizationRequirement[] + { new global::ResembleAI.EndPointAuthorizationRequirement + { + Type = "Http", + SchemeId = "HttpBearer", + Location = "Header", + Name = "Bearer", + FriendlyName = "Bearer", + }, + }, + }; + private static readonly global::ResembleAI.EndPointSecurityRequirement[] s_ExportBillingWalletTransactionsSecurityRequirements = + new global::ResembleAI.EndPointSecurityRequirement[] + { s_ExportBillingWalletTransactionsSecurityRequirement0, + }; + partial void PrepareExportBillingWalletTransactionsArguments( + global::System.Net.Http.HttpClient httpClient); + partial void PrepareExportBillingWalletTransactionsRequest( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpRequestMessage httpRequestMessage); + partial void ProcessExportBillingWalletTransactionsResponse( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpResponseMessage httpResponseMessage); + + partial void ProcessExportBillingWalletTransactionsResponseContent( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpResponseMessage httpResponseMessage, + ref string content); + + /// + /// Export wallet transactions
+ /// Downloads the current team's complete wallet transaction history as a CSV file, newest first. + ///
+ /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task ExportBillingWalletTransactionsAsync( + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + var __response = await ExportBillingWalletTransactionsAsResponseAsync( + requestOptions: requestOptions, + cancellationToken: cancellationToken + ).ConfigureAwait(false); + + return __response.Body; + } + /// + /// Export wallet transactions
+ /// Downloads the current team's complete wallet transaction history as a CSV file, newest first. + ///
+ /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task> ExportBillingWalletTransactionsAsResponseAsync( + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + PrepareArguments( + client: HttpClient); + PrepareExportBillingWalletTransactionsArguments( + httpClient: HttpClient); + + + var __authorizations = global::ResembleAI.EndPointSecurityResolver.ResolveAuthorizations( + availableAuthorizations: Authorizations, + securityRequirements: s_ExportBillingWalletTransactionsSecurityRequirements, + operationName: "ExportBillingWalletTransactionsAsync"); + + using var __timeoutCancellationTokenSource = global::ResembleAI.AutoSDKRequestOptionsSupport.CreateTimeoutCancellationTokenSource( + clientOptions: Options, + requestOptions: requestOptions, + cancellationToken: cancellationToken); + var __effectiveCancellationToken = __timeoutCancellationTokenSource?.Token ?? cancellationToken; + var __effectiveReadResponseAsString = global::ResembleAI.AutoSDKRequestOptionsSupport.GetReadResponseAsString( + clientOptions: Options, + requestOptions: requestOptions, + fallbackValue: ReadResponseAsString); + var __maxAttempts = global::ResembleAI.AutoSDKRequestOptionsSupport.GetMaxAttempts( + clientOptions: Options, + requestOptions: requestOptions, + supportsRetry: true); + + global::System.Net.Http.HttpRequestMessage __CreateHttpRequest() + { + + var __pathBuilder = new global::ResembleAI.PathBuilder( + path: "/wallet/transactions/export.csv", + baseUri: ResolveBaseUri( + servers: s_ExportBillingWalletTransactionsServers, + defaultBaseUrl: "https://app.resemble.ai/api/v2")); + var __path = __pathBuilder.ToString(); + __path = global::ResembleAI.AutoSDKRequestOptionsSupport.AppendQueryParameters( + path: __path, + clientParameters: Options.QueryParameters, + requestParameters: requestOptions?.QueryParameters); + var __httpRequest = new global::System.Net.Http.HttpRequestMessage( + method: global::System.Net.Http.HttpMethod.Get, + requestUri: new global::System.Uri(__path, global::System.UriKind.RelativeOrAbsolute)); +#if NET6_0_OR_GREATER + __httpRequest.Version = global::System.Net.HttpVersion.Version11; + __httpRequest.VersionPolicy = global::System.Net.Http.HttpVersionPolicy.RequestVersionOrHigher; +#endif + + foreach (var __authorization in __authorizations) + { + if (__authorization.Type == "Http" || + __authorization.Type == "OAuth2" || + __authorization.Type == "OpenIdConnect") + { + __httpRequest.Headers.Authorization = new global::System.Net.Http.Headers.AuthenticationHeaderValue( + scheme: __authorization.Name, + parameter: __authorization.Value); + } + else if (__authorization.Type == "ApiKey" && + __authorization.Location == "Header") + { + __httpRequest.Headers.Add(__authorization.Name, __authorization.Value); + } + } + global::ResembleAI.AutoSDKRequestOptionsSupport.ApplyHeaders( + request: __httpRequest, + clientHeaders: Options.Headers, + requestHeaders: requestOptions?.Headers); + + PrepareRequest( + client: HttpClient, + request: __httpRequest); + PrepareExportBillingWalletTransactionsRequest( + httpClient: HttpClient, + httpRequestMessage: __httpRequest); + + return __httpRequest; + } + + global::System.Net.Http.HttpRequestMessage? __httpRequest = null; + global::System.Net.Http.HttpResponseMessage? __response = null; + var __attemptNumber = 0; + try + { + for (var __attempt = 1; __attempt <= __maxAttempts; __attempt++) + { + __attemptNumber = __attempt; + __httpRequest = __CreateHttpRequest(); + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnBeforeRequestAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "ExportBillingWalletTransactions", + methodName: "ExportBillingWalletTransactionsAsync", + pathTemplate: "\"/wallet/transactions/export.csv\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: null, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + try + { + __response = await HttpClient.SendAsync( + request: __httpRequest, + completionOption: global::System.Net.Http.HttpCompletionOption.ResponseContentRead, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + } + catch (global::System.Net.Http.HttpRequestException __exception) + { + var __retryDelay = global::ResembleAI.AutoSDKRequestOptionsSupport.GetRetryDelay( + clientOptions: Options, + requestOptions: requestOptions, + response: null, + attempt: __attempt); + var __willRetry = __attempt < __maxAttempts && !__effectiveCancellationToken.IsCancellationRequested; + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "ExportBillingWalletTransactions", + methodName: "ExportBillingWalletTransactionsAsync", + pathTemplate: "\"/wallet/transactions/export.csv\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: null, + exception: __exception, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: __willRetry, + retryDelay: __willRetry ? __retryDelay : (global::System.TimeSpan?)null, + retryReason: "exception", + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + if (!__willRetry) + { + throw; + } + + __httpRequest.Dispose(); + __httpRequest = null; + await global::ResembleAI.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync( + retryDelay: __retryDelay, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + continue; + } + + if (__response != null && + __attempt < __maxAttempts && + global::ResembleAI.AutoSDKRequestOptionsSupport.ShouldRetryStatusCode(__response.StatusCode)) + { + var __retryDelay = global::ResembleAI.AutoSDKRequestOptionsSupport.GetRetryDelay( + clientOptions: Options, + requestOptions: requestOptions, + response: __response, + attempt: __attempt); + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "ExportBillingWalletTransactions", + methodName: "ExportBillingWalletTransactionsAsync", + pathTemplate: "\"/wallet/transactions/export.csv\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: true, + retryDelay: __retryDelay, + retryReason: "status:" + ((int)__response.StatusCode).ToString(global::System.Globalization.CultureInfo.InvariantCulture), + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + __response.Dispose(); + __response = null; + __httpRequest.Dispose(); + __httpRequest = null; + await global::ResembleAI.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync( + retryDelay: __retryDelay, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + continue; + } + + break; + } + + if (__response == null) + { + throw new global::System.InvalidOperationException("No response received."); + } + + using (__response) + { + + ProcessResponse( + client: HttpClient, + response: __response); + ProcessExportBillingWalletTransactionsResponse( + httpClient: HttpClient, + httpResponseMessage: __response); + if (__response.IsSuccessStatusCode) + { + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterSuccessAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "ExportBillingWalletTransactions", + methodName: "ExportBillingWalletTransactionsAsync", + pathTemplate: "\"/wallet/transactions/export.csv\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attemptNumber, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + } + else + { + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "ExportBillingWalletTransactions", + methodName: "ExportBillingWalletTransactionsAsync", + pathTemplate: "\"/wallet/transactions/export.csv\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attemptNumber, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + } + // A valid API key was not provided. + if ((int)__response.StatusCode == 401) + { + string? __content_401 = null; + global::System.Exception? __exception_401 = null; + global::ResembleAI.BillingError? __value_401 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_401 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_401 = global::ResembleAI.BillingError.FromJson(__content_401, JsonSerializerContext); + } + else + { + __content_401 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_401 = global::ResembleAI.BillingError.FromJson(__content_401, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_401 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_401 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_401, + responseBody: __content_401, + responseObject: __value_401, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + // The API key owner cannot manage billing, or the Billing API is unavailable for the customer's billing arrangement. + if ((int)__response.StatusCode == 403) + { + string? __content_403 = null; + global::System.Exception? __exception_403 = null; + global::ResembleAI.BillingForbiddenError? __value_403 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_403 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_403 = global::ResembleAI.BillingForbiddenError.FromJson(__content_403, JsonSerializerContext); + } + else + { + __content_403 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_403 = global::ResembleAI.BillingForbiddenError.FromJson(__content_403, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_403 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_403 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_403, + responseBody: __content_403, + responseObject: __value_403, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + // An unexpected billing error occurred. + if ((int)__response.StatusCode == 500) + { + string? __content_500 = null; + global::System.Exception? __exception_500 = null; + global::ResembleAI.BillingError? __value_500 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_500 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_500 = global::ResembleAI.BillingError.FromJson(__content_500, JsonSerializerContext); + } + else + { + __content_500 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_500 = global::ResembleAI.BillingError.FromJson(__content_500, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_500 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_500 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_500, + responseBody: __content_500, + responseObject: __value_500, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + + if (__effectiveReadResponseAsString) + { + var __content = await __response.Content.ReadAsStringAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + + ProcessResponseContent( + client: HttpClient, + response: __response, + content: ref __content); + ProcessExportBillingWalletTransactionsResponseContent( + httpClient: HttpClient, + httpResponseMessage: __response, + content: ref __content); + + try + { + __response.EnsureSuccessStatusCode(); + + return new global::ResembleAI.AutoSDKHttpResponse( + statusCode: __response.StatusCode, + headers: global::ResembleAI.AutoSDKHttpResponse.CreateHeaders(__response), + requestUri: __response.RequestMessage?.RequestUri, + body: __content); + } + catch (global::System.Exception __ex) + { + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content ?? __response.ReasonPhrase ?? string.Empty, + innerException: __ex, + responseBody: __content, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + } + else + { + try + { + __response.EnsureSuccessStatusCode(); + var __content = await __response.Content.ReadAsStringAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + + return new global::ResembleAI.AutoSDKHttpResponse( + statusCode: __response.StatusCode, + headers: global::ResembleAI.AutoSDKHttpResponse.CreateHeaders(__response), + requestUri: __response.RequestMessage?.RequestUri, + body: __content); + } + catch (global::System.Exception __ex) + { + string? __content = null; + try + { + __content = await __response.Content.ReadAsStringAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + } + catch (global::System.Exception) + { + } + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content ?? __response.ReasonPhrase ?? string.Empty, + innerException: __ex, + responseBody: __content, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + } + + } + } + finally + { + __httpRequest?.Dispose(); + } + } + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.BillingWalletClient.GetBillingAutoReload.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.BillingWalletClient.GetBillingAutoReload.g.cs new file mode 100644 index 0000000..ea1fb76 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.BillingWalletClient.GetBillingAutoReload.g.cs @@ -0,0 +1,538 @@ + +#nullable enable + +namespace ResembleAI +{ + public partial class BillingWalletClient + { + + private static readonly global::ResembleAI.AutoSDKServer[] s_GetBillingAutoReloadServers = new global::ResembleAI.AutoSDKServer[] + { new global::ResembleAI.AutoSDKServer( + id: "https-app-resemble-ai-api-v2", + name: "app.resemble.ai api v2", + url: "https://app.resemble.ai/api/v2", + description: ""), + }; + + + private static readonly global::ResembleAI.EndPointSecurityRequirement s_GetBillingAutoReloadSecurityRequirement0 = + new global::ResembleAI.EndPointSecurityRequirement + { + Authorizations = new global::ResembleAI.EndPointAuthorizationRequirement[] + { new global::ResembleAI.EndPointAuthorizationRequirement + { + Type = "Http", + SchemeId = "HttpBearer", + Location = "Header", + Name = "Bearer", + FriendlyName = "Bearer", + }, + }, + }; + private static readonly global::ResembleAI.EndPointSecurityRequirement[] s_GetBillingAutoReloadSecurityRequirements = + new global::ResembleAI.EndPointSecurityRequirement[] + { s_GetBillingAutoReloadSecurityRequirement0, + }; + partial void PrepareGetBillingAutoReloadArguments( + global::System.Net.Http.HttpClient httpClient); + partial void PrepareGetBillingAutoReloadRequest( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpRequestMessage httpRequestMessage); + partial void ProcessGetBillingAutoReloadResponse( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpResponseMessage httpResponseMessage); + + partial void ProcessGetBillingAutoReloadResponseContent( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpResponseMessage httpResponseMessage, + ref string content); + + /// + /// Get auto-reload settings
+ /// Returns the current team's auto-reload configuration, whether a payment method is available, and the supported reload range. + ///
+ /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task GetBillingAutoReloadAsync( + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + var __response = await GetBillingAutoReloadAsResponseAsync( + requestOptions: requestOptions, + cancellationToken: cancellationToken + ).ConfigureAwait(false); + + return __response.Body; + } + /// + /// Get auto-reload settings
+ /// Returns the current team's auto-reload configuration, whether a payment method is available, and the supported reload range. + ///
+ /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task> GetBillingAutoReloadAsResponseAsync( + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + PrepareArguments( + client: HttpClient); + PrepareGetBillingAutoReloadArguments( + httpClient: HttpClient); + + + var __authorizations = global::ResembleAI.EndPointSecurityResolver.ResolveAuthorizations( + availableAuthorizations: Authorizations, + securityRequirements: s_GetBillingAutoReloadSecurityRequirements, + operationName: "GetBillingAutoReloadAsync"); + + using var __timeoutCancellationTokenSource = global::ResembleAI.AutoSDKRequestOptionsSupport.CreateTimeoutCancellationTokenSource( + clientOptions: Options, + requestOptions: requestOptions, + cancellationToken: cancellationToken); + var __effectiveCancellationToken = __timeoutCancellationTokenSource?.Token ?? cancellationToken; + var __effectiveReadResponseAsString = global::ResembleAI.AutoSDKRequestOptionsSupport.GetReadResponseAsString( + clientOptions: Options, + requestOptions: requestOptions, + fallbackValue: ReadResponseAsString); + var __maxAttempts = global::ResembleAI.AutoSDKRequestOptionsSupport.GetMaxAttempts( + clientOptions: Options, + requestOptions: requestOptions, + supportsRetry: true); + + global::System.Net.Http.HttpRequestMessage __CreateHttpRequest() + { + + var __pathBuilder = new global::ResembleAI.PathBuilder( + path: "/wallet/auto_reload", + baseUri: ResolveBaseUri( + servers: s_GetBillingAutoReloadServers, + defaultBaseUrl: "https://app.resemble.ai/api/v2")); + var __path = __pathBuilder.ToString(); + __path = global::ResembleAI.AutoSDKRequestOptionsSupport.AppendQueryParameters( + path: __path, + clientParameters: Options.QueryParameters, + requestParameters: requestOptions?.QueryParameters); + var __httpRequest = new global::System.Net.Http.HttpRequestMessage( + method: global::System.Net.Http.HttpMethod.Get, + requestUri: new global::System.Uri(__path, global::System.UriKind.RelativeOrAbsolute)); +#if NET6_0_OR_GREATER + __httpRequest.Version = global::System.Net.HttpVersion.Version11; + __httpRequest.VersionPolicy = global::System.Net.Http.HttpVersionPolicy.RequestVersionOrHigher; +#endif + + foreach (var __authorization in __authorizations) + { + if (__authorization.Type == "Http" || + __authorization.Type == "OAuth2" || + __authorization.Type == "OpenIdConnect") + { + __httpRequest.Headers.Authorization = new global::System.Net.Http.Headers.AuthenticationHeaderValue( + scheme: __authorization.Name, + parameter: __authorization.Value); + } + else if (__authorization.Type == "ApiKey" && + __authorization.Location == "Header") + { + __httpRequest.Headers.Add(__authorization.Name, __authorization.Value); + } + } + global::ResembleAI.AutoSDKRequestOptionsSupport.ApplyHeaders( + request: __httpRequest, + clientHeaders: Options.Headers, + requestHeaders: requestOptions?.Headers); + + PrepareRequest( + client: HttpClient, + request: __httpRequest); + PrepareGetBillingAutoReloadRequest( + httpClient: HttpClient, + httpRequestMessage: __httpRequest); + + return __httpRequest; + } + + global::System.Net.Http.HttpRequestMessage? __httpRequest = null; + global::System.Net.Http.HttpResponseMessage? __response = null; + var __attemptNumber = 0; + try + { + for (var __attempt = 1; __attempt <= __maxAttempts; __attempt++) + { + __attemptNumber = __attempt; + __httpRequest = __CreateHttpRequest(); + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnBeforeRequestAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "GetBillingAutoReload", + methodName: "GetBillingAutoReloadAsync", + pathTemplate: "\"/wallet/auto_reload\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: null, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + try + { + __response = await HttpClient.SendAsync( + request: __httpRequest, + completionOption: global::System.Net.Http.HttpCompletionOption.ResponseContentRead, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + } + catch (global::System.Net.Http.HttpRequestException __exception) + { + var __retryDelay = global::ResembleAI.AutoSDKRequestOptionsSupport.GetRetryDelay( + clientOptions: Options, + requestOptions: requestOptions, + response: null, + attempt: __attempt); + var __willRetry = __attempt < __maxAttempts && !__effectiveCancellationToken.IsCancellationRequested; + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "GetBillingAutoReload", + methodName: "GetBillingAutoReloadAsync", + pathTemplate: "\"/wallet/auto_reload\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: null, + exception: __exception, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: __willRetry, + retryDelay: __willRetry ? __retryDelay : (global::System.TimeSpan?)null, + retryReason: "exception", + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + if (!__willRetry) + { + throw; + } + + __httpRequest.Dispose(); + __httpRequest = null; + await global::ResembleAI.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync( + retryDelay: __retryDelay, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + continue; + } + + if (__response != null && + __attempt < __maxAttempts && + global::ResembleAI.AutoSDKRequestOptionsSupport.ShouldRetryStatusCode(__response.StatusCode)) + { + var __retryDelay = global::ResembleAI.AutoSDKRequestOptionsSupport.GetRetryDelay( + clientOptions: Options, + requestOptions: requestOptions, + response: __response, + attempt: __attempt); + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "GetBillingAutoReload", + methodName: "GetBillingAutoReloadAsync", + pathTemplate: "\"/wallet/auto_reload\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: true, + retryDelay: __retryDelay, + retryReason: "status:" + ((int)__response.StatusCode).ToString(global::System.Globalization.CultureInfo.InvariantCulture), + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + __response.Dispose(); + __response = null; + __httpRequest.Dispose(); + __httpRequest = null; + await global::ResembleAI.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync( + retryDelay: __retryDelay, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + continue; + } + + break; + } + + if (__response == null) + { + throw new global::System.InvalidOperationException("No response received."); + } + + using (__response) + { + + ProcessResponse( + client: HttpClient, + response: __response); + ProcessGetBillingAutoReloadResponse( + httpClient: HttpClient, + httpResponseMessage: __response); + if (__response.IsSuccessStatusCode) + { + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterSuccessAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "GetBillingAutoReload", + methodName: "GetBillingAutoReloadAsync", + pathTemplate: "\"/wallet/auto_reload\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attemptNumber, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + } + else + { + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "GetBillingAutoReload", + methodName: "GetBillingAutoReloadAsync", + pathTemplate: "\"/wallet/auto_reload\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attemptNumber, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + } + // A valid API key was not provided. + if ((int)__response.StatusCode == 401) + { + string? __content_401 = null; + global::System.Exception? __exception_401 = null; + global::ResembleAI.BillingError? __value_401 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_401 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_401 = global::ResembleAI.BillingError.FromJson(__content_401, JsonSerializerContext); + } + else + { + __content_401 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_401 = global::ResembleAI.BillingError.FromJson(__content_401, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_401 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_401 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_401, + responseBody: __content_401, + responseObject: __value_401, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + // The API key owner cannot manage billing, or the Billing API is unavailable for the customer's billing arrangement. + if ((int)__response.StatusCode == 403) + { + string? __content_403 = null; + global::System.Exception? __exception_403 = null; + global::ResembleAI.BillingForbiddenError? __value_403 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_403 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_403 = global::ResembleAI.BillingForbiddenError.FromJson(__content_403, JsonSerializerContext); + } + else + { + __content_403 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_403 = global::ResembleAI.BillingForbiddenError.FromJson(__content_403, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_403 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_403 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_403, + responseBody: __content_403, + responseObject: __value_403, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + // An unexpected billing error occurred. + if ((int)__response.StatusCode == 500) + { + string? __content_500 = null; + global::System.Exception? __exception_500 = null; + global::ResembleAI.BillingError? __value_500 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_500 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_500 = global::ResembleAI.BillingError.FromJson(__content_500, JsonSerializerContext); + } + else + { + __content_500 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_500 = global::ResembleAI.BillingError.FromJson(__content_500, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_500 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_500 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_500, + responseBody: __content_500, + responseObject: __value_500, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + + if (__effectiveReadResponseAsString) + { + var __content = await __response.Content.ReadAsStringAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + + ProcessResponseContent( + client: HttpClient, + response: __response, + content: ref __content); + ProcessGetBillingAutoReloadResponseContent( + httpClient: HttpClient, + httpResponseMessage: __response, + content: ref __content); + + try + { + __response.EnsureSuccessStatusCode(); + + var __value = global::ResembleAI.BillingAutoReloadResponse.FromJson(__content, JsonSerializerContext) ?? + throw new global::System.InvalidOperationException($"Response deserialization failed for \"{__content}\" "); + return new global::ResembleAI.AutoSDKHttpResponse( + statusCode: __response.StatusCode, + headers: global::ResembleAI.AutoSDKHttpResponse.CreateHeaders(__response), + requestUri: __response.RequestMessage?.RequestUri, + body: __value); + } + catch (global::System.Exception __ex) + { + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content ?? __response.ReasonPhrase ?? string.Empty, + innerException: __ex, + responseBody: __content, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + } + else + { + try + { + __response.EnsureSuccessStatusCode(); + using var __content = await __response.Content.ReadAsStreamAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + + var __value = await global::ResembleAI.BillingAutoReloadResponse.FromJsonStreamAsync(__content, JsonSerializerContext).ConfigureAwait(false) ?? + throw new global::System.InvalidOperationException("Response deserialization failed."); + return new global::ResembleAI.AutoSDKHttpResponse( + statusCode: __response.StatusCode, + headers: global::ResembleAI.AutoSDKHttpResponse.CreateHeaders(__response), + requestUri: __response.RequestMessage?.RequestUri, + body: __value); + } + catch (global::System.Exception __ex) + { + string? __content = null; + try + { + __content = await __response.Content.ReadAsStringAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + } + catch (global::System.Exception) + { + } + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content ?? __response.ReasonPhrase ?? string.Empty, + innerException: __ex, + responseBody: __content, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + } + + } + } + finally + { + __httpRequest?.Dispose(); + } + } + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.BillingWalletClient.GetBillingWallet.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.BillingWalletClient.GetBillingWallet.g.cs new file mode 100644 index 0000000..adb6539 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.BillingWalletClient.GetBillingWallet.g.cs @@ -0,0 +1,538 @@ + +#nullable enable + +namespace ResembleAI +{ + public partial class BillingWalletClient + { + + private static readonly global::ResembleAI.AutoSDKServer[] s_GetBillingWalletServers = new global::ResembleAI.AutoSDKServer[] + { new global::ResembleAI.AutoSDKServer( + id: "https-app-resemble-ai-api-v2", + name: "app.resemble.ai api v2", + url: "https://app.resemble.ai/api/v2", + description: ""), + }; + + + private static readonly global::ResembleAI.EndPointSecurityRequirement s_GetBillingWalletSecurityRequirement0 = + new global::ResembleAI.EndPointSecurityRequirement + { + Authorizations = new global::ResembleAI.EndPointAuthorizationRequirement[] + { new global::ResembleAI.EndPointAuthorizationRequirement + { + Type = "Http", + SchemeId = "HttpBearer", + Location = "Header", + Name = "Bearer", + FriendlyName = "Bearer", + }, + }, + }; + private static readonly global::ResembleAI.EndPointSecurityRequirement[] s_GetBillingWalletSecurityRequirements = + new global::ResembleAI.EndPointSecurityRequirement[] + { s_GetBillingWalletSecurityRequirement0, + }; + partial void PrepareGetBillingWalletArguments( + global::System.Net.Http.HttpClient httpClient); + partial void PrepareGetBillingWalletRequest( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpRequestMessage httpRequestMessage); + partial void ProcessGetBillingWalletResponse( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpResponseMessage httpResponseMessage); + + partial void ProcessGetBillingWalletResponseContent( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpResponseMessage httpResponseMessage, + ref string content); + + /// + /// Get the billing wallet
+ /// Returns the current team's cash, promotional, total, and lifetime wallet balances. + ///
+ /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task GetBillingWalletAsync( + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + var __response = await GetBillingWalletAsResponseAsync( + requestOptions: requestOptions, + cancellationToken: cancellationToken + ).ConfigureAwait(false); + + return __response.Body; + } + /// + /// Get the billing wallet
+ /// Returns the current team's cash, promotional, total, and lifetime wallet balances. + ///
+ /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task> GetBillingWalletAsResponseAsync( + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + PrepareArguments( + client: HttpClient); + PrepareGetBillingWalletArguments( + httpClient: HttpClient); + + + var __authorizations = global::ResembleAI.EndPointSecurityResolver.ResolveAuthorizations( + availableAuthorizations: Authorizations, + securityRequirements: s_GetBillingWalletSecurityRequirements, + operationName: "GetBillingWalletAsync"); + + using var __timeoutCancellationTokenSource = global::ResembleAI.AutoSDKRequestOptionsSupport.CreateTimeoutCancellationTokenSource( + clientOptions: Options, + requestOptions: requestOptions, + cancellationToken: cancellationToken); + var __effectiveCancellationToken = __timeoutCancellationTokenSource?.Token ?? cancellationToken; + var __effectiveReadResponseAsString = global::ResembleAI.AutoSDKRequestOptionsSupport.GetReadResponseAsString( + clientOptions: Options, + requestOptions: requestOptions, + fallbackValue: ReadResponseAsString); + var __maxAttempts = global::ResembleAI.AutoSDKRequestOptionsSupport.GetMaxAttempts( + clientOptions: Options, + requestOptions: requestOptions, + supportsRetry: true); + + global::System.Net.Http.HttpRequestMessage __CreateHttpRequest() + { + + var __pathBuilder = new global::ResembleAI.PathBuilder( + path: "/wallet", + baseUri: ResolveBaseUri( + servers: s_GetBillingWalletServers, + defaultBaseUrl: "https://app.resemble.ai/api/v2")); + var __path = __pathBuilder.ToString(); + __path = global::ResembleAI.AutoSDKRequestOptionsSupport.AppendQueryParameters( + path: __path, + clientParameters: Options.QueryParameters, + requestParameters: requestOptions?.QueryParameters); + var __httpRequest = new global::System.Net.Http.HttpRequestMessage( + method: global::System.Net.Http.HttpMethod.Get, + requestUri: new global::System.Uri(__path, global::System.UriKind.RelativeOrAbsolute)); +#if NET6_0_OR_GREATER + __httpRequest.Version = global::System.Net.HttpVersion.Version11; + __httpRequest.VersionPolicy = global::System.Net.Http.HttpVersionPolicy.RequestVersionOrHigher; +#endif + + foreach (var __authorization in __authorizations) + { + if (__authorization.Type == "Http" || + __authorization.Type == "OAuth2" || + __authorization.Type == "OpenIdConnect") + { + __httpRequest.Headers.Authorization = new global::System.Net.Http.Headers.AuthenticationHeaderValue( + scheme: __authorization.Name, + parameter: __authorization.Value); + } + else if (__authorization.Type == "ApiKey" && + __authorization.Location == "Header") + { + __httpRequest.Headers.Add(__authorization.Name, __authorization.Value); + } + } + global::ResembleAI.AutoSDKRequestOptionsSupport.ApplyHeaders( + request: __httpRequest, + clientHeaders: Options.Headers, + requestHeaders: requestOptions?.Headers); + + PrepareRequest( + client: HttpClient, + request: __httpRequest); + PrepareGetBillingWalletRequest( + httpClient: HttpClient, + httpRequestMessage: __httpRequest); + + return __httpRequest; + } + + global::System.Net.Http.HttpRequestMessage? __httpRequest = null; + global::System.Net.Http.HttpResponseMessage? __response = null; + var __attemptNumber = 0; + try + { + for (var __attempt = 1; __attempt <= __maxAttempts; __attempt++) + { + __attemptNumber = __attempt; + __httpRequest = __CreateHttpRequest(); + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnBeforeRequestAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "GetBillingWallet", + methodName: "GetBillingWalletAsync", + pathTemplate: "\"/wallet\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: null, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + try + { + __response = await HttpClient.SendAsync( + request: __httpRequest, + completionOption: global::System.Net.Http.HttpCompletionOption.ResponseContentRead, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + } + catch (global::System.Net.Http.HttpRequestException __exception) + { + var __retryDelay = global::ResembleAI.AutoSDKRequestOptionsSupport.GetRetryDelay( + clientOptions: Options, + requestOptions: requestOptions, + response: null, + attempt: __attempt); + var __willRetry = __attempt < __maxAttempts && !__effectiveCancellationToken.IsCancellationRequested; + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "GetBillingWallet", + methodName: "GetBillingWalletAsync", + pathTemplate: "\"/wallet\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: null, + exception: __exception, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: __willRetry, + retryDelay: __willRetry ? __retryDelay : (global::System.TimeSpan?)null, + retryReason: "exception", + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + if (!__willRetry) + { + throw; + } + + __httpRequest.Dispose(); + __httpRequest = null; + await global::ResembleAI.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync( + retryDelay: __retryDelay, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + continue; + } + + if (__response != null && + __attempt < __maxAttempts && + global::ResembleAI.AutoSDKRequestOptionsSupport.ShouldRetryStatusCode(__response.StatusCode)) + { + var __retryDelay = global::ResembleAI.AutoSDKRequestOptionsSupport.GetRetryDelay( + clientOptions: Options, + requestOptions: requestOptions, + response: __response, + attempt: __attempt); + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "GetBillingWallet", + methodName: "GetBillingWalletAsync", + pathTemplate: "\"/wallet\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: true, + retryDelay: __retryDelay, + retryReason: "status:" + ((int)__response.StatusCode).ToString(global::System.Globalization.CultureInfo.InvariantCulture), + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + __response.Dispose(); + __response = null; + __httpRequest.Dispose(); + __httpRequest = null; + await global::ResembleAI.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync( + retryDelay: __retryDelay, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + continue; + } + + break; + } + + if (__response == null) + { + throw new global::System.InvalidOperationException("No response received."); + } + + using (__response) + { + + ProcessResponse( + client: HttpClient, + response: __response); + ProcessGetBillingWalletResponse( + httpClient: HttpClient, + httpResponseMessage: __response); + if (__response.IsSuccessStatusCode) + { + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterSuccessAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "GetBillingWallet", + methodName: "GetBillingWalletAsync", + pathTemplate: "\"/wallet\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attemptNumber, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + } + else + { + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "GetBillingWallet", + methodName: "GetBillingWalletAsync", + pathTemplate: "\"/wallet\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attemptNumber, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + } + // A valid API key was not provided. + if ((int)__response.StatusCode == 401) + { + string? __content_401 = null; + global::System.Exception? __exception_401 = null; + global::ResembleAI.BillingError? __value_401 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_401 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_401 = global::ResembleAI.BillingError.FromJson(__content_401, JsonSerializerContext); + } + else + { + __content_401 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_401 = global::ResembleAI.BillingError.FromJson(__content_401, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_401 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_401 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_401, + responseBody: __content_401, + responseObject: __value_401, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + // The API key owner cannot manage billing, or the Billing API is unavailable for the customer's billing arrangement. + if ((int)__response.StatusCode == 403) + { + string? __content_403 = null; + global::System.Exception? __exception_403 = null; + global::ResembleAI.BillingForbiddenError? __value_403 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_403 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_403 = global::ResembleAI.BillingForbiddenError.FromJson(__content_403, JsonSerializerContext); + } + else + { + __content_403 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_403 = global::ResembleAI.BillingForbiddenError.FromJson(__content_403, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_403 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_403 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_403, + responseBody: __content_403, + responseObject: __value_403, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + // An unexpected billing error occurred. + if ((int)__response.StatusCode == 500) + { + string? __content_500 = null; + global::System.Exception? __exception_500 = null; + global::ResembleAI.BillingError? __value_500 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_500 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_500 = global::ResembleAI.BillingError.FromJson(__content_500, JsonSerializerContext); + } + else + { + __content_500 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_500 = global::ResembleAI.BillingError.FromJson(__content_500, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_500 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_500 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_500, + responseBody: __content_500, + responseObject: __value_500, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + + if (__effectiveReadResponseAsString) + { + var __content = await __response.Content.ReadAsStringAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + + ProcessResponseContent( + client: HttpClient, + response: __response, + content: ref __content); + ProcessGetBillingWalletResponseContent( + httpClient: HttpClient, + httpResponseMessage: __response, + content: ref __content); + + try + { + __response.EnsureSuccessStatusCode(); + + var __value = global::ResembleAI.BillingWalletResponse.FromJson(__content, JsonSerializerContext) ?? + throw new global::System.InvalidOperationException($"Response deserialization failed for \"{__content}\" "); + return new global::ResembleAI.AutoSDKHttpResponse( + statusCode: __response.StatusCode, + headers: global::ResembleAI.AutoSDKHttpResponse.CreateHeaders(__response), + requestUri: __response.RequestMessage?.RequestUri, + body: __value); + } + catch (global::System.Exception __ex) + { + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content ?? __response.ReasonPhrase ?? string.Empty, + innerException: __ex, + responseBody: __content, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + } + else + { + try + { + __response.EnsureSuccessStatusCode(); + using var __content = await __response.Content.ReadAsStreamAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + + var __value = await global::ResembleAI.BillingWalletResponse.FromJsonStreamAsync(__content, JsonSerializerContext).ConfigureAwait(false) ?? + throw new global::System.InvalidOperationException("Response deserialization failed."); + return new global::ResembleAI.AutoSDKHttpResponse( + statusCode: __response.StatusCode, + headers: global::ResembleAI.AutoSDKHttpResponse.CreateHeaders(__response), + requestUri: __response.RequestMessage?.RequestUri, + body: __value); + } + catch (global::System.Exception __ex) + { + string? __content = null; + try + { + __content = await __response.Content.ReadAsStringAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + } + catch (global::System.Exception) + { + } + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content ?? __response.ReasonPhrase ?? string.Empty, + innerException: __ex, + responseBody: __content, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + } + + } + } + finally + { + __httpRequest?.Dispose(); + } + } + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.BillingWalletClient.ListBillingWalletTransactions.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.BillingWalletClient.ListBillingWalletTransactions.g.cs new file mode 100644 index 0000000..6639d76 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.BillingWalletClient.ListBillingWalletTransactions.g.cs @@ -0,0 +1,615 @@ + +#nullable enable + +namespace ResembleAI +{ + public partial class BillingWalletClient + { + + private static readonly global::ResembleAI.AutoSDKServer[] s_ListBillingWalletTransactionsServers = new global::ResembleAI.AutoSDKServer[] + { new global::ResembleAI.AutoSDKServer( + id: "https-app-resemble-ai-api-v2", + name: "app.resemble.ai api v2", + url: "https://app.resemble.ai/api/v2", + description: ""), + }; + + + private static readonly global::ResembleAI.EndPointSecurityRequirement s_ListBillingWalletTransactionsSecurityRequirement0 = + new global::ResembleAI.EndPointSecurityRequirement + { + Authorizations = new global::ResembleAI.EndPointAuthorizationRequirement[] + { new global::ResembleAI.EndPointAuthorizationRequirement + { + Type = "Http", + SchemeId = "HttpBearer", + Location = "Header", + Name = "Bearer", + FriendlyName = "Bearer", + }, + }, + }; + private static readonly global::ResembleAI.EndPointSecurityRequirement[] s_ListBillingWalletTransactionsSecurityRequirements = + new global::ResembleAI.EndPointSecurityRequirement[] + { s_ListBillingWalletTransactionsSecurityRequirement0, + }; + partial void PrepareListBillingWalletTransactionsArguments( + global::System.Net.Http.HttpClient httpClient, + ref int? limit, + ref int? page, + ref int? perPage); + partial void PrepareListBillingWalletTransactionsRequest( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpRequestMessage httpRequestMessage, + int? limit, + int? page, + int? perPage); + partial void ProcessListBillingWalletTransactionsResponse( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpResponseMessage httpResponseMessage); + + partial void ProcessListBillingWalletTransactionsResponseContent( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpResponseMessage httpResponseMessage, + ref string content); + + /// + /// List wallet transactions
+ /// Returns wallet transactions newest first. Use page and per_page for paginated results, or limit for an unpaginated recent subset. + ///
+ /// + /// + /// Default Value: 1 + /// + /// + /// Default Value: 10 + /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task ListBillingWalletTransactionsAsync( + int? limit = default, + int? page = default, + int? perPage = default, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + var __response = await ListBillingWalletTransactionsAsResponseAsync( + limit: limit, + page: page, + perPage: perPage, + requestOptions: requestOptions, + cancellationToken: cancellationToken + ).ConfigureAwait(false); + + return __response.Body; + } + /// + /// List wallet transactions
+ /// Returns wallet transactions newest first. Use page and per_page for paginated results, or limit for an unpaginated recent subset. + ///
+ /// + /// + /// Default Value: 1 + /// + /// + /// Default Value: 10 + /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task> ListBillingWalletTransactionsAsResponseAsync( + int? limit = default, + int? page = default, + int? perPage = default, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + PrepareArguments( + client: HttpClient); + PrepareListBillingWalletTransactionsArguments( + httpClient: HttpClient, + limit: ref limit, + page: ref page, + perPage: ref perPage); + + + var __authorizations = global::ResembleAI.EndPointSecurityResolver.ResolveAuthorizations( + availableAuthorizations: Authorizations, + securityRequirements: s_ListBillingWalletTransactionsSecurityRequirements, + operationName: "ListBillingWalletTransactionsAsync"); + + using var __timeoutCancellationTokenSource = global::ResembleAI.AutoSDKRequestOptionsSupport.CreateTimeoutCancellationTokenSource( + clientOptions: Options, + requestOptions: requestOptions, + cancellationToken: cancellationToken); + var __effectiveCancellationToken = __timeoutCancellationTokenSource?.Token ?? cancellationToken; + var __effectiveReadResponseAsString = global::ResembleAI.AutoSDKRequestOptionsSupport.GetReadResponseAsString( + clientOptions: Options, + requestOptions: requestOptions, + fallbackValue: ReadResponseAsString); + var __maxAttempts = global::ResembleAI.AutoSDKRequestOptionsSupport.GetMaxAttempts( + clientOptions: Options, + requestOptions: requestOptions, + supportsRetry: true); + + global::System.Net.Http.HttpRequestMessage __CreateHttpRequest() + { + + var __pathBuilder = new global::ResembleAI.PathBuilder( + path: "/wallet/transactions", + baseUri: ResolveBaseUri( + servers: s_ListBillingWalletTransactionsServers, + defaultBaseUrl: "https://app.resemble.ai/api/v2")); + __pathBuilder + .AddOptionalParameter("limit", limit?.ToString()) + .AddOptionalParameter("page", page?.ToString()) + .AddOptionalParameter("per_page", perPage?.ToString()) + ; + var __path = __pathBuilder.ToString(); + __path = global::ResembleAI.AutoSDKRequestOptionsSupport.AppendQueryParameters( + path: __path, + clientParameters: Options.QueryParameters, + requestParameters: requestOptions?.QueryParameters); + var __httpRequest = new global::System.Net.Http.HttpRequestMessage( + method: global::System.Net.Http.HttpMethod.Get, + requestUri: new global::System.Uri(__path, global::System.UriKind.RelativeOrAbsolute)); +#if NET6_0_OR_GREATER + __httpRequest.Version = global::System.Net.HttpVersion.Version11; + __httpRequest.VersionPolicy = global::System.Net.Http.HttpVersionPolicy.RequestVersionOrHigher; +#endif + + foreach (var __authorization in __authorizations) + { + if (__authorization.Type == "Http" || + __authorization.Type == "OAuth2" || + __authorization.Type == "OpenIdConnect") + { + __httpRequest.Headers.Authorization = new global::System.Net.Http.Headers.AuthenticationHeaderValue( + scheme: __authorization.Name, + parameter: __authorization.Value); + } + else if (__authorization.Type == "ApiKey" && + __authorization.Location == "Header") + { + __httpRequest.Headers.Add(__authorization.Name, __authorization.Value); + } + } + global::ResembleAI.AutoSDKRequestOptionsSupport.ApplyHeaders( + request: __httpRequest, + clientHeaders: Options.Headers, + requestHeaders: requestOptions?.Headers); + + PrepareRequest( + client: HttpClient, + request: __httpRequest); + PrepareListBillingWalletTransactionsRequest( + httpClient: HttpClient, + httpRequestMessage: __httpRequest, + limit: limit, + page: page, + perPage: perPage); + + return __httpRequest; + } + + global::System.Net.Http.HttpRequestMessage? __httpRequest = null; + global::System.Net.Http.HttpResponseMessage? __response = null; + var __attemptNumber = 0; + try + { + for (var __attempt = 1; __attempt <= __maxAttempts; __attempt++) + { + __attemptNumber = __attempt; + __httpRequest = __CreateHttpRequest(); + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnBeforeRequestAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "ListBillingWalletTransactions", + methodName: "ListBillingWalletTransactionsAsync", + pathTemplate: "\"/wallet/transactions\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: null, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + try + { + __response = await HttpClient.SendAsync( + request: __httpRequest, + completionOption: global::System.Net.Http.HttpCompletionOption.ResponseContentRead, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + } + catch (global::System.Net.Http.HttpRequestException __exception) + { + var __retryDelay = global::ResembleAI.AutoSDKRequestOptionsSupport.GetRetryDelay( + clientOptions: Options, + requestOptions: requestOptions, + response: null, + attempt: __attempt); + var __willRetry = __attempt < __maxAttempts && !__effectiveCancellationToken.IsCancellationRequested; + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "ListBillingWalletTransactions", + methodName: "ListBillingWalletTransactionsAsync", + pathTemplate: "\"/wallet/transactions\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: null, + exception: __exception, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: __willRetry, + retryDelay: __willRetry ? __retryDelay : (global::System.TimeSpan?)null, + retryReason: "exception", + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + if (!__willRetry) + { + throw; + } + + __httpRequest.Dispose(); + __httpRequest = null; + await global::ResembleAI.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync( + retryDelay: __retryDelay, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + continue; + } + + if (__response != null && + __attempt < __maxAttempts && + global::ResembleAI.AutoSDKRequestOptionsSupport.ShouldRetryStatusCode(__response.StatusCode)) + { + var __retryDelay = global::ResembleAI.AutoSDKRequestOptionsSupport.GetRetryDelay( + clientOptions: Options, + requestOptions: requestOptions, + response: __response, + attempt: __attempt); + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "ListBillingWalletTransactions", + methodName: "ListBillingWalletTransactionsAsync", + pathTemplate: "\"/wallet/transactions\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: true, + retryDelay: __retryDelay, + retryReason: "status:" + ((int)__response.StatusCode).ToString(global::System.Globalization.CultureInfo.InvariantCulture), + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + __response.Dispose(); + __response = null; + __httpRequest.Dispose(); + __httpRequest = null; + await global::ResembleAI.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync( + retryDelay: __retryDelay, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + continue; + } + + break; + } + + if (__response == null) + { + throw new global::System.InvalidOperationException("No response received."); + } + + using (__response) + { + + ProcessResponse( + client: HttpClient, + response: __response); + ProcessListBillingWalletTransactionsResponse( + httpClient: HttpClient, + httpResponseMessage: __response); + if (__response.IsSuccessStatusCode) + { + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterSuccessAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "ListBillingWalletTransactions", + methodName: "ListBillingWalletTransactionsAsync", + pathTemplate: "\"/wallet/transactions\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attemptNumber, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + } + else + { + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "ListBillingWalletTransactions", + methodName: "ListBillingWalletTransactionsAsync", + pathTemplate: "\"/wallet/transactions\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attemptNumber, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + } + // The request could not be parsed or contains invalid parameters. + if ((int)__response.StatusCode == 400) + { + string? __content_400 = null; + global::System.Exception? __exception_400 = null; + global::ResembleAI.BillingError? __value_400 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_400 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_400 = global::ResembleAI.BillingError.FromJson(__content_400, JsonSerializerContext); + } + else + { + __content_400 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_400 = global::ResembleAI.BillingError.FromJson(__content_400, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_400 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_400 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_400, + responseBody: __content_400, + responseObject: __value_400, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + // A valid API key was not provided. + if ((int)__response.StatusCode == 401) + { + string? __content_401 = null; + global::System.Exception? __exception_401 = null; + global::ResembleAI.BillingError? __value_401 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_401 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_401 = global::ResembleAI.BillingError.FromJson(__content_401, JsonSerializerContext); + } + else + { + __content_401 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_401 = global::ResembleAI.BillingError.FromJson(__content_401, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_401 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_401 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_401, + responseBody: __content_401, + responseObject: __value_401, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + // The API key owner cannot manage billing, or the Billing API is unavailable for the customer's billing arrangement. + if ((int)__response.StatusCode == 403) + { + string? __content_403 = null; + global::System.Exception? __exception_403 = null; + global::ResembleAI.BillingForbiddenError? __value_403 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_403 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_403 = global::ResembleAI.BillingForbiddenError.FromJson(__content_403, JsonSerializerContext); + } + else + { + __content_403 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_403 = global::ResembleAI.BillingForbiddenError.FromJson(__content_403, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_403 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_403 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_403, + responseBody: __content_403, + responseObject: __value_403, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + // An unexpected billing error occurred. + if ((int)__response.StatusCode == 500) + { + string? __content_500 = null; + global::System.Exception? __exception_500 = null; + global::ResembleAI.BillingError? __value_500 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_500 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_500 = global::ResembleAI.BillingError.FromJson(__content_500, JsonSerializerContext); + } + else + { + __content_500 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_500 = global::ResembleAI.BillingError.FromJson(__content_500, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_500 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_500 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_500, + responseBody: __content_500, + responseObject: __value_500, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + + if (__effectiveReadResponseAsString) + { + var __content = await __response.Content.ReadAsStringAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + + ProcessResponseContent( + client: HttpClient, + response: __response, + content: ref __content); + ProcessListBillingWalletTransactionsResponseContent( + httpClient: HttpClient, + httpResponseMessage: __response, + content: ref __content); + + try + { + __response.EnsureSuccessStatusCode(); + + var __value = global::ResembleAI.BillingTransactionsResponse.FromJson(__content, JsonSerializerContext) ?? + throw new global::System.InvalidOperationException($"Response deserialization failed for \"{__content}\" "); + return new global::ResembleAI.AutoSDKHttpResponse( + statusCode: __response.StatusCode, + headers: global::ResembleAI.AutoSDKHttpResponse.CreateHeaders(__response), + requestUri: __response.RequestMessage?.RequestUri, + body: __value); + } + catch (global::System.Exception __ex) + { + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content ?? __response.ReasonPhrase ?? string.Empty, + innerException: __ex, + responseBody: __content, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + } + else + { + try + { + __response.EnsureSuccessStatusCode(); + using var __content = await __response.Content.ReadAsStreamAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + + var __value = await global::ResembleAI.BillingTransactionsResponse.FromJsonStreamAsync(__content, JsonSerializerContext).ConfigureAwait(false) ?? + throw new global::System.InvalidOperationException("Response deserialization failed."); + return new global::ResembleAI.AutoSDKHttpResponse( + statusCode: __response.StatusCode, + headers: global::ResembleAI.AutoSDKHttpResponse.CreateHeaders(__response), + requestUri: __response.RequestMessage?.RequestUri, + body: __value); + } + catch (global::System.Exception __ex) + { + string? __content = null; + try + { + __content = await __response.Content.ReadAsStringAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + } + catch (global::System.Exception) + { + } + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content ?? __response.ReasonPhrase ?? string.Empty, + innerException: __ex, + responseBody: __content, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + } + + } + } + finally + { + __httpRequest?.Dispose(); + } + } + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.BillingWalletClient.UpdateBillingAutoReload.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.BillingWalletClient.UpdateBillingAutoReload.g.cs new file mode 100644 index 0000000..9e80f67 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.BillingWalletClient.UpdateBillingAutoReload.g.cs @@ -0,0 +1,664 @@ + +#nullable enable + +namespace ResembleAI +{ + public partial class BillingWalletClient + { + + private static readonly global::ResembleAI.AutoSDKServer[] s_UpdateBillingAutoReloadServers = new global::ResembleAI.AutoSDKServer[] + { new global::ResembleAI.AutoSDKServer( + id: "https-app-resemble-ai-api-v2", + name: "app.resemble.ai api v2", + url: "https://app.resemble.ai/api/v2", + description: ""), + }; + + + private static readonly global::ResembleAI.EndPointSecurityRequirement s_UpdateBillingAutoReloadSecurityRequirement0 = + new global::ResembleAI.EndPointSecurityRequirement + { + Authorizations = new global::ResembleAI.EndPointAuthorizationRequirement[] + { new global::ResembleAI.EndPointAuthorizationRequirement + { + Type = "Http", + SchemeId = "HttpBearer", + Location = "Header", + Name = "Bearer", + FriendlyName = "Bearer", + }, + }, + }; + private static readonly global::ResembleAI.EndPointSecurityRequirement[] s_UpdateBillingAutoReloadSecurityRequirements = + new global::ResembleAI.EndPointSecurityRequirement[] + { s_UpdateBillingAutoReloadSecurityRequirement0, + }; + partial void PrepareUpdateBillingAutoReloadArguments( + global::System.Net.Http.HttpClient httpClient, + global::ResembleAI.BillingUpdateAutoReloadRequest request); + partial void PrepareUpdateBillingAutoReloadRequest( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpRequestMessage httpRequestMessage, + global::ResembleAI.BillingUpdateAutoReloadRequest request); + partial void ProcessUpdateBillingAutoReloadResponse( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpResponseMessage httpResponseMessage); + + partial void ProcessUpdateBillingAutoReloadResponseContent( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpResponseMessage httpResponseMessage, + ref string content); + + /// + /// Update auto-reload settings
+ /// Enables, disables, or changes wallet auto-reload. Amounts are expressed in cents and must comply with the limits returned by the GET operation. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task UpdateBillingAutoReloadAsync( + + global::ResembleAI.BillingUpdateAutoReloadRequest request, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + var __response = await UpdateBillingAutoReloadAsResponseAsync( + + request: request, + requestOptions: requestOptions, + cancellationToken: cancellationToken + ).ConfigureAwait(false); + + return __response.Body; + } + /// + /// Update auto-reload settings
+ /// Enables, disables, or changes wallet auto-reload. Amounts are expressed in cents and must comply with the limits returned by the GET operation. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task> UpdateBillingAutoReloadAsResponseAsync( + + global::ResembleAI.BillingUpdateAutoReloadRequest request, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + request = request ?? throw new global::System.ArgumentNullException(nameof(request)); + + PrepareArguments( + client: HttpClient); + PrepareUpdateBillingAutoReloadArguments( + httpClient: HttpClient, + request: request); + + + var __authorizations = global::ResembleAI.EndPointSecurityResolver.ResolveAuthorizations( + availableAuthorizations: Authorizations, + securityRequirements: s_UpdateBillingAutoReloadSecurityRequirements, + operationName: "UpdateBillingAutoReloadAsync"); + + using var __timeoutCancellationTokenSource = global::ResembleAI.AutoSDKRequestOptionsSupport.CreateTimeoutCancellationTokenSource( + clientOptions: Options, + requestOptions: requestOptions, + cancellationToken: cancellationToken); + var __effectiveCancellationToken = __timeoutCancellationTokenSource?.Token ?? cancellationToken; + var __effectiveReadResponseAsString = global::ResembleAI.AutoSDKRequestOptionsSupport.GetReadResponseAsString( + clientOptions: Options, + requestOptions: requestOptions, + fallbackValue: ReadResponseAsString); + var __maxAttempts = global::ResembleAI.AutoSDKRequestOptionsSupport.GetMaxAttempts( + clientOptions: Options, + requestOptions: requestOptions, + supportsRetry: true); + + global::System.Net.Http.HttpRequestMessage __CreateHttpRequest() + { + + var __pathBuilder = new global::ResembleAI.PathBuilder( + path: "/wallet/auto_reload", + baseUri: ResolveBaseUri( + servers: s_UpdateBillingAutoReloadServers, + defaultBaseUrl: "https://app.resemble.ai/api/v2")); + var __path = __pathBuilder.ToString(); + __path = global::ResembleAI.AutoSDKRequestOptionsSupport.AppendQueryParameters( + path: __path, + clientParameters: Options.QueryParameters, + requestParameters: requestOptions?.QueryParameters); + var __httpRequest = new global::System.Net.Http.HttpRequestMessage( + method: global::System.Net.Http.HttpMethod.Put, + requestUri: new global::System.Uri(__path, global::System.UriKind.RelativeOrAbsolute)); +#if NET6_0_OR_GREATER + __httpRequest.Version = global::System.Net.HttpVersion.Version11; + __httpRequest.VersionPolicy = global::System.Net.Http.HttpVersionPolicy.RequestVersionOrHigher; +#endif + + foreach (var __authorization in __authorizations) + { + if (__authorization.Type == "Http" || + __authorization.Type == "OAuth2" || + __authorization.Type == "OpenIdConnect") + { + __httpRequest.Headers.Authorization = new global::System.Net.Http.Headers.AuthenticationHeaderValue( + scheme: __authorization.Name, + parameter: __authorization.Value); + } + else if (__authorization.Type == "ApiKey" && + __authorization.Location == "Header") + { + __httpRequest.Headers.Add(__authorization.Name, __authorization.Value); + } + } + var __httpRequestContentBody = request.ToJson(JsonSerializerContext); + var __httpRequestContent = new global::System.Net.Http.StringContent( + content: __httpRequestContentBody, + encoding: global::System.Text.Encoding.UTF8, + mediaType: "application/json"); + __httpRequest.Content = __httpRequestContent; + global::ResembleAI.AutoSDKRequestOptionsSupport.ApplyHeaders( + request: __httpRequest, + clientHeaders: Options.Headers, + requestHeaders: requestOptions?.Headers); + + PrepareRequest( + client: HttpClient, + request: __httpRequest); + PrepareUpdateBillingAutoReloadRequest( + httpClient: HttpClient, + httpRequestMessage: __httpRequest, + request: request); + + return __httpRequest; + } + + global::System.Net.Http.HttpRequestMessage? __httpRequest = null; + global::System.Net.Http.HttpResponseMessage? __response = null; + var __attemptNumber = 0; + try + { + for (var __attempt = 1; __attempt <= __maxAttempts; __attempt++) + { + __attemptNumber = __attempt; + __httpRequest = __CreateHttpRequest(); + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnBeforeRequestAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "UpdateBillingAutoReload", + methodName: "UpdateBillingAutoReloadAsync", + pathTemplate: "\"/wallet/auto_reload\"", + httpMethod: "PUT", + baseUri: BaseUri, + request: __httpRequest!, + response: null, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + try + { + __response = await HttpClient.SendAsync( + request: __httpRequest, + completionOption: global::System.Net.Http.HttpCompletionOption.ResponseContentRead, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + } + catch (global::System.Net.Http.HttpRequestException __exception) + { + var __retryDelay = global::ResembleAI.AutoSDKRequestOptionsSupport.GetRetryDelay( + clientOptions: Options, + requestOptions: requestOptions, + response: null, + attempt: __attempt); + var __willRetry = __attempt < __maxAttempts && !__effectiveCancellationToken.IsCancellationRequested; + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "UpdateBillingAutoReload", + methodName: "UpdateBillingAutoReloadAsync", + pathTemplate: "\"/wallet/auto_reload\"", + httpMethod: "PUT", + baseUri: BaseUri, + request: __httpRequest!, + response: null, + exception: __exception, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: __willRetry, + retryDelay: __willRetry ? __retryDelay : (global::System.TimeSpan?)null, + retryReason: "exception", + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + if (!__willRetry) + { + throw; + } + + __httpRequest.Dispose(); + __httpRequest = null; + await global::ResembleAI.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync( + retryDelay: __retryDelay, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + continue; + } + + if (__response != null && + __attempt < __maxAttempts && + global::ResembleAI.AutoSDKRequestOptionsSupport.ShouldRetryStatusCode(__response.StatusCode)) + { + var __retryDelay = global::ResembleAI.AutoSDKRequestOptionsSupport.GetRetryDelay( + clientOptions: Options, + requestOptions: requestOptions, + response: __response, + attempt: __attempt); + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "UpdateBillingAutoReload", + methodName: "UpdateBillingAutoReloadAsync", + pathTemplate: "\"/wallet/auto_reload\"", + httpMethod: "PUT", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: true, + retryDelay: __retryDelay, + retryReason: "status:" + ((int)__response.StatusCode).ToString(global::System.Globalization.CultureInfo.InvariantCulture), + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + __response.Dispose(); + __response = null; + __httpRequest.Dispose(); + __httpRequest = null; + await global::ResembleAI.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync( + retryDelay: __retryDelay, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + continue; + } + + break; + } + + if (__response == null) + { + throw new global::System.InvalidOperationException("No response received."); + } + + using (__response) + { + + ProcessResponse( + client: HttpClient, + response: __response); + ProcessUpdateBillingAutoReloadResponse( + httpClient: HttpClient, + httpResponseMessage: __response); + if (__response.IsSuccessStatusCode) + { + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterSuccessAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "UpdateBillingAutoReload", + methodName: "UpdateBillingAutoReloadAsync", + pathTemplate: "\"/wallet/auto_reload\"", + httpMethod: "PUT", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attemptNumber, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + } + else + { + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "UpdateBillingAutoReload", + methodName: "UpdateBillingAutoReloadAsync", + pathTemplate: "\"/wallet/auto_reload\"", + httpMethod: "PUT", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attemptNumber, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + } + // The request could not be parsed or contains invalid parameters. + if ((int)__response.StatusCode == 400) + { + string? __content_400 = null; + global::System.Exception? __exception_400 = null; + global::ResembleAI.BillingError? __value_400 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_400 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_400 = global::ResembleAI.BillingError.FromJson(__content_400, JsonSerializerContext); + } + else + { + __content_400 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_400 = global::ResembleAI.BillingError.FromJson(__content_400, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_400 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_400 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_400, + responseBody: __content_400, + responseObject: __value_400, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + // A valid API key was not provided. + if ((int)__response.StatusCode == 401) + { + string? __content_401 = null; + global::System.Exception? __exception_401 = null; + global::ResembleAI.BillingError? __value_401 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_401 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_401 = global::ResembleAI.BillingError.FromJson(__content_401, JsonSerializerContext); + } + else + { + __content_401 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_401 = global::ResembleAI.BillingError.FromJson(__content_401, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_401 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_401 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_401, + responseBody: __content_401, + responseObject: __value_401, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + // The API key owner cannot manage billing, or the Billing API is unavailable for the customer's billing arrangement. + if ((int)__response.StatusCode == 403) + { + string? __content_403 = null; + global::System.Exception? __exception_403 = null; + global::ResembleAI.BillingForbiddenError? __value_403 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_403 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_403 = global::ResembleAI.BillingForbiddenError.FromJson(__content_403, JsonSerializerContext); + } + else + { + __content_403 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_403 = global::ResembleAI.BillingForbiddenError.FromJson(__content_403, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_403 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_403 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_403, + responseBody: __content_403, + responseObject: __value_403, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + // The request was understood but violates a billing rule. + if ((int)__response.StatusCode == 422) + { + string? __content_422 = null; + global::System.Exception? __exception_422 = null; + global::ResembleAI.UpdateBillingAutoReloadRequestUnprocessableEntityError? __value_422 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_422 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_422 = global::ResembleAI.UpdateBillingAutoReloadRequestUnprocessableEntityError.FromJson(__content_422, JsonSerializerContext); + } + else + { + __content_422 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_422 = global::ResembleAI.UpdateBillingAutoReloadRequestUnprocessableEntityError.FromJson(__content_422, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_422 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_422 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_422, + responseBody: __content_422, + responseObject: __value_422, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + // An unexpected billing error occurred. + if ((int)__response.StatusCode == 500) + { + string? __content_500 = null; + global::System.Exception? __exception_500 = null; + global::ResembleAI.BillingError? __value_500 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_500 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_500 = global::ResembleAI.BillingError.FromJson(__content_500, JsonSerializerContext); + } + else + { + __content_500 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_500 = global::ResembleAI.BillingError.FromJson(__content_500, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_500 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_500 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_500, + responseBody: __content_500, + responseObject: __value_500, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + + if (__effectiveReadResponseAsString) + { + var __content = await __response.Content.ReadAsStringAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + + ProcessResponseContent( + client: HttpClient, + response: __response, + content: ref __content); + ProcessUpdateBillingAutoReloadResponseContent( + httpClient: HttpClient, + httpResponseMessage: __response, + content: ref __content); + + try + { + __response.EnsureSuccessStatusCode(); + + var __value = global::ResembleAI.BillingWalletUpdateBillingAutoReloadResponse200.FromJson(__content, JsonSerializerContext) ?? + throw new global::System.InvalidOperationException($"Response deserialization failed for \"{__content}\" "); + return new global::ResembleAI.AutoSDKHttpResponse( + statusCode: __response.StatusCode, + headers: global::ResembleAI.AutoSDKHttpResponse.CreateHeaders(__response), + requestUri: __response.RequestMessage?.RequestUri, + body: __value); + } + catch (global::System.Exception __ex) + { + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content ?? __response.ReasonPhrase ?? string.Empty, + innerException: __ex, + responseBody: __content, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + } + else + { + try + { + __response.EnsureSuccessStatusCode(); + using var __content = await __response.Content.ReadAsStreamAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + + var __value = await global::ResembleAI.BillingWalletUpdateBillingAutoReloadResponse200.FromJsonStreamAsync(__content, JsonSerializerContext).ConfigureAwait(false) ?? + throw new global::System.InvalidOperationException("Response deserialization failed."); + return new global::ResembleAI.AutoSDKHttpResponse( + statusCode: __response.StatusCode, + headers: global::ResembleAI.AutoSDKHttpResponse.CreateHeaders(__response), + requestUri: __response.RequestMessage?.RequestUri, + body: __value); + } + catch (global::System.Exception __ex) + { + string? __content = null; + try + { + __content = await __response.Content.ReadAsStringAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + } + catch (global::System.Exception) + { + } + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content ?? __response.ReasonPhrase ?? string.Empty, + innerException: __ex, + responseBody: __content, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + } + + } + } + finally + { + __httpRequest?.Dispose(); + } + } + /// + /// Update auto-reload settings
+ /// Enables, disables, or changes wallet auto-reload. Amounts are expressed in cents and must comply with the limits returned by the GET operation. + ///
+ /// + /// + /// + /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task UpdateBillingAutoReloadAsync( + bool enabled, + int reloadAmountCents, + int minimumBalanceThresholdCents, + int maximumMonthlySpendCents, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + var __request = new global::ResembleAI.BillingUpdateAutoReloadRequest + { + Enabled = enabled, + ReloadAmountCents = reloadAmountCents, + MinimumBalanceThresholdCents = minimumBalanceThresholdCents, + MaximumMonthlySpendCents = maximumMonthlySpendCents, + }; + + return await UpdateBillingAutoReloadAsync( + request: __request, + requestOptions: requestOptions, + cancellationToken: cancellationToken).ConfigureAwait(false); + } + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.BillingWalletClient.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.BillingWalletClient.g.cs new file mode 100644 index 0000000..150a009 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.BillingWalletClient.g.cs @@ -0,0 +1,175 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// If no httpClient is provided, a new one will be created.
+ /// If no baseUri is provided, the default baseUri from OpenAPI spec will be used. + ///
+ public sealed partial class BillingWalletClient : global::ResembleAI.IBillingWalletClient, global::System.IDisposable + { + /// + /// + /// + public const string DefaultBaseUrl = "https://app.resemble.ai/api/v2"; + + private bool _disposeHttpClient = true; + + /// + public global::System.Net.Http.HttpClient HttpClient { get; } + + /// + public System.Uri? BaseUri => HttpClient.BaseAddress; + + /// + public global::System.Collections.Generic.List Authorizations { get; } + + /// + public bool ReadResponseAsString { get; set; } +#if DEBUG + = true; +#endif + + /// + public global::ResembleAI.AutoSDKClientOptions Options { get; } + + + internal global::ResembleAI.AutoSDKServerConfiguration AutoSDKServerConfiguration { get; set; } = new global::ResembleAI.AutoSDKServerConfiguration(); + /// + /// + /// + public global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } = global::ResembleAI.SourceGenerationContext.Default; + + + /// + /// Creates a new instance of the BillingWalletClient. + /// If no httpClient is provided, a new one will be created. + /// If no baseUri is provided, the default baseUri from OpenAPI spec will be used. + /// + /// The HttpClient instance. If not provided, a new one will be created. + /// The base URL for the API. If not provided, the default baseUri from OpenAPI spec will be used. + /// The authorizations to use for the requests. + /// Dispose the HttpClient when the instance is disposed. True by default. + public BillingWalletClient( + global::System.Net.Http.HttpClient? httpClient = null, + global::System.Uri? baseUri = null, + global::System.Collections.Generic.List? authorizations = null, + bool disposeHttpClient = true) : this( + httpClient, + baseUri, + authorizations, + options: null, + disposeHttpClient: disposeHttpClient) + { + } + + /// + /// Creates a new instance of the BillingWalletClient with explicit options but no base URL override. + /// Skips passing baseUri so the default base URL from the OpenAPI spec applies. + /// + /// The HttpClient instance. If not provided, a new one will be created. + /// The authorizations to use for the requests. + /// Client-wide request defaults such as headers, query parameters, retries, and timeout. + /// Dispose the HttpClient when the instance is disposed. True by default. + public BillingWalletClient( + global::System.Net.Http.HttpClient? httpClient, + global::System.Collections.Generic.List? authorizations, + global::ResembleAI.AutoSDKClientOptions? options, + bool disposeHttpClient = true) : this( + httpClient, + baseUri: null, + authorizations, + options, + disposeHttpClient: disposeHttpClient) + { + } + + /// + /// Creates a new instance of the BillingWalletClient. + /// If no httpClient is provided, a new one will be created. + /// If no baseUri is provided, the default baseUri from OpenAPI spec will be used. + /// + /// The HttpClient instance. If not provided, a new one will be created. + /// The base URL for the API. If not provided, the default baseUri from OpenAPI spec will be used. + /// The authorizations to use for the requests. + /// Client-wide request defaults such as headers, query parameters, retries, and timeout. + /// Dispose the HttpClient when the instance is disposed. True by default. + public BillingWalletClient( + global::System.Net.Http.HttpClient? httpClient, + global::System.Uri? baseUri, + global::System.Collections.Generic.List? authorizations, + global::ResembleAI.AutoSDKClientOptions? options, + bool disposeHttpClient = true) + { + + HttpClient = httpClient ?? new global::System.Net.Http.HttpClient(); + if (baseUri is not null) + { + HttpClient.BaseAddress ??= baseUri; + } + Authorizations = authorizations ?? new global::System.Collections.Generic.List(); + Options = options ?? new global::ResembleAI.AutoSDKClientOptions(); + _disposeHttpClient = disposeHttpClient; + + AutoSDKServerConfiguration.ExplicitBaseUri = baseUri ?? httpClient?.BaseAddress; + + Initialized(HttpClient); + } + + /// + public void Dispose() + { + if (_disposeHttpClient) + { + HttpClient.Dispose(); + } + } + + partial void Initialized( + global::System.Net.Http.HttpClient client); + partial void PrepareArguments( + global::System.Net.Http.HttpClient client); + partial void PrepareRequest( + global::System.Net.Http.HttpClient client, + global::System.Net.Http.HttpRequestMessage request); + partial void ProcessResponse( + global::System.Net.Http.HttpClient client, + global::System.Net.Http.HttpResponseMessage response); + partial void ProcessResponseContent( + global::System.Net.Http.HttpClient client, + global::System.Net.Http.HttpResponseMessage response, + ref string content); + + + private global::System.Uri? ResolveBaseUri( + global::ResembleAI.AutoSDKServer[] servers, + string defaultBaseUrl) + { + if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri) + { + return explicitBaseUri; + } + + if (AutoSDKServerConfiguration.SelectedServer is global::ResembleAI.AutoSDKServer selectedServer) + { + foreach (var server in servers) + { + if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal)) + { + return server.Uri; + } + } + } + + if (servers.Length > 0) + { + return servers[0].Uri; + } + + return string.IsNullOrWhiteSpace(defaultBaseUrl) + ? HttpClient.BaseAddress + : new global::System.Uri(defaultBaseUrl, global::System.UriKind.RelativeOrAbsolute); + } + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.IBillingPlansClient.GetBillingPlan.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.IBillingPlansClient.GetBillingPlan.g.cs new file mode 100644 index 0000000..3360f5e --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.IBillingPlansClient.GetBillingPlan.g.cs @@ -0,0 +1,32 @@ +#nullable enable + +namespace ResembleAI +{ + public partial interface IBillingPlansClient + { + /// + /// Get a billing plan
+ /// Returns an active billing plan by slug, including its products, prices, and quantity rules. This endpoint is public. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task GetBillingPlanAsync( + string id, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + /// + /// Get a billing plan
+ /// Returns an active billing plan by slug, including its products, prices, and quantity rules. This endpoint is public. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task> GetBillingPlanAsResponseAsync( + string id, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.IBillingPlansClient.ListBillingPlans.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.IBillingPlansClient.ListBillingPlans.g.cs new file mode 100644 index 0000000..938feab --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.IBillingPlansClient.ListBillingPlans.g.cs @@ -0,0 +1,28 @@ +#nullable enable + +namespace ResembleAI +{ + public partial interface IBillingPlansClient + { + /// + /// List billing plans
+ /// Returns all active self-serve plans, their products, prices, and plan-specific quantity rules. This endpoint is public. + ///
+ /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task ListBillingPlansAsync( + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + /// + /// List billing plans
+ /// Returns all active self-serve plans, their products, prices, and plan-specific quantity rules. This endpoint is public. + ///
+ /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task> ListBillingPlansAsResponseAsync( + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.IBillingPlansClient.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.IBillingPlansClient.g.cs new file mode 100644 index 0000000..b0b8b76 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.IBillingPlansClient.g.cs @@ -0,0 +1,48 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// If no httpClient is provided, a new one will be created.
+ /// If no baseUri is provided, the default baseUri from OpenAPI spec will be used. + ///
+ public partial interface IBillingPlansClient : global::System.IDisposable + { + /// + /// The HttpClient instance. + /// + public global::System.Net.Http.HttpClient HttpClient { get; } + + /// + /// The base URL for the API. + /// + public System.Uri? BaseUri { get; } + + /// + /// The authorizations to use for the requests. + /// + public global::System.Collections.Generic.List Authorizations { get; } + + /// + /// Gets or sets a value indicating whether the response content should be read as a string. + /// True by default in debug builds, false otherwise. + /// When false, successful responses are deserialized directly from the response stream for better performance. + /// Error responses are always read as strings regardless of this setting, + /// ensuring is populated. + /// + public bool ReadResponseAsString { get; set; } + /// + /// Client-wide request defaults such as headers, query parameters, retries, and timeout. + /// + public global::ResembleAI.AutoSDKClientOptions Options { get; } + + + /// + /// + /// + global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } + + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.IBillingSubscriptionsClient.ChangeBillingPlan.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.IBillingSubscriptionsClient.ChangeBillingPlan.g.cs new file mode 100644 index 0000000..43fc894 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.IBillingSubscriptionsClient.ChangeBillingPlan.g.cs @@ -0,0 +1,50 @@ +#nullable enable + +namespace ResembleAI +{ + public partial interface IBillingSubscriptionsClient + { + /// + /// Change the current subscription plan
+ /// Changes a self-serve subscription to another active plan with proration. Optional product quantities are absolute quantities on the destination plan. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task ChangeBillingPlanAsync( + + global::ResembleAI.BillingChangePlanRequest request, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + /// + /// Change the current subscription plan
+ /// Changes a self-serve subscription to another active plan with proration. Optional product quantities are absolute quantities on the destination plan. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task> ChangeBillingPlanAsResponseAsync( + + global::ResembleAI.BillingChangePlanRequest request, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + /// + /// Change the current subscription plan
+ /// Changes a self-serve subscription to another active plan with proration. Optional product quantities are absolute quantities on the destination plan. + ///
+ /// + /// + /// Optional map of product slugs to desired quantities on the new plan. + /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task ChangeBillingPlanAsync( + string planSlug, + global::System.Collections.Generic.Dictionary? productQuantities = default, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.IBillingSubscriptionsClient.ConfirmBillingSubscriptionPayment.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.IBillingSubscriptionsClient.ConfirmBillingSubscriptionPayment.g.cs new file mode 100644 index 0000000..7c055e7 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.IBillingSubscriptionsClient.ConfirmBillingSubscriptionPayment.g.cs @@ -0,0 +1,48 @@ +#nullable enable + +namespace ResembleAI +{ + public partial interface IBillingSubscriptionsClient + { + /// + /// Confirm a subscription payment
+ /// Synchronizes the subscription after the customer completes the additional payment authentication requested by a quantity or plan change. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task ConfirmBillingSubscriptionPaymentAsync( + + global::ResembleAI.BillingConfirmPaymentRequest request, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + /// + /// Confirm a subscription payment
+ /// Synchronizes the subscription after the customer completes the additional payment authentication requested by a quantity or plan change. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task> ConfirmBillingSubscriptionPaymentAsResponseAsync( + + global::ResembleAI.BillingConfirmPaymentRequest request, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + /// + /// Confirm a subscription payment
+ /// Synchronizes the subscription after the customer completes the additional payment authentication requested by a quantity or plan change. + ///
+ /// + /// Payment intent identifier completed by the customer. + /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task ConfirmBillingSubscriptionPaymentAsync( + string paymentIntentId, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.IBillingSubscriptionsClient.GetBillingSubscription.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.IBillingSubscriptionsClient.GetBillingSubscription.g.cs new file mode 100644 index 0000000..465ccce --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.IBillingSubscriptionsClient.GetBillingSubscription.g.cs @@ -0,0 +1,28 @@ +#nullable enable + +namespace ResembleAI +{ + public partial interface IBillingSubscriptionsClient + { + /// + /// Get the current subscription
+ /// Returns the current team's active, past-due, or delinquent subscription. Returns a null subscription when no customer-visible subscription exists. + ///
+ /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task GetBillingSubscriptionAsync( + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + /// + /// Get the current subscription
+ /// Returns the current team's active, past-due, or delinquent subscription. Returns a null subscription when no customer-visible subscription exists. + ///
+ /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task> GetBillingSubscriptionAsResponseAsync( + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.IBillingSubscriptionsClient.UpdateBillingSubscriptionProducts.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.IBillingSubscriptionsClient.UpdateBillingSubscriptionProducts.g.cs new file mode 100644 index 0000000..8c706b1 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.IBillingSubscriptionsClient.UpdateBillingSubscriptionProducts.g.cs @@ -0,0 +1,46 @@ +#nullable enable + +namespace ResembleAI +{ + public partial interface IBillingSubscriptionsClient + { + /// + /// Update subscription product quantities
+ /// Updates one or more adjustable subscription products atomically. Each `new_quantity` is the desired absolute total, not an increment. A product is adjustable when its category is `subscription` and its `plan_product.allow_additional_usage` value is true. Quantities must remain within the plan's minimum and maximum and cannot be reduced below `consumed_quantity`. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task UpdateBillingSubscriptionProductsAsync( + + global::ResembleAI.BillingUpdateProductsRequest request, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + /// + /// Update subscription product quantities
+ /// Updates one or more adjustable subscription products atomically. Each `new_quantity` is the desired absolute total, not an increment. A product is adjustable when its category is `subscription` and its `plan_product.allow_additional_usage` value is true. Quantities must remain within the plan's minimum and maximum and cannot be reduced below `consumed_quantity`. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task> UpdateBillingSubscriptionProductsAsResponseAsync( + + global::ResembleAI.BillingUpdateProductsRequest request, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + /// + /// Update subscription product quantities
+ /// Updates one or more adjustable subscription products atomically. Each `new_quantity` is the desired absolute total, not an increment. A product is adjustable when its category is `subscription` and its `plan_product.allow_additional_usage` value is true. Quantities must remain within the plan's minimum and maximum and cannot be reduced below `consumed_quantity`. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task UpdateBillingSubscriptionProductsAsync( + global::System.Collections.Generic.IList changes, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.IBillingSubscriptionsClient.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.IBillingSubscriptionsClient.g.cs new file mode 100644 index 0000000..5e49641 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.IBillingSubscriptionsClient.g.cs @@ -0,0 +1,48 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// If no httpClient is provided, a new one will be created.
+ /// If no baseUri is provided, the default baseUri from OpenAPI spec will be used. + ///
+ public partial interface IBillingSubscriptionsClient : global::System.IDisposable + { + /// + /// The HttpClient instance. + /// + public global::System.Net.Http.HttpClient HttpClient { get; } + + /// + /// The base URL for the API. + /// + public System.Uri? BaseUri { get; } + + /// + /// The authorizations to use for the requests. + /// + public global::System.Collections.Generic.List Authorizations { get; } + + /// + /// Gets or sets a value indicating whether the response content should be read as a string. + /// True by default in debug builds, false otherwise. + /// When false, successful responses are deserialized directly from the response stream for better performance. + /// Error responses are always read as strings regardless of this setting, + /// ensuring is populated. + /// + public bool ReadResponseAsString { get; set; } + /// + /// Client-wide request defaults such as headers, query parameters, retries, and timeout. + /// + public global::ResembleAI.AutoSDKClientOptions Options { get; } + + + /// + /// + /// + global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } + + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.IAccountClient.GetBillingUsage.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.IBillingWalletClient.ExportBillingWalletTransactions.g.cs similarity index 69% rename from src/libs/ResembleAI/Generated/ResembleAI.IAccountClient.GetBillingUsage.g.cs rename to src/libs/ResembleAI/Generated/ResembleAI.IBillingWalletClient.ExportBillingWalletTransactions.g.cs index 1817626..a6683c5 100644 --- a/src/libs/ResembleAI/Generated/ResembleAI.IAccountClient.GetBillingUsage.g.cs +++ b/src/libs/ResembleAI/Generated/ResembleAI.IBillingWalletClient.ExportBillingWalletTransactions.g.cs @@ -2,26 +2,26 @@ namespace ResembleAI { - public partial interface IAccountClient + public partial interface IBillingWalletClient { /// - /// Get billing usage
- /// Get billing and usage information + /// Export wallet transactions
+ /// Downloads the current team's complete wallet transaction history as a CSV file, newest first. ///
/// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. /// The token to cancel the operation with /// - global::System.Threading.Tasks.Task GetBillingUsageAsync( + global::System.Threading.Tasks.Task ExportBillingWalletTransactionsAsync( global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, global::System.Threading.CancellationToken cancellationToken = default); /// - /// Get billing usage
- /// Get billing and usage information + /// Export wallet transactions
+ /// Downloads the current team's complete wallet transaction history as a CSV file, newest first. ///
/// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. /// The token to cancel the operation with /// - global::System.Threading.Tasks.Task> GetBillingUsageAsResponseAsync( + global::System.Threading.Tasks.Task> ExportBillingWalletTransactionsAsResponseAsync( global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, global::System.Threading.CancellationToken cancellationToken = default); } diff --git a/src/libs/ResembleAI/Generated/ResembleAI.IBillingWalletClient.GetBillingAutoReload.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.IBillingWalletClient.GetBillingAutoReload.g.cs new file mode 100644 index 0000000..6f3a90c --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.IBillingWalletClient.GetBillingAutoReload.g.cs @@ -0,0 +1,28 @@ +#nullable enable + +namespace ResembleAI +{ + public partial interface IBillingWalletClient + { + /// + /// Get auto-reload settings
+ /// Returns the current team's auto-reload configuration, whether a payment method is available, and the supported reload range. + ///
+ /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task GetBillingAutoReloadAsync( + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + /// + /// Get auto-reload settings
+ /// Returns the current team's auto-reload configuration, whether a payment method is available, and the supported reload range. + ///
+ /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task> GetBillingAutoReloadAsResponseAsync( + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.IBillingWalletClient.GetBillingWallet.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.IBillingWalletClient.GetBillingWallet.g.cs new file mode 100644 index 0000000..efab261 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.IBillingWalletClient.GetBillingWallet.g.cs @@ -0,0 +1,28 @@ +#nullable enable + +namespace ResembleAI +{ + public partial interface IBillingWalletClient + { + /// + /// Get the billing wallet
+ /// Returns the current team's cash, promotional, total, and lifetime wallet balances. + ///
+ /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task GetBillingWalletAsync( + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + /// + /// Get the billing wallet
+ /// Returns the current team's cash, promotional, total, and lifetime wallet balances. + ///
+ /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task> GetBillingWalletAsResponseAsync( + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.IBillingWalletClient.ListBillingWalletTransactions.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.IBillingWalletClient.ListBillingWalletTransactions.g.cs new file mode 100644 index 0000000..f5f0ad6 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.IBillingWalletClient.ListBillingWalletTransactions.g.cs @@ -0,0 +1,48 @@ +#nullable enable + +namespace ResembleAI +{ + public partial interface IBillingWalletClient + { + /// + /// List wallet transactions
+ /// Returns wallet transactions newest first. Use page and per_page for paginated results, or limit for an unpaginated recent subset. + ///
+ /// + /// + /// Default Value: 1 + /// + /// + /// Default Value: 10 + /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task ListBillingWalletTransactionsAsync( + int? limit = default, + int? page = default, + int? perPage = default, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + /// + /// List wallet transactions
+ /// Returns wallet transactions newest first. Use page and per_page for paginated results, or limit for an unpaginated recent subset. + ///
+ /// + /// + /// Default Value: 1 + /// + /// + /// Default Value: 10 + /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task> ListBillingWalletTransactionsAsResponseAsync( + int? limit = default, + int? page = default, + int? perPage = default, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.IBillingWalletClient.UpdateBillingAutoReload.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.IBillingWalletClient.UpdateBillingAutoReload.g.cs new file mode 100644 index 0000000..686cbc7 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.IBillingWalletClient.UpdateBillingAutoReload.g.cs @@ -0,0 +1,52 @@ +#nullable enable + +namespace ResembleAI +{ + public partial interface IBillingWalletClient + { + /// + /// Update auto-reload settings
+ /// Enables, disables, or changes wallet auto-reload. Amounts are expressed in cents and must comply with the limits returned by the GET operation. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task UpdateBillingAutoReloadAsync( + + global::ResembleAI.BillingUpdateAutoReloadRequest request, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + /// + /// Update auto-reload settings
+ /// Enables, disables, or changes wallet auto-reload. Amounts are expressed in cents and must comply with the limits returned by the GET operation. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task> UpdateBillingAutoReloadAsResponseAsync( + + global::ResembleAI.BillingUpdateAutoReloadRequest request, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + /// + /// Update auto-reload settings
+ /// Enables, disables, or changes wallet auto-reload. Amounts are expressed in cents and must comply with the limits returned by the GET operation. + ///
+ /// + /// + /// + /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task UpdateBillingAutoReloadAsync( + bool enabled, + int reloadAmountCents, + int minimumBalanceThresholdCents, + int maximumMonthlySpendCents, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.IBillingWalletClient.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.IBillingWalletClient.g.cs new file mode 100644 index 0000000..9612d35 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.IBillingWalletClient.g.cs @@ -0,0 +1,48 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// If no httpClient is provided, a new one will be created.
+ /// If no baseUri is provided, the default baseUri from OpenAPI spec will be used. + ///
+ public partial interface IBillingWalletClient : global::System.IDisposable + { + /// + /// The HttpClient instance. + /// + public global::System.Net.Http.HttpClient HttpClient { get; } + + /// + /// The base URL for the API. + /// + public System.Uri? BaseUri { get; } + + /// + /// The authorizations to use for the requests. + /// + public global::System.Collections.Generic.List Authorizations { get; } + + /// + /// Gets or sets a value indicating whether the response content should be read as a string. + /// True by default in debug builds, false otherwise. + /// When false, successful responses are deserialized directly from the response stream for better performance. + /// Error responses are always read as strings regardless of this setting, + /// ensuring is populated. + /// + public bool ReadResponseAsString { get; set; } + /// + /// Client-wide request defaults such as headers, query parameters, retries, and timeout. + /// + public global::ResembleAI.AutoSDKClientOptions Options { get; } + + + /// + /// + /// + global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } + + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.IResembleAIClient.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.IResembleAIClient.g.cs index 9b2cd1a..e462e73 100644 --- a/src/libs/ResembleAI/Generated/ResembleAI.IResembleAIClient.g.cs +++ b/src/libs/ResembleAI/Generated/ResembleAI.IResembleAIClient.g.cs @@ -80,6 +80,21 @@ public partial interface IResembleAIClient : global::System.IDisposable /// public AudioSourceTracingClient AudioSourceTracing { get; } + /// + /// + /// + public BillingPlansClient BillingPlans { get; } + + /// + /// + /// + public BillingSubscriptionsClient BillingSubscriptions { get; } + + /// + /// + /// + public BillingWalletClient BillingWallet { get; } + /// /// /// @@ -135,6 +150,11 @@ public partial interface IResembleAIClient : global::System.IDisposable /// public SecureUploadsClient SecureUploads { get; } + /// + /// + /// + public SignalClient Signal { get; } + /// /// /// diff --git a/src/libs/ResembleAI/Generated/ResembleAI.ISignalClient.CreateSignalCustomCategory.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.ISignalClient.CreateSignalCustomCategory.g.cs new file mode 100644 index 0000000..b29bd73 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.ISignalClient.CreateSignalCustomCategory.g.cs @@ -0,0 +1,68 @@ +#nullable enable + +namespace ResembleAI +{ + public partial interface ISignalClient + { + /// + /// Create custom category
+ /// Create a custom fraud category from example phrases. Categories embed asynchronously:
+ /// a new category starts at `pending`, moves to `embedding`, and becomes usable for
+ /// scoring once its status is `ready`. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task CreateSignalCustomCategoryAsync( + + global::ResembleAI.SignalCustomCategoryCreateRequest request, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + /// + /// Create custom category
+ /// Create a custom fraud category from example phrases. Categories embed asynchronously:
+ /// a new category starts at `pending`, moves to `embedding`, and becomes usable for
+ /// scoring once its status is `ready`. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task> CreateSignalCustomCategoryAsResponseAsync( + + global::ResembleAI.SignalCustomCategoryCreateRequest request, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + /// + /// Create custom category
+ /// Create a custom fraud category from example phrases. Categories embed asynchronously:
+ /// a new category starts at `pending`, moves to `embedding`, and becomes usable for
+ /// scoring once its status is `ready`. + ///
+ /// + /// Category name. Must be unique within the team. + /// + /// + /// Example phrases that define the pattern. Maximum 50 entries, each up to 2000 characters. A newline-separated string is also accepted. + /// + /// + /// + /// Single emoji. + /// + /// + /// Default Value: true + /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task CreateSignalCustomCategoryAsync( + string name, + global::System.Collections.Generic.IList scenarios, + string? description = default, + string? icon = default, + bool? enabled = default, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.ISignalClient.CreateSignalSubmission.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.ISignalClient.CreateSignalSubmission.g.cs new file mode 100644 index 0000000..5f9bd48 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.ISignalClient.CreateSignalSubmission.g.cs @@ -0,0 +1,66 @@ +#nullable enable + +namespace ResembleAI +{ + public partial interface ISignalClient + { + /// + /// Score content
+ /// Score a piece of content against the fraud and scam categories available to your team
+ /// and return a verdict with the best-matching categories.
+ /// Supply exactly one of:
+ /// - **Text** — `application/json` with a `text` field.
+ /// - **File** — `multipart/form-data` with the media attached as `file`. Audio, image, and
+ /// video are supported, up to 15 MB. The media type is detected from the file's MIME type
+ /// unless `media_type` is supplied. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task CreateSignalSubmissionAsync( + + global::ResembleAI.CreateSignalSubmissionRequest request, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + /// + /// Score content
+ /// Score a piece of content against the fraud and scam categories available to your team
+ /// and return a verdict with the best-matching categories.
+ /// Supply exactly one of:
+ /// - **Text** — `application/json` with a `text` field.
+ /// - **File** — `multipart/form-data` with the media attached as `file`. Audio, image, and
+ /// video are supported, up to 15 MB. The media type is detected from the file's MIME type
+ /// unless `media_type` is supplied. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task> CreateSignalSubmissionAsResponseAsync( + + global::ResembleAI.CreateSignalSubmissionRequest request, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + /// + /// Score content
+ /// Score a piece of content against the fraud and scam categories available to your team
+ /// and return a verdict with the best-matching categories.
+ /// Supply exactly one of:
+ /// - **Text** — `application/json` with a `text` field.
+ /// - **File** — `multipart/form-data` with the media attached as `file`. Audio, image, and
+ /// video are supported, up to 15 MB. The media type is detected from the file's MIME type
+ /// unless `media_type` is supplied. + ///
+ /// + /// Text to analyze. + /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task CreateSignalSubmissionAsync( + string text, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.ISignalClient.DeleteSignalCustomCategory.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.ISignalClient.DeleteSignalCustomCategory.g.cs new file mode 100644 index 0000000..cd54e78 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.ISignalClient.DeleteSignalCustomCategory.g.cs @@ -0,0 +1,32 @@ +#nullable enable + +namespace ResembleAI +{ + public partial interface ISignalClient + { + /// + /// Delete custom category
+ /// Delete a custom category and its example phrases. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task DeleteSignalCustomCategoryAsync( + int id, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + /// + /// Delete custom category
+ /// Delete a custom category and its example phrases. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task> DeleteSignalCustomCategoryAsResponseAsync( + int id, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.ISignalClient.DeleteSignalSubmission.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.ISignalClient.DeleteSignalSubmission.g.cs new file mode 100644 index 0000000..ce40033 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.ISignalClient.DeleteSignalSubmission.g.cs @@ -0,0 +1,32 @@ +#nullable enable + +namespace ResembleAI +{ + public partial interface ISignalClient + { + /// + /// Delete submission
+ /// Permanently delete a Signal submission belonging to your team. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task DeleteSignalSubmissionAsync( + int id, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + /// + /// Delete submission
+ /// Permanently delete a Signal submission belonging to your team. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task> DeleteSignalSubmissionAsResponseAsync( + int id, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.ISignalClient.GetSignalCustomCategory.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.ISignalClient.GetSignalCustomCategory.g.cs new file mode 100644 index 0000000..195965b --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.ISignalClient.GetSignalCustomCategory.g.cs @@ -0,0 +1,32 @@ +#nullable enable + +namespace ResembleAI +{ + public partial interface ISignalClient + { + /// + /// Get custom category
+ /// Retrieve a single custom category with its example phrases. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task GetSignalCustomCategoryAsync( + int id, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + /// + /// Get custom category
+ /// Retrieve a single custom category with its example phrases. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task> GetSignalCustomCategoryAsResponseAsync( + int id, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.ISignalClient.ListSignalCustomCategories.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.ISignalClient.ListSignalCustomCategories.g.cs new file mode 100644 index 0000000..e8df4b6 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.ISignalClient.ListSignalCustomCategories.g.cs @@ -0,0 +1,28 @@ +#nullable enable + +namespace ResembleAI +{ + public partial interface ISignalClient + { + /// + /// List custom categories
+ /// Retrieve the team's Signal settings, the built-in categories, the team's custom categories with their example phrases, and calibration status. + ///
+ /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task ListSignalCustomCategoriesAsync( + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + /// + /// List custom categories
+ /// Retrieve the team's Signal settings, the built-in categories, the team's custom categories with their example phrases, and calibration status. + ///
+ /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task> ListSignalCustomCategoriesAsResponseAsync( + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.ISignalClient.ListSignalSubmissions.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.ISignalClient.ListSignalSubmissions.g.cs new file mode 100644 index 0000000..2d45552 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.ISignalClient.ListSignalSubmissions.g.cs @@ -0,0 +1,44 @@ +#nullable enable + +namespace ResembleAI +{ + public partial interface ISignalClient + { + /// + /// List submissions
+ /// Retrieve past Signal submissions for your team, newest first. + ///
+ /// + /// Default Value: 1 + /// + /// + /// Default Value: 10 + /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task ListSignalSubmissionsAsync( + int? page = default, + int? perPage = default, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + /// + /// List submissions
+ /// Retrieve past Signal submissions for your team, newest first. + ///
+ /// + /// Default Value: 1 + /// + /// + /// Default Value: 10 + /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task> ListSignalSubmissionsAsResponseAsync( + int? page = default, + int? perPage = default, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.ISignalClient.UpdateSignalCustomCategory.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.ISignalClient.UpdateSignalCustomCategory.g.cs new file mode 100644 index 0000000..a51a87a --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.ISignalClient.UpdateSignalCustomCategory.g.cs @@ -0,0 +1,60 @@ +#nullable enable + +namespace ResembleAI +{ + public partial interface ISignalClient + { + /// + /// Update custom category
+ /// Update a custom category. Supplying `scenarios` replaces the existing example phrases and re-triggers embedding. + ///
+ /// + /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task UpdateSignalCustomCategoryAsync( + int id, + + global::ResembleAI.SignalCustomCategoryUpdateRequest request, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + /// + /// Update custom category
+ /// Update a custom category. Supplying `scenarios` replaces the existing example phrases and re-triggers embedding. + ///
+ /// + /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task> UpdateSignalCustomCategoryAsResponseAsync( + int id, + + global::ResembleAI.SignalCustomCategoryUpdateRequest request, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + /// + /// Update custom category
+ /// Update a custom category. Supplying `scenarios` replaces the existing example phrases and re-triggers embedding. + ///
+ /// + /// + /// + /// + /// + /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task UpdateSignalCustomCategoryAsync( + int id, + string? name = default, + global::System.Collections.Generic.IList? scenarios = default, + string? description = default, + string? icon = default, + bool? enabled = default, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.ISignalClient.UpdateSignalSettings.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.ISignalClient.UpdateSignalSettings.g.cs new file mode 100644 index 0000000..b7bdd84 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.ISignalClient.UpdateSignalSettings.g.cs @@ -0,0 +1,48 @@ +#nullable enable + +namespace ResembleAI +{ + public partial interface ISignalClient + { + /// + /// Update team settings
+ /// Update team-level Signal preferences. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task UpdateSignalSettingsAsync( + + global::ResembleAI.SignalSettingsUpdateRequest request, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + /// + /// Update team settings
+ /// Update team-level Signal preferences. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task> UpdateSignalSettingsAsResponseAsync( + + global::ResembleAI.SignalSettingsUpdateRequest request, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + /// + /// Update team settings
+ /// Update team-level Signal preferences. + ///
+ /// + /// When false, scoring uses only the team's custom categories. + /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + global::System.Threading.Tasks.Task UpdateSignalSettingsAsync( + bool? useBuiltinCategories = default, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default); + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.ISignalClient.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.ISignalClient.g.cs new file mode 100644 index 0000000..44debe5 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.ISignalClient.g.cs @@ -0,0 +1,48 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// If no httpClient is provided, a new one will be created.
+ /// If no baseUri is provided, the default baseUri from OpenAPI spec will be used. + ///
+ public partial interface ISignalClient : global::System.IDisposable + { + /// + /// The HttpClient instance. + /// + public global::System.Net.Http.HttpClient HttpClient { get; } + + /// + /// The base URL for the API. + /// + public System.Uri? BaseUri { get; } + + /// + /// The authorizations to use for the requests. + /// + public global::System.Collections.Generic.List Authorizations { get; } + + /// + /// Gets or sets a value indicating whether the response content should be read as a string. + /// True by default in debug builds, false otherwise. + /// When false, successful responses are deserialized directly from the response stream for better performance. + /// Error responses are always read as strings regardless of this setting, + /// ensuring is populated. + /// + public bool ReadResponseAsString { get; set; } + /// + /// Client-wide request defaults such as headers, query parameters, retries, and timeout. + /// + public global::ResembleAI.AutoSDKClientOptions Options { get; } + + + /// + /// + /// + global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } + + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingPlanBillingInterval.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingPlanBillingInterval.g.cs new file mode 100644 index 0000000..0bbb108 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingPlanBillingInterval.g.cs @@ -0,0 +1,53 @@ +#nullable enable + +namespace ResembleAI.JsonConverters +{ + /// + public sealed class BillingPlanBillingIntervalJsonConverter : global::System.Text.Json.Serialization.JsonConverter + { + /// + public override global::ResembleAI.BillingPlanBillingInterval Read( + ref global::System.Text.Json.Utf8JsonReader reader, + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + switch (reader.TokenType) + { + case global::System.Text.Json.JsonTokenType.String: + { + var stringValue = reader.GetString(); + if (stringValue != null) + { + return global::ResembleAI.BillingPlanBillingIntervalExtensions.ToEnum(stringValue) ?? default; + } + + break; + } + case global::System.Text.Json.JsonTokenType.Number: + { + var numValue = reader.GetInt32(); + return (global::ResembleAI.BillingPlanBillingInterval)numValue; + } + case global::System.Text.Json.JsonTokenType.Null: + { + return default(global::ResembleAI.BillingPlanBillingInterval); + } + default: + throw new global::System.ArgumentOutOfRangeException(nameof(reader)); + } + + return default; + } + + /// + public override void Write( + global::System.Text.Json.Utf8JsonWriter writer, + global::ResembleAI.BillingPlanBillingInterval value, + global::System.Text.Json.JsonSerializerOptions options) + { + writer = writer ?? throw new global::System.ArgumentNullException(nameof(writer)); + + writer.WriteStringValue(global::ResembleAI.BillingPlanBillingIntervalExtensions.ToValueString(value)); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingPlanBillingIntervalNullable.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingPlanBillingIntervalNullable.g.cs new file mode 100644 index 0000000..d998aca --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingPlanBillingIntervalNullable.g.cs @@ -0,0 +1,60 @@ +#nullable enable + +namespace ResembleAI.JsonConverters +{ + /// + public sealed class BillingPlanBillingIntervalNullableJsonConverter : global::System.Text.Json.Serialization.JsonConverter + { + /// + public override global::ResembleAI.BillingPlanBillingInterval? Read( + ref global::System.Text.Json.Utf8JsonReader reader, + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + switch (reader.TokenType) + { + case global::System.Text.Json.JsonTokenType.String: + { + var stringValue = reader.GetString(); + if (stringValue != null) + { + return global::ResembleAI.BillingPlanBillingIntervalExtensions.ToEnum(stringValue); + } + + break; + } + case global::System.Text.Json.JsonTokenType.Number: + { + var numValue = reader.GetInt32(); + return (global::ResembleAI.BillingPlanBillingInterval)numValue; + } + case global::System.Text.Json.JsonTokenType.Null: + { + return default(global::ResembleAI.BillingPlanBillingInterval?); + } + default: + throw new global::System.ArgumentOutOfRangeException(nameof(reader)); + } + + return default; + } + + /// + public override void Write( + global::System.Text.Json.Utf8JsonWriter writer, + global::ResembleAI.BillingPlanBillingInterval? value, + global::System.Text.Json.JsonSerializerOptions options) + { + writer = writer ?? throw new global::System.ArgumentNullException(nameof(writer)); + + if (value == null) + { + writer.WriteNullValue(); + } + else + { + writer.WriteStringValue(global::ResembleAI.BillingPlanBillingIntervalExtensions.ToValueString(value.Value)); + } + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingPlanPlanType.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingPlanPlanType.g.cs new file mode 100644 index 0000000..2a322e9 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingPlanPlanType.g.cs @@ -0,0 +1,53 @@ +#nullable enable + +namespace ResembleAI.JsonConverters +{ + /// + public sealed class BillingPlanPlanTypeJsonConverter : global::System.Text.Json.Serialization.JsonConverter + { + /// + public override global::ResembleAI.BillingPlanPlanType Read( + ref global::System.Text.Json.Utf8JsonReader reader, + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + switch (reader.TokenType) + { + case global::System.Text.Json.JsonTokenType.String: + { + var stringValue = reader.GetString(); + if (stringValue != null) + { + return global::ResembleAI.BillingPlanPlanTypeExtensions.ToEnum(stringValue) ?? default; + } + + break; + } + case global::System.Text.Json.JsonTokenType.Number: + { + var numValue = reader.GetInt32(); + return (global::ResembleAI.BillingPlanPlanType)numValue; + } + case global::System.Text.Json.JsonTokenType.Null: + { + return default(global::ResembleAI.BillingPlanPlanType); + } + default: + throw new global::System.ArgumentOutOfRangeException(nameof(reader)); + } + + return default; + } + + /// + public override void Write( + global::System.Text.Json.Utf8JsonWriter writer, + global::ResembleAI.BillingPlanPlanType value, + global::System.Text.Json.JsonSerializerOptions options) + { + writer = writer ?? throw new global::System.ArgumentNullException(nameof(writer)); + + writer.WriteStringValue(global::ResembleAI.BillingPlanPlanTypeExtensions.ToValueString(value)); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingPlanPlanTypeNullable.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingPlanPlanTypeNullable.g.cs new file mode 100644 index 0000000..6e952c1 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingPlanPlanTypeNullable.g.cs @@ -0,0 +1,60 @@ +#nullable enable + +namespace ResembleAI.JsonConverters +{ + /// + public sealed class BillingPlanPlanTypeNullableJsonConverter : global::System.Text.Json.Serialization.JsonConverter + { + /// + public override global::ResembleAI.BillingPlanPlanType? Read( + ref global::System.Text.Json.Utf8JsonReader reader, + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + switch (reader.TokenType) + { + case global::System.Text.Json.JsonTokenType.String: + { + var stringValue = reader.GetString(); + if (stringValue != null) + { + return global::ResembleAI.BillingPlanPlanTypeExtensions.ToEnum(stringValue); + } + + break; + } + case global::System.Text.Json.JsonTokenType.Number: + { + var numValue = reader.GetInt32(); + return (global::ResembleAI.BillingPlanPlanType)numValue; + } + case global::System.Text.Json.JsonTokenType.Null: + { + return default(global::ResembleAI.BillingPlanPlanType?); + } + default: + throw new global::System.ArgumentOutOfRangeException(nameof(reader)); + } + + return default; + } + + /// + public override void Write( + global::System.Text.Json.Utf8JsonWriter writer, + global::ResembleAI.BillingPlanPlanType? value, + global::System.Text.Json.JsonSerializerOptions options) + { + writer = writer ?? throw new global::System.ArgumentNullException(nameof(writer)); + + if (value == null) + { + writer.WriteNullValue(); + } + else + { + writer.WriteStringValue(global::ResembleAI.BillingPlanPlanTypeExtensions.ToValueString(value.Value)); + } + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingPlanProductCategory.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingPlanProductCategory.g.cs new file mode 100644 index 0000000..d3060de --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingPlanProductCategory.g.cs @@ -0,0 +1,53 @@ +#nullable enable + +namespace ResembleAI.JsonConverters +{ + /// + public sealed class BillingPlanProductCategoryJsonConverter : global::System.Text.Json.Serialization.JsonConverter + { + /// + public override global::ResembleAI.BillingPlanProductCategory Read( + ref global::System.Text.Json.Utf8JsonReader reader, + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + switch (reader.TokenType) + { + case global::System.Text.Json.JsonTokenType.String: + { + var stringValue = reader.GetString(); + if (stringValue != null) + { + return global::ResembleAI.BillingPlanProductCategoryExtensions.ToEnum(stringValue) ?? default; + } + + break; + } + case global::System.Text.Json.JsonTokenType.Number: + { + var numValue = reader.GetInt32(); + return (global::ResembleAI.BillingPlanProductCategory)numValue; + } + case global::System.Text.Json.JsonTokenType.Null: + { + return default(global::ResembleAI.BillingPlanProductCategory); + } + default: + throw new global::System.ArgumentOutOfRangeException(nameof(reader)); + } + + return default; + } + + /// + public override void Write( + global::System.Text.Json.Utf8JsonWriter writer, + global::ResembleAI.BillingPlanProductCategory value, + global::System.Text.Json.JsonSerializerOptions options) + { + writer = writer ?? throw new global::System.ArgumentNullException(nameof(writer)); + + writer.WriteStringValue(global::ResembleAI.BillingPlanProductCategoryExtensions.ToValueString(value)); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingPlanProductCategoryNullable.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingPlanProductCategoryNullable.g.cs new file mode 100644 index 0000000..f61cf94 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingPlanProductCategoryNullable.g.cs @@ -0,0 +1,60 @@ +#nullable enable + +namespace ResembleAI.JsonConverters +{ + /// + public sealed class BillingPlanProductCategoryNullableJsonConverter : global::System.Text.Json.Serialization.JsonConverter + { + /// + public override global::ResembleAI.BillingPlanProductCategory? Read( + ref global::System.Text.Json.Utf8JsonReader reader, + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + switch (reader.TokenType) + { + case global::System.Text.Json.JsonTokenType.String: + { + var stringValue = reader.GetString(); + if (stringValue != null) + { + return global::ResembleAI.BillingPlanProductCategoryExtensions.ToEnum(stringValue); + } + + break; + } + case global::System.Text.Json.JsonTokenType.Number: + { + var numValue = reader.GetInt32(); + return (global::ResembleAI.BillingPlanProductCategory)numValue; + } + case global::System.Text.Json.JsonTokenType.Null: + { + return default(global::ResembleAI.BillingPlanProductCategory?); + } + default: + throw new global::System.ArgumentOutOfRangeException(nameof(reader)); + } + + return default; + } + + /// + public override void Write( + global::System.Text.Json.Utf8JsonWriter writer, + global::ResembleAI.BillingPlanProductCategory? value, + global::System.Text.Json.JsonSerializerOptions options) + { + writer = writer ?? throw new global::System.ArgumentNullException(nameof(writer)); + + if (value == null) + { + writer.WriteNullValue(); + } + else + { + writer.WriteStringValue(global::ResembleAI.BillingPlanProductCategoryExtensions.ToValueString(value.Value)); + } + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingSubscriptionProductCategory.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingSubscriptionProductCategory.g.cs new file mode 100644 index 0000000..f851261 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingSubscriptionProductCategory.g.cs @@ -0,0 +1,53 @@ +#nullable enable + +namespace ResembleAI.JsonConverters +{ + /// + public sealed class BillingSubscriptionProductCategoryJsonConverter : global::System.Text.Json.Serialization.JsonConverter + { + /// + public override global::ResembleAI.BillingSubscriptionProductCategory Read( + ref global::System.Text.Json.Utf8JsonReader reader, + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + switch (reader.TokenType) + { + case global::System.Text.Json.JsonTokenType.String: + { + var stringValue = reader.GetString(); + if (stringValue != null) + { + return global::ResembleAI.BillingSubscriptionProductCategoryExtensions.ToEnum(stringValue) ?? default; + } + + break; + } + case global::System.Text.Json.JsonTokenType.Number: + { + var numValue = reader.GetInt32(); + return (global::ResembleAI.BillingSubscriptionProductCategory)numValue; + } + case global::System.Text.Json.JsonTokenType.Null: + { + return default(global::ResembleAI.BillingSubscriptionProductCategory); + } + default: + throw new global::System.ArgumentOutOfRangeException(nameof(reader)); + } + + return default; + } + + /// + public override void Write( + global::System.Text.Json.Utf8JsonWriter writer, + global::ResembleAI.BillingSubscriptionProductCategory value, + global::System.Text.Json.JsonSerializerOptions options) + { + writer = writer ?? throw new global::System.ArgumentNullException(nameof(writer)); + + writer.WriteStringValue(global::ResembleAI.BillingSubscriptionProductCategoryExtensions.ToValueString(value)); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingSubscriptionProductCategoryNullable.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingSubscriptionProductCategoryNullable.g.cs new file mode 100644 index 0000000..b5fede0 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingSubscriptionProductCategoryNullable.g.cs @@ -0,0 +1,60 @@ +#nullable enable + +namespace ResembleAI.JsonConverters +{ + /// + public sealed class BillingSubscriptionProductCategoryNullableJsonConverter : global::System.Text.Json.Serialization.JsonConverter + { + /// + public override global::ResembleAI.BillingSubscriptionProductCategory? Read( + ref global::System.Text.Json.Utf8JsonReader reader, + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + switch (reader.TokenType) + { + case global::System.Text.Json.JsonTokenType.String: + { + var stringValue = reader.GetString(); + if (stringValue != null) + { + return global::ResembleAI.BillingSubscriptionProductCategoryExtensions.ToEnum(stringValue); + } + + break; + } + case global::System.Text.Json.JsonTokenType.Number: + { + var numValue = reader.GetInt32(); + return (global::ResembleAI.BillingSubscriptionProductCategory)numValue; + } + case global::System.Text.Json.JsonTokenType.Null: + { + return default(global::ResembleAI.BillingSubscriptionProductCategory?); + } + default: + throw new global::System.ArgumentOutOfRangeException(nameof(reader)); + } + + return default; + } + + /// + public override void Write( + global::System.Text.Json.Utf8JsonWriter writer, + global::ResembleAI.BillingSubscriptionProductCategory? value, + global::System.Text.Json.JsonSerializerOptions options) + { + writer = writer ?? throw new global::System.ArgumentNullException(nameof(writer)); + + if (value == null) + { + writer.WriteNullValue(); + } + else + { + writer.WriteStringValue(global::ResembleAI.BillingSubscriptionProductCategoryExtensions.ToValueString(value.Value)); + } + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingSubscriptionStatus.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingSubscriptionStatus.g.cs new file mode 100644 index 0000000..7e45f5f --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingSubscriptionStatus.g.cs @@ -0,0 +1,53 @@ +#nullable enable + +namespace ResembleAI.JsonConverters +{ + /// + public sealed class BillingSubscriptionStatusJsonConverter : global::System.Text.Json.Serialization.JsonConverter + { + /// + public override global::ResembleAI.BillingSubscriptionStatus Read( + ref global::System.Text.Json.Utf8JsonReader reader, + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + switch (reader.TokenType) + { + case global::System.Text.Json.JsonTokenType.String: + { + var stringValue = reader.GetString(); + if (stringValue != null) + { + return global::ResembleAI.BillingSubscriptionStatusExtensions.ToEnum(stringValue) ?? default; + } + + break; + } + case global::System.Text.Json.JsonTokenType.Number: + { + var numValue = reader.GetInt32(); + return (global::ResembleAI.BillingSubscriptionStatus)numValue; + } + case global::System.Text.Json.JsonTokenType.Null: + { + return default(global::ResembleAI.BillingSubscriptionStatus); + } + default: + throw new global::System.ArgumentOutOfRangeException(nameof(reader)); + } + + return default; + } + + /// + public override void Write( + global::System.Text.Json.Utf8JsonWriter writer, + global::ResembleAI.BillingSubscriptionStatus value, + global::System.Text.Json.JsonSerializerOptions options) + { + writer = writer ?? throw new global::System.ArgumentNullException(nameof(writer)); + + writer.WriteStringValue(global::ResembleAI.BillingSubscriptionStatusExtensions.ToValueString(value)); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingSubscriptionStatusNullable.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingSubscriptionStatusNullable.g.cs new file mode 100644 index 0000000..6636756 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingSubscriptionStatusNullable.g.cs @@ -0,0 +1,60 @@ +#nullable enable + +namespace ResembleAI.JsonConverters +{ + /// + public sealed class BillingSubscriptionStatusNullableJsonConverter : global::System.Text.Json.Serialization.JsonConverter + { + /// + public override global::ResembleAI.BillingSubscriptionStatus? Read( + ref global::System.Text.Json.Utf8JsonReader reader, + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + switch (reader.TokenType) + { + case global::System.Text.Json.JsonTokenType.String: + { + var stringValue = reader.GetString(); + if (stringValue != null) + { + return global::ResembleAI.BillingSubscriptionStatusExtensions.ToEnum(stringValue); + } + + break; + } + case global::System.Text.Json.JsonTokenType.Number: + { + var numValue = reader.GetInt32(); + return (global::ResembleAI.BillingSubscriptionStatus)numValue; + } + case global::System.Text.Json.JsonTokenType.Null: + { + return default(global::ResembleAI.BillingSubscriptionStatus?); + } + default: + throw new global::System.ArgumentOutOfRangeException(nameof(reader)); + } + + return default; + } + + /// + public override void Write( + global::System.Text.Json.Utf8JsonWriter writer, + global::ResembleAI.BillingSubscriptionStatus? value, + global::System.Text.Json.JsonSerializerOptions options) + { + writer = writer ?? throw new global::System.ArgumentNullException(nameof(writer)); + + if (value == null) + { + writer.WriteNullValue(); + } + else + { + writer.WriteStringValue(global::ResembleAI.BillingSubscriptionStatusExtensions.ToValueString(value.Value)); + } + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingWalletTransactionTransactionType.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingWalletTransactionTransactionType.g.cs new file mode 100644 index 0000000..cb91a56 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingWalletTransactionTransactionType.g.cs @@ -0,0 +1,53 @@ +#nullable enable + +namespace ResembleAI.JsonConverters +{ + /// + public sealed class BillingWalletTransactionTransactionTypeJsonConverter : global::System.Text.Json.Serialization.JsonConverter + { + /// + public override global::ResembleAI.BillingWalletTransactionTransactionType Read( + ref global::System.Text.Json.Utf8JsonReader reader, + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + switch (reader.TokenType) + { + case global::System.Text.Json.JsonTokenType.String: + { + var stringValue = reader.GetString(); + if (stringValue != null) + { + return global::ResembleAI.BillingWalletTransactionTransactionTypeExtensions.ToEnum(stringValue) ?? default; + } + + break; + } + case global::System.Text.Json.JsonTokenType.Number: + { + var numValue = reader.GetInt32(); + return (global::ResembleAI.BillingWalletTransactionTransactionType)numValue; + } + case global::System.Text.Json.JsonTokenType.Null: + { + return default(global::ResembleAI.BillingWalletTransactionTransactionType); + } + default: + throw new global::System.ArgumentOutOfRangeException(nameof(reader)); + } + + return default; + } + + /// + public override void Write( + global::System.Text.Json.Utf8JsonWriter writer, + global::ResembleAI.BillingWalletTransactionTransactionType value, + global::System.Text.Json.JsonSerializerOptions options) + { + writer = writer ?? throw new global::System.ArgumentNullException(nameof(writer)); + + writer.WriteStringValue(global::ResembleAI.BillingWalletTransactionTransactionTypeExtensions.ToValueString(value)); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingWalletTransactionTransactionTypeNullable.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingWalletTransactionTransactionTypeNullable.g.cs new file mode 100644 index 0000000..32884bb --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.BillingWalletTransactionTransactionTypeNullable.g.cs @@ -0,0 +1,60 @@ +#nullable enable + +namespace ResembleAI.JsonConverters +{ + /// + public sealed class BillingWalletTransactionTransactionTypeNullableJsonConverter : global::System.Text.Json.Serialization.JsonConverter + { + /// + public override global::ResembleAI.BillingWalletTransactionTransactionType? Read( + ref global::System.Text.Json.Utf8JsonReader reader, + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + switch (reader.TokenType) + { + case global::System.Text.Json.JsonTokenType.String: + { + var stringValue = reader.GetString(); + if (stringValue != null) + { + return global::ResembleAI.BillingWalletTransactionTransactionTypeExtensions.ToEnum(stringValue); + } + + break; + } + case global::System.Text.Json.JsonTokenType.Number: + { + var numValue = reader.GetInt32(); + return (global::ResembleAI.BillingWalletTransactionTransactionType)numValue; + } + case global::System.Text.Json.JsonTokenType.Null: + { + return default(global::ResembleAI.BillingWalletTransactionTransactionType?); + } + default: + throw new global::System.ArgumentOutOfRangeException(nameof(reader)); + } + + return default; + } + + /// + public override void Write( + global::System.Text.Json.Utf8JsonWriter writer, + global::ResembleAI.BillingWalletTransactionTransactionType? value, + global::System.Text.Json.JsonSerializerOptions options) + { + writer = writer ?? throw new global::System.ArgumentNullException(nameof(writer)); + + if (value == null) + { + writer.WriteNullValue(); + } + else + { + writer.WriteStringValue(global::ResembleAI.BillingWalletTransactionTransactionTypeExtensions.ToValueString(value.Value)); + } + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.ChangeBillingPlanRequestUnprocessableEntityError.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.ChangeBillingPlanRequestUnprocessableEntityError.g.cs new file mode 100644 index 0000000..c4aa2b7 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.ChangeBillingPlanRequestUnprocessableEntityError.g.cs @@ -0,0 +1,141 @@ +#nullable enable +#pragma warning disable CS0618 // Type or member is obsolete + +namespace ResembleAI.JsonConverters +{ + /// + public class ChangeBillingPlanRequestUnprocessableEntityErrorJsonConverter : global::System.Text.Json.Serialization.JsonConverter + { + /// + public override global::ResembleAI.ChangeBillingPlanRequestUnprocessableEntityError Read( + ref global::System.Text.Json.Utf8JsonReader reader, + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + options = options ?? throw new global::System.ArgumentNullException(nameof(options)); + var typeInfoResolver = options.TypeInfoResolver ?? throw new global::System.InvalidOperationException("TypeInfoResolver is not set."); + + using var __jsonDocument = global::System.Text.Json.JsonDocument.ParseValue(ref reader); + var __rawJson = __jsonDocument.RootElement.GetRawText(); + var __jsonProps = new global::System.Collections.Generic.HashSet(); + if (__jsonDocument.RootElement.ValueKind == global::System.Text.Json.JsonValueKind.Object) + { + foreach (var __jsonProp in __jsonDocument.RootElement.EnumerateObject()) + { + __jsonProps.Add(__jsonProp.Name); + + } + } + + var __score0 = 0; + if (__jsonProps.Contains("error")) __score0++; + var __score1 = 0; + if (__jsonProps.Contains("errors")) __score1++; + var __bestScore = 0; + var __bestIndex = -1; + if (__score0 > __bestScore) { __bestScore = __score0; __bestIndex = 0; } + if (__score1 > __bestScore) { __bestScore = __score1; __bestIndex = 1; } + + global::ResembleAI.BillingError? billingError = default; + global::ResembleAI.BillingValidationErrors? billingValidationErrors = default; + if (__bestIndex >= 0) + { + if (__bestIndex == 0) + { + try + { + var typeInfo = typeInfoResolver.GetTypeInfo(typeof(global::ResembleAI.BillingError), options) as global::System.Text.Json.Serialization.Metadata.JsonTypeInfo ?? + throw new global::System.InvalidOperationException($"Cannot get type info for {typeof(global::ResembleAI.BillingError).Name}"); + billingError = global::System.Text.Json.JsonSerializer.Deserialize(__rawJson, typeInfo); + } + catch (global::System.Text.Json.JsonException) + { + } + catch (global::System.InvalidOperationException) + { + } + } + else if (__bestIndex == 1) + { + try + { + var typeInfo = typeInfoResolver.GetTypeInfo(typeof(global::ResembleAI.BillingValidationErrors), options) as global::System.Text.Json.Serialization.Metadata.JsonTypeInfo ?? + throw new global::System.InvalidOperationException($"Cannot get type info for {typeof(global::ResembleAI.BillingValidationErrors).Name}"); + billingValidationErrors = global::System.Text.Json.JsonSerializer.Deserialize(__rawJson, typeInfo); + } + catch (global::System.Text.Json.JsonException) + { + } + catch (global::System.InvalidOperationException) + { + } + } + } + + if (billingError == null && billingValidationErrors == null) + { + try + { + + var typeInfo = typeInfoResolver.GetTypeInfo(typeof(global::ResembleAI.BillingError), options) as global::System.Text.Json.Serialization.Metadata.JsonTypeInfo ?? + throw new global::System.InvalidOperationException($"Cannot get type info for {typeof(global::ResembleAI.BillingError).Name}"); + billingError = global::System.Text.Json.JsonSerializer.Deserialize(__rawJson, typeInfo); + } + catch (global::System.Text.Json.JsonException) + { + } + catch (global::System.InvalidOperationException) + { + } + } + + if (billingError == null && billingValidationErrors == null) + { + try + { + + var typeInfo = typeInfoResolver.GetTypeInfo(typeof(global::ResembleAI.BillingValidationErrors), options) as global::System.Text.Json.Serialization.Metadata.JsonTypeInfo ?? + throw new global::System.InvalidOperationException($"Cannot get type info for {typeof(global::ResembleAI.BillingValidationErrors).Name}"); + billingValidationErrors = global::System.Text.Json.JsonSerializer.Deserialize(__rawJson, typeInfo); + } + catch (global::System.Text.Json.JsonException) + { + } + catch (global::System.InvalidOperationException) + { + } + } + + var __value = new global::ResembleAI.ChangeBillingPlanRequestUnprocessableEntityError( + billingError, + + billingValidationErrors + ); + + return __value; + } + + /// + public override void Write( + global::System.Text.Json.Utf8JsonWriter writer, + global::ResembleAI.ChangeBillingPlanRequestUnprocessableEntityError value, + global::System.Text.Json.JsonSerializerOptions options) + { + options = options ?? throw new global::System.ArgumentNullException(nameof(options)); + var typeInfoResolver = options.TypeInfoResolver ?? throw new global::System.InvalidOperationException("TypeInfoResolver is not set."); + + if (value.IsBillingError) + { + var typeInfo = typeInfoResolver.GetTypeInfo(typeof(global::ResembleAI.BillingError), options) as global::System.Text.Json.Serialization.Metadata.JsonTypeInfo ?? + throw new global::System.InvalidOperationException($"Cannot get type info for {typeof(global::ResembleAI.BillingError).Name}"); + global::System.Text.Json.JsonSerializer.Serialize(writer, value.BillingError!, typeInfo); + } + else if (value.IsBillingValidationErrors) + { + var typeInfo = typeInfoResolver.GetTypeInfo(typeof(global::ResembleAI.BillingValidationErrors), options) as global::System.Text.Json.Serialization.Metadata.JsonTypeInfo ?? + throw new global::System.InvalidOperationException($"Cannot get type info for {typeof(global::ResembleAI.BillingValidationErrors).Name}"); + global::System.Text.Json.JsonSerializer.Serialize(writer, value.BillingValidationErrors!, typeInfo); + } + } + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError.g.cs new file mode 100644 index 0000000..caf70e5 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError.g.cs @@ -0,0 +1,141 @@ +#nullable enable +#pragma warning disable CS0618 // Type or member is obsolete + +namespace ResembleAI.JsonConverters +{ + /// + public class ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityErrorJsonConverter : global::System.Text.Json.Serialization.JsonConverter + { + /// + public override global::ResembleAI.ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError Read( + ref global::System.Text.Json.Utf8JsonReader reader, + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + options = options ?? throw new global::System.ArgumentNullException(nameof(options)); + var typeInfoResolver = options.TypeInfoResolver ?? throw new global::System.InvalidOperationException("TypeInfoResolver is not set."); + + using var __jsonDocument = global::System.Text.Json.JsonDocument.ParseValue(ref reader); + var __rawJson = __jsonDocument.RootElement.GetRawText(); + var __jsonProps = new global::System.Collections.Generic.HashSet(); + if (__jsonDocument.RootElement.ValueKind == global::System.Text.Json.JsonValueKind.Object) + { + foreach (var __jsonProp in __jsonDocument.RootElement.EnumerateObject()) + { + __jsonProps.Add(__jsonProp.Name); + + } + } + + var __score0 = 0; + if (__jsonProps.Contains("error")) __score0++; + var __score1 = 0; + if (__jsonProps.Contains("errors")) __score1++; + var __bestScore = 0; + var __bestIndex = -1; + if (__score0 > __bestScore) { __bestScore = __score0; __bestIndex = 0; } + if (__score1 > __bestScore) { __bestScore = __score1; __bestIndex = 1; } + + global::ResembleAI.BillingError? billingError = default; + global::ResembleAI.BillingValidationErrors? billingValidationErrors = default; + if (__bestIndex >= 0) + { + if (__bestIndex == 0) + { + try + { + var typeInfo = typeInfoResolver.GetTypeInfo(typeof(global::ResembleAI.BillingError), options) as global::System.Text.Json.Serialization.Metadata.JsonTypeInfo ?? + throw new global::System.InvalidOperationException($"Cannot get type info for {typeof(global::ResembleAI.BillingError).Name}"); + billingError = global::System.Text.Json.JsonSerializer.Deserialize(__rawJson, typeInfo); + } + catch (global::System.Text.Json.JsonException) + { + } + catch (global::System.InvalidOperationException) + { + } + } + else if (__bestIndex == 1) + { + try + { + var typeInfo = typeInfoResolver.GetTypeInfo(typeof(global::ResembleAI.BillingValidationErrors), options) as global::System.Text.Json.Serialization.Metadata.JsonTypeInfo ?? + throw new global::System.InvalidOperationException($"Cannot get type info for {typeof(global::ResembleAI.BillingValidationErrors).Name}"); + billingValidationErrors = global::System.Text.Json.JsonSerializer.Deserialize(__rawJson, typeInfo); + } + catch (global::System.Text.Json.JsonException) + { + } + catch (global::System.InvalidOperationException) + { + } + } + } + + if (billingError == null && billingValidationErrors == null) + { + try + { + + var typeInfo = typeInfoResolver.GetTypeInfo(typeof(global::ResembleAI.BillingError), options) as global::System.Text.Json.Serialization.Metadata.JsonTypeInfo ?? + throw new global::System.InvalidOperationException($"Cannot get type info for {typeof(global::ResembleAI.BillingError).Name}"); + billingError = global::System.Text.Json.JsonSerializer.Deserialize(__rawJson, typeInfo); + } + catch (global::System.Text.Json.JsonException) + { + } + catch (global::System.InvalidOperationException) + { + } + } + + if (billingError == null && billingValidationErrors == null) + { + try + { + + var typeInfo = typeInfoResolver.GetTypeInfo(typeof(global::ResembleAI.BillingValidationErrors), options) as global::System.Text.Json.Serialization.Metadata.JsonTypeInfo ?? + throw new global::System.InvalidOperationException($"Cannot get type info for {typeof(global::ResembleAI.BillingValidationErrors).Name}"); + billingValidationErrors = global::System.Text.Json.JsonSerializer.Deserialize(__rawJson, typeInfo); + } + catch (global::System.Text.Json.JsonException) + { + } + catch (global::System.InvalidOperationException) + { + } + } + + var __value = new global::ResembleAI.ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError( + billingError, + + billingValidationErrors + ); + + return __value; + } + + /// + public override void Write( + global::System.Text.Json.Utf8JsonWriter writer, + global::ResembleAI.ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError value, + global::System.Text.Json.JsonSerializerOptions options) + { + options = options ?? throw new global::System.ArgumentNullException(nameof(options)); + var typeInfoResolver = options.TypeInfoResolver ?? throw new global::System.InvalidOperationException("TypeInfoResolver is not set."); + + if (value.IsBillingError) + { + var typeInfo = typeInfoResolver.GetTypeInfo(typeof(global::ResembleAI.BillingError), options) as global::System.Text.Json.Serialization.Metadata.JsonTypeInfo ?? + throw new global::System.InvalidOperationException($"Cannot get type info for {typeof(global::ResembleAI.BillingError).Name}"); + global::System.Text.Json.JsonSerializer.Serialize(writer, value.BillingError!, typeInfo); + } + else if (value.IsBillingValidationErrors) + { + var typeInfo = typeInfoResolver.GetTypeInfo(typeof(global::ResembleAI.BillingValidationErrors), options) as global::System.Text.Json.Serialization.Metadata.JsonTypeInfo ?? + throw new global::System.InvalidOperationException($"Cannot get type info for {typeof(global::ResembleAI.BillingValidationErrors).Name}"); + global::System.Text.Json.JsonSerializer.Serialize(writer, value.BillingValidationErrors!, typeInfo); + } + } + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.SignalCustomCategoryStatus.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.SignalCustomCategoryStatus.g.cs new file mode 100644 index 0000000..06f8241 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.SignalCustomCategoryStatus.g.cs @@ -0,0 +1,53 @@ +#nullable enable + +namespace ResembleAI.JsonConverters +{ + /// + public sealed class SignalCustomCategoryStatusJsonConverter : global::System.Text.Json.Serialization.JsonConverter + { + /// + public override global::ResembleAI.SignalCustomCategoryStatus Read( + ref global::System.Text.Json.Utf8JsonReader reader, + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + switch (reader.TokenType) + { + case global::System.Text.Json.JsonTokenType.String: + { + var stringValue = reader.GetString(); + if (stringValue != null) + { + return global::ResembleAI.SignalCustomCategoryStatusExtensions.ToEnum(stringValue) ?? default; + } + + break; + } + case global::System.Text.Json.JsonTokenType.Number: + { + var numValue = reader.GetInt32(); + return (global::ResembleAI.SignalCustomCategoryStatus)numValue; + } + case global::System.Text.Json.JsonTokenType.Null: + { + return default(global::ResembleAI.SignalCustomCategoryStatus); + } + default: + throw new global::System.ArgumentOutOfRangeException(nameof(reader)); + } + + return default; + } + + /// + public override void Write( + global::System.Text.Json.Utf8JsonWriter writer, + global::ResembleAI.SignalCustomCategoryStatus value, + global::System.Text.Json.JsonSerializerOptions options) + { + writer = writer ?? throw new global::System.ArgumentNullException(nameof(writer)); + + writer.WriteStringValue(global::ResembleAI.SignalCustomCategoryStatusExtensions.ToValueString(value)); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.SignalCustomCategoryStatusNullable.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.SignalCustomCategoryStatusNullable.g.cs new file mode 100644 index 0000000..90cfb75 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.SignalCustomCategoryStatusNullable.g.cs @@ -0,0 +1,60 @@ +#nullable enable + +namespace ResembleAI.JsonConverters +{ + /// + public sealed class SignalCustomCategoryStatusNullableJsonConverter : global::System.Text.Json.Serialization.JsonConverter + { + /// + public override global::ResembleAI.SignalCustomCategoryStatus? Read( + ref global::System.Text.Json.Utf8JsonReader reader, + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + switch (reader.TokenType) + { + case global::System.Text.Json.JsonTokenType.String: + { + var stringValue = reader.GetString(); + if (stringValue != null) + { + return global::ResembleAI.SignalCustomCategoryStatusExtensions.ToEnum(stringValue); + } + + break; + } + case global::System.Text.Json.JsonTokenType.Number: + { + var numValue = reader.GetInt32(); + return (global::ResembleAI.SignalCustomCategoryStatus)numValue; + } + case global::System.Text.Json.JsonTokenType.Null: + { + return default(global::ResembleAI.SignalCustomCategoryStatus?); + } + default: + throw new global::System.ArgumentOutOfRangeException(nameof(reader)); + } + + return default; + } + + /// + public override void Write( + global::System.Text.Json.Utf8JsonWriter writer, + global::ResembleAI.SignalCustomCategoryStatus? value, + global::System.Text.Json.JsonSerializerOptions options) + { + writer = writer ?? throw new global::System.ArgumentNullException(nameof(writer)); + + if (value == null) + { + writer.WriteNullValue(); + } + else + { + writer.WriteStringValue(global::ResembleAI.SignalCustomCategoryStatusExtensions.ToValueString(value.Value)); + } + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.SignalScoreItemInputModality.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.SignalScoreItemInputModality.g.cs new file mode 100644 index 0000000..743aefb --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.SignalScoreItemInputModality.g.cs @@ -0,0 +1,53 @@ +#nullable enable + +namespace ResembleAI.JsonConverters +{ + /// + public sealed class SignalScoreItemInputModalityJsonConverter : global::System.Text.Json.Serialization.JsonConverter + { + /// + public override global::ResembleAI.SignalScoreItemInputModality Read( + ref global::System.Text.Json.Utf8JsonReader reader, + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + switch (reader.TokenType) + { + case global::System.Text.Json.JsonTokenType.String: + { + var stringValue = reader.GetString(); + if (stringValue != null) + { + return global::ResembleAI.SignalScoreItemInputModalityExtensions.ToEnum(stringValue) ?? default; + } + + break; + } + case global::System.Text.Json.JsonTokenType.Number: + { + var numValue = reader.GetInt32(); + return (global::ResembleAI.SignalScoreItemInputModality)numValue; + } + case global::System.Text.Json.JsonTokenType.Null: + { + return default(global::ResembleAI.SignalScoreItemInputModality); + } + default: + throw new global::System.ArgumentOutOfRangeException(nameof(reader)); + } + + return default; + } + + /// + public override void Write( + global::System.Text.Json.Utf8JsonWriter writer, + global::ResembleAI.SignalScoreItemInputModality value, + global::System.Text.Json.JsonSerializerOptions options) + { + writer = writer ?? throw new global::System.ArgumentNullException(nameof(writer)); + + writer.WriteStringValue(global::ResembleAI.SignalScoreItemInputModalityExtensions.ToValueString(value)); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.SignalScoreItemInputModalityNullable.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.SignalScoreItemInputModalityNullable.g.cs new file mode 100644 index 0000000..3637183 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.SignalScoreItemInputModalityNullable.g.cs @@ -0,0 +1,60 @@ +#nullable enable + +namespace ResembleAI.JsonConverters +{ + /// + public sealed class SignalScoreItemInputModalityNullableJsonConverter : global::System.Text.Json.Serialization.JsonConverter + { + /// + public override global::ResembleAI.SignalScoreItemInputModality? Read( + ref global::System.Text.Json.Utf8JsonReader reader, + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + switch (reader.TokenType) + { + case global::System.Text.Json.JsonTokenType.String: + { + var stringValue = reader.GetString(); + if (stringValue != null) + { + return global::ResembleAI.SignalScoreItemInputModalityExtensions.ToEnum(stringValue); + } + + break; + } + case global::System.Text.Json.JsonTokenType.Number: + { + var numValue = reader.GetInt32(); + return (global::ResembleAI.SignalScoreItemInputModality)numValue; + } + case global::System.Text.Json.JsonTokenType.Null: + { + return default(global::ResembleAI.SignalScoreItemInputModality?); + } + default: + throw new global::System.ArgumentOutOfRangeException(nameof(reader)); + } + + return default; + } + + /// + public override void Write( + global::System.Text.Json.Utf8JsonWriter writer, + global::ResembleAI.SignalScoreItemInputModality? value, + global::System.Text.Json.JsonSerializerOptions options) + { + writer = writer ?? throw new global::System.ArgumentNullException(nameof(writer)); + + if (value == null) + { + writer.WriteNullValue(); + } + else + { + writer.WriteStringValue(global::ResembleAI.SignalScoreItemInputModalityExtensions.ToValueString(value.Value)); + } + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.SignalScoreItemVerdict.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.SignalScoreItemVerdict.g.cs new file mode 100644 index 0000000..4f1f39c --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.SignalScoreItemVerdict.g.cs @@ -0,0 +1,53 @@ +#nullable enable + +namespace ResembleAI.JsonConverters +{ + /// + public sealed class SignalScoreItemVerdictJsonConverter : global::System.Text.Json.Serialization.JsonConverter + { + /// + public override global::ResembleAI.SignalScoreItemVerdict Read( + ref global::System.Text.Json.Utf8JsonReader reader, + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + switch (reader.TokenType) + { + case global::System.Text.Json.JsonTokenType.String: + { + var stringValue = reader.GetString(); + if (stringValue != null) + { + return global::ResembleAI.SignalScoreItemVerdictExtensions.ToEnum(stringValue) ?? default; + } + + break; + } + case global::System.Text.Json.JsonTokenType.Number: + { + var numValue = reader.GetInt32(); + return (global::ResembleAI.SignalScoreItemVerdict)numValue; + } + case global::System.Text.Json.JsonTokenType.Null: + { + return default(global::ResembleAI.SignalScoreItemVerdict); + } + default: + throw new global::System.ArgumentOutOfRangeException(nameof(reader)); + } + + return default; + } + + /// + public override void Write( + global::System.Text.Json.Utf8JsonWriter writer, + global::ResembleAI.SignalScoreItemVerdict value, + global::System.Text.Json.JsonSerializerOptions options) + { + writer = writer ?? throw new global::System.ArgumentNullException(nameof(writer)); + + writer.WriteStringValue(global::ResembleAI.SignalScoreItemVerdictExtensions.ToValueString(value)); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.SignalScoreItemVerdictNullable.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.SignalScoreItemVerdictNullable.g.cs new file mode 100644 index 0000000..6804451 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.SignalScoreItemVerdictNullable.g.cs @@ -0,0 +1,60 @@ +#nullable enable + +namespace ResembleAI.JsonConverters +{ + /// + public sealed class SignalScoreItemVerdictNullableJsonConverter : global::System.Text.Json.Serialization.JsonConverter + { + /// + public override global::ResembleAI.SignalScoreItemVerdict? Read( + ref global::System.Text.Json.Utf8JsonReader reader, + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + switch (reader.TokenType) + { + case global::System.Text.Json.JsonTokenType.String: + { + var stringValue = reader.GetString(); + if (stringValue != null) + { + return global::ResembleAI.SignalScoreItemVerdictExtensions.ToEnum(stringValue); + } + + break; + } + case global::System.Text.Json.JsonTokenType.Number: + { + var numValue = reader.GetInt32(); + return (global::ResembleAI.SignalScoreItemVerdict)numValue; + } + case global::System.Text.Json.JsonTokenType.Null: + { + return default(global::ResembleAI.SignalScoreItemVerdict?); + } + default: + throw new global::System.ArgumentOutOfRangeException(nameof(reader)); + } + + return default; + } + + /// + public override void Write( + global::System.Text.Json.Utf8JsonWriter writer, + global::ResembleAI.SignalScoreItemVerdict? value, + global::System.Text.Json.JsonSerializerOptions options) + { + writer = writer ?? throw new global::System.ArgumentNullException(nameof(writer)); + + if (value == null) + { + writer.WriteNullValue(); + } + else + { + writer.WriteStringValue(global::ResembleAI.SignalScoreItemVerdictExtensions.ToValueString(value.Value)); + } + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.SignalSubmissionInputModality.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.SignalSubmissionInputModality.g.cs new file mode 100644 index 0000000..fe49aad --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.SignalSubmissionInputModality.g.cs @@ -0,0 +1,53 @@ +#nullable enable + +namespace ResembleAI.JsonConverters +{ + /// + public sealed class SignalSubmissionInputModalityJsonConverter : global::System.Text.Json.Serialization.JsonConverter + { + /// + public override global::ResembleAI.SignalSubmissionInputModality Read( + ref global::System.Text.Json.Utf8JsonReader reader, + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + switch (reader.TokenType) + { + case global::System.Text.Json.JsonTokenType.String: + { + var stringValue = reader.GetString(); + if (stringValue != null) + { + return global::ResembleAI.SignalSubmissionInputModalityExtensions.ToEnum(stringValue) ?? default; + } + + break; + } + case global::System.Text.Json.JsonTokenType.Number: + { + var numValue = reader.GetInt32(); + return (global::ResembleAI.SignalSubmissionInputModality)numValue; + } + case global::System.Text.Json.JsonTokenType.Null: + { + return default(global::ResembleAI.SignalSubmissionInputModality); + } + default: + throw new global::System.ArgumentOutOfRangeException(nameof(reader)); + } + + return default; + } + + /// + public override void Write( + global::System.Text.Json.Utf8JsonWriter writer, + global::ResembleAI.SignalSubmissionInputModality value, + global::System.Text.Json.JsonSerializerOptions options) + { + writer = writer ?? throw new global::System.ArgumentNullException(nameof(writer)); + + writer.WriteStringValue(global::ResembleAI.SignalSubmissionInputModalityExtensions.ToValueString(value)); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.SignalSubmissionInputModalityNullable.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.SignalSubmissionInputModalityNullable.g.cs new file mode 100644 index 0000000..2cf9993 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.SignalSubmissionInputModalityNullable.g.cs @@ -0,0 +1,60 @@ +#nullable enable + +namespace ResembleAI.JsonConverters +{ + /// + public sealed class SignalSubmissionInputModalityNullableJsonConverter : global::System.Text.Json.Serialization.JsonConverter + { + /// + public override global::ResembleAI.SignalSubmissionInputModality? Read( + ref global::System.Text.Json.Utf8JsonReader reader, + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + switch (reader.TokenType) + { + case global::System.Text.Json.JsonTokenType.String: + { + var stringValue = reader.GetString(); + if (stringValue != null) + { + return global::ResembleAI.SignalSubmissionInputModalityExtensions.ToEnum(stringValue); + } + + break; + } + case global::System.Text.Json.JsonTokenType.Number: + { + var numValue = reader.GetInt32(); + return (global::ResembleAI.SignalSubmissionInputModality)numValue; + } + case global::System.Text.Json.JsonTokenType.Null: + { + return default(global::ResembleAI.SignalSubmissionInputModality?); + } + default: + throw new global::System.ArgumentOutOfRangeException(nameof(reader)); + } + + return default; + } + + /// + public override void Write( + global::System.Text.Json.Utf8JsonWriter writer, + global::ResembleAI.SignalSubmissionInputModality? value, + global::System.Text.Json.JsonSerializerOptions options) + { + writer = writer ?? throw new global::System.ArgumentNullException(nameof(writer)); + + if (value == null) + { + writer.WriteNullValue(); + } + else + { + writer.WriteStringValue(global::ResembleAI.SignalSubmissionInputModalityExtensions.ToValueString(value.Value)); + } + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.SignalSubmissionVerdict.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.SignalSubmissionVerdict.g.cs new file mode 100644 index 0000000..d5ca476 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.SignalSubmissionVerdict.g.cs @@ -0,0 +1,53 @@ +#nullable enable + +namespace ResembleAI.JsonConverters +{ + /// + public sealed class SignalSubmissionVerdictJsonConverter : global::System.Text.Json.Serialization.JsonConverter + { + /// + public override global::ResembleAI.SignalSubmissionVerdict Read( + ref global::System.Text.Json.Utf8JsonReader reader, + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + switch (reader.TokenType) + { + case global::System.Text.Json.JsonTokenType.String: + { + var stringValue = reader.GetString(); + if (stringValue != null) + { + return global::ResembleAI.SignalSubmissionVerdictExtensions.ToEnum(stringValue) ?? default; + } + + break; + } + case global::System.Text.Json.JsonTokenType.Number: + { + var numValue = reader.GetInt32(); + return (global::ResembleAI.SignalSubmissionVerdict)numValue; + } + case global::System.Text.Json.JsonTokenType.Null: + { + return default(global::ResembleAI.SignalSubmissionVerdict); + } + default: + throw new global::System.ArgumentOutOfRangeException(nameof(reader)); + } + + return default; + } + + /// + public override void Write( + global::System.Text.Json.Utf8JsonWriter writer, + global::ResembleAI.SignalSubmissionVerdict value, + global::System.Text.Json.JsonSerializerOptions options) + { + writer = writer ?? throw new global::System.ArgumentNullException(nameof(writer)); + + writer.WriteStringValue(global::ResembleAI.SignalSubmissionVerdictExtensions.ToValueString(value)); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.SignalSubmissionVerdictNullable.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.SignalSubmissionVerdictNullable.g.cs new file mode 100644 index 0000000..3e086b5 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.SignalSubmissionVerdictNullable.g.cs @@ -0,0 +1,60 @@ +#nullable enable + +namespace ResembleAI.JsonConverters +{ + /// + public sealed class SignalSubmissionVerdictNullableJsonConverter : global::System.Text.Json.Serialization.JsonConverter + { + /// + public override global::ResembleAI.SignalSubmissionVerdict? Read( + ref global::System.Text.Json.Utf8JsonReader reader, + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + switch (reader.TokenType) + { + case global::System.Text.Json.JsonTokenType.String: + { + var stringValue = reader.GetString(); + if (stringValue != null) + { + return global::ResembleAI.SignalSubmissionVerdictExtensions.ToEnum(stringValue); + } + + break; + } + case global::System.Text.Json.JsonTokenType.Number: + { + var numValue = reader.GetInt32(); + return (global::ResembleAI.SignalSubmissionVerdict)numValue; + } + case global::System.Text.Json.JsonTokenType.Null: + { + return default(global::ResembleAI.SignalSubmissionVerdict?); + } + default: + throw new global::System.ArgumentOutOfRangeException(nameof(reader)); + } + + return default; + } + + /// + public override void Write( + global::System.Text.Json.Utf8JsonWriter writer, + global::ResembleAI.SignalSubmissionVerdict? value, + global::System.Text.Json.JsonSerializerOptions options) + { + writer = writer ?? throw new global::System.ArgumentNullException(nameof(writer)); + + if (value == null) + { + writer.WriteNullValue(); + } + else + { + writer.WriteStringValue(global::ResembleAI.SignalSubmissionVerdictExtensions.ToValueString(value.Value)); + } + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.UpdateBillingAutoReloadRequestUnprocessableEntityError.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.UpdateBillingAutoReloadRequestUnprocessableEntityError.g.cs new file mode 100644 index 0000000..eb913a3 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.UpdateBillingAutoReloadRequestUnprocessableEntityError.g.cs @@ -0,0 +1,141 @@ +#nullable enable +#pragma warning disable CS0618 // Type or member is obsolete + +namespace ResembleAI.JsonConverters +{ + /// + public class UpdateBillingAutoReloadRequestUnprocessableEntityErrorJsonConverter : global::System.Text.Json.Serialization.JsonConverter + { + /// + public override global::ResembleAI.UpdateBillingAutoReloadRequestUnprocessableEntityError Read( + ref global::System.Text.Json.Utf8JsonReader reader, + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + options = options ?? throw new global::System.ArgumentNullException(nameof(options)); + var typeInfoResolver = options.TypeInfoResolver ?? throw new global::System.InvalidOperationException("TypeInfoResolver is not set."); + + using var __jsonDocument = global::System.Text.Json.JsonDocument.ParseValue(ref reader); + var __rawJson = __jsonDocument.RootElement.GetRawText(); + var __jsonProps = new global::System.Collections.Generic.HashSet(); + if (__jsonDocument.RootElement.ValueKind == global::System.Text.Json.JsonValueKind.Object) + { + foreach (var __jsonProp in __jsonDocument.RootElement.EnumerateObject()) + { + __jsonProps.Add(__jsonProp.Name); + + } + } + + var __score0 = 0; + if (__jsonProps.Contains("error")) __score0++; + var __score1 = 0; + if (__jsonProps.Contains("errors")) __score1++; + var __bestScore = 0; + var __bestIndex = -1; + if (__score0 > __bestScore) { __bestScore = __score0; __bestIndex = 0; } + if (__score1 > __bestScore) { __bestScore = __score1; __bestIndex = 1; } + + global::ResembleAI.BillingError? billingError = default; + global::ResembleAI.BillingValidationErrors? billingValidationErrors = default; + if (__bestIndex >= 0) + { + if (__bestIndex == 0) + { + try + { + var typeInfo = typeInfoResolver.GetTypeInfo(typeof(global::ResembleAI.BillingError), options) as global::System.Text.Json.Serialization.Metadata.JsonTypeInfo ?? + throw new global::System.InvalidOperationException($"Cannot get type info for {typeof(global::ResembleAI.BillingError).Name}"); + billingError = global::System.Text.Json.JsonSerializer.Deserialize(__rawJson, typeInfo); + } + catch (global::System.Text.Json.JsonException) + { + } + catch (global::System.InvalidOperationException) + { + } + } + else if (__bestIndex == 1) + { + try + { + var typeInfo = typeInfoResolver.GetTypeInfo(typeof(global::ResembleAI.BillingValidationErrors), options) as global::System.Text.Json.Serialization.Metadata.JsonTypeInfo ?? + throw new global::System.InvalidOperationException($"Cannot get type info for {typeof(global::ResembleAI.BillingValidationErrors).Name}"); + billingValidationErrors = global::System.Text.Json.JsonSerializer.Deserialize(__rawJson, typeInfo); + } + catch (global::System.Text.Json.JsonException) + { + } + catch (global::System.InvalidOperationException) + { + } + } + } + + if (billingError == null && billingValidationErrors == null) + { + try + { + + var typeInfo = typeInfoResolver.GetTypeInfo(typeof(global::ResembleAI.BillingError), options) as global::System.Text.Json.Serialization.Metadata.JsonTypeInfo ?? + throw new global::System.InvalidOperationException($"Cannot get type info for {typeof(global::ResembleAI.BillingError).Name}"); + billingError = global::System.Text.Json.JsonSerializer.Deserialize(__rawJson, typeInfo); + } + catch (global::System.Text.Json.JsonException) + { + } + catch (global::System.InvalidOperationException) + { + } + } + + if (billingError == null && billingValidationErrors == null) + { + try + { + + var typeInfo = typeInfoResolver.GetTypeInfo(typeof(global::ResembleAI.BillingValidationErrors), options) as global::System.Text.Json.Serialization.Metadata.JsonTypeInfo ?? + throw new global::System.InvalidOperationException($"Cannot get type info for {typeof(global::ResembleAI.BillingValidationErrors).Name}"); + billingValidationErrors = global::System.Text.Json.JsonSerializer.Deserialize(__rawJson, typeInfo); + } + catch (global::System.Text.Json.JsonException) + { + } + catch (global::System.InvalidOperationException) + { + } + } + + var __value = new global::ResembleAI.UpdateBillingAutoReloadRequestUnprocessableEntityError( + billingError, + + billingValidationErrors + ); + + return __value; + } + + /// + public override void Write( + global::System.Text.Json.Utf8JsonWriter writer, + global::ResembleAI.UpdateBillingAutoReloadRequestUnprocessableEntityError value, + global::System.Text.Json.JsonSerializerOptions options) + { + options = options ?? throw new global::System.ArgumentNullException(nameof(options)); + var typeInfoResolver = options.TypeInfoResolver ?? throw new global::System.InvalidOperationException("TypeInfoResolver is not set."); + + if (value.IsBillingError) + { + var typeInfo = typeInfoResolver.GetTypeInfo(typeof(global::ResembleAI.BillingError), options) as global::System.Text.Json.Serialization.Metadata.JsonTypeInfo ?? + throw new global::System.InvalidOperationException($"Cannot get type info for {typeof(global::ResembleAI.BillingError).Name}"); + global::System.Text.Json.JsonSerializer.Serialize(writer, value.BillingError!, typeInfo); + } + else if (value.IsBillingValidationErrors) + { + var typeInfo = typeInfoResolver.GetTypeInfo(typeof(global::ResembleAI.BillingValidationErrors), options) as global::System.Text.Json.Serialization.Metadata.JsonTypeInfo ?? + throw new global::System.InvalidOperationException($"Cannot get type info for {typeof(global::ResembleAI.BillingValidationErrors).Name}"); + global::System.Text.Json.JsonSerializer.Serialize(writer, value.BillingValidationErrors!, typeInfo); + } + } + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.UpdateBillingSubscriptionProductsRequestUnprocessableEntityError.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.UpdateBillingSubscriptionProductsRequestUnprocessableEntityError.g.cs new file mode 100644 index 0000000..c6249f5 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.JsonConverters.UpdateBillingSubscriptionProductsRequestUnprocessableEntityError.g.cs @@ -0,0 +1,141 @@ +#nullable enable +#pragma warning disable CS0618 // Type or member is obsolete + +namespace ResembleAI.JsonConverters +{ + /// + public class UpdateBillingSubscriptionProductsRequestUnprocessableEntityErrorJsonConverter : global::System.Text.Json.Serialization.JsonConverter + { + /// + public override global::ResembleAI.UpdateBillingSubscriptionProductsRequestUnprocessableEntityError Read( + ref global::System.Text.Json.Utf8JsonReader reader, + global::System.Type typeToConvert, + global::System.Text.Json.JsonSerializerOptions options) + { + options = options ?? throw new global::System.ArgumentNullException(nameof(options)); + var typeInfoResolver = options.TypeInfoResolver ?? throw new global::System.InvalidOperationException("TypeInfoResolver is not set."); + + using var __jsonDocument = global::System.Text.Json.JsonDocument.ParseValue(ref reader); + var __rawJson = __jsonDocument.RootElement.GetRawText(); + var __jsonProps = new global::System.Collections.Generic.HashSet(); + if (__jsonDocument.RootElement.ValueKind == global::System.Text.Json.JsonValueKind.Object) + { + foreach (var __jsonProp in __jsonDocument.RootElement.EnumerateObject()) + { + __jsonProps.Add(__jsonProp.Name); + + } + } + + var __score0 = 0; + if (__jsonProps.Contains("error")) __score0++; + var __score1 = 0; + if (__jsonProps.Contains("errors")) __score1++; + var __bestScore = 0; + var __bestIndex = -1; + if (__score0 > __bestScore) { __bestScore = __score0; __bestIndex = 0; } + if (__score1 > __bestScore) { __bestScore = __score1; __bestIndex = 1; } + + global::ResembleAI.BillingError? billingError = default; + global::ResembleAI.BillingValidationErrors? billingValidationErrors = default; + if (__bestIndex >= 0) + { + if (__bestIndex == 0) + { + try + { + var typeInfo = typeInfoResolver.GetTypeInfo(typeof(global::ResembleAI.BillingError), options) as global::System.Text.Json.Serialization.Metadata.JsonTypeInfo ?? + throw new global::System.InvalidOperationException($"Cannot get type info for {typeof(global::ResembleAI.BillingError).Name}"); + billingError = global::System.Text.Json.JsonSerializer.Deserialize(__rawJson, typeInfo); + } + catch (global::System.Text.Json.JsonException) + { + } + catch (global::System.InvalidOperationException) + { + } + } + else if (__bestIndex == 1) + { + try + { + var typeInfo = typeInfoResolver.GetTypeInfo(typeof(global::ResembleAI.BillingValidationErrors), options) as global::System.Text.Json.Serialization.Metadata.JsonTypeInfo ?? + throw new global::System.InvalidOperationException($"Cannot get type info for {typeof(global::ResembleAI.BillingValidationErrors).Name}"); + billingValidationErrors = global::System.Text.Json.JsonSerializer.Deserialize(__rawJson, typeInfo); + } + catch (global::System.Text.Json.JsonException) + { + } + catch (global::System.InvalidOperationException) + { + } + } + } + + if (billingError == null && billingValidationErrors == null) + { + try + { + + var typeInfo = typeInfoResolver.GetTypeInfo(typeof(global::ResembleAI.BillingError), options) as global::System.Text.Json.Serialization.Metadata.JsonTypeInfo ?? + throw new global::System.InvalidOperationException($"Cannot get type info for {typeof(global::ResembleAI.BillingError).Name}"); + billingError = global::System.Text.Json.JsonSerializer.Deserialize(__rawJson, typeInfo); + } + catch (global::System.Text.Json.JsonException) + { + } + catch (global::System.InvalidOperationException) + { + } + } + + if (billingError == null && billingValidationErrors == null) + { + try + { + + var typeInfo = typeInfoResolver.GetTypeInfo(typeof(global::ResembleAI.BillingValidationErrors), options) as global::System.Text.Json.Serialization.Metadata.JsonTypeInfo ?? + throw new global::System.InvalidOperationException($"Cannot get type info for {typeof(global::ResembleAI.BillingValidationErrors).Name}"); + billingValidationErrors = global::System.Text.Json.JsonSerializer.Deserialize(__rawJson, typeInfo); + } + catch (global::System.Text.Json.JsonException) + { + } + catch (global::System.InvalidOperationException) + { + } + } + + var __value = new global::ResembleAI.UpdateBillingSubscriptionProductsRequestUnprocessableEntityError( + billingError, + + billingValidationErrors + ); + + return __value; + } + + /// + public override void Write( + global::System.Text.Json.Utf8JsonWriter writer, + global::ResembleAI.UpdateBillingSubscriptionProductsRequestUnprocessableEntityError value, + global::System.Text.Json.JsonSerializerOptions options) + { + options = options ?? throw new global::System.ArgumentNullException(nameof(options)); + var typeInfoResolver = options.TypeInfoResolver ?? throw new global::System.InvalidOperationException("TypeInfoResolver is not set."); + + if (value.IsBillingError) + { + var typeInfo = typeInfoResolver.GetTypeInfo(typeof(global::ResembleAI.BillingError), options) as global::System.Text.Json.Serialization.Metadata.JsonTypeInfo ?? + throw new global::System.InvalidOperationException($"Cannot get type info for {typeof(global::ResembleAI.BillingError).Name}"); + global::System.Text.Json.JsonSerializer.Serialize(writer, value.BillingError!, typeInfo); + } + else if (value.IsBillingValidationErrors) + { + var typeInfo = typeInfoResolver.GetTypeInfo(typeof(global::ResembleAI.BillingValidationErrors), options) as global::System.Text.Json.Serialization.Metadata.JsonTypeInfo ?? + throw new global::System.InvalidOperationException($"Cannot get type info for {typeof(global::ResembleAI.BillingValidationErrors).Name}"); + global::System.Text.Json.JsonSerializer.Serialize(writer, value.BillingValidationErrors!, typeInfo); + } + } + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.JsonSerializerContext.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.JsonSerializerContext.g.cs index 800022f..33e47dd 100644 --- a/src/libs/ResembleAI/Generated/ResembleAI.JsonSerializerContext.g.cs +++ b/src/libs/ResembleAI/Generated/ResembleAI.JsonSerializerContext.g.cs @@ -241,6 +241,26 @@ namespace ResembleAI typeof(global::ResembleAI.JsonConverters.WatermarkVisionDetectionMetricsVerdictNullableJsonConverter), + typeof(global::ResembleAI.JsonConverters.SignalSubmissionInputModalityJsonConverter), + + typeof(global::ResembleAI.JsonConverters.SignalSubmissionInputModalityNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.SignalSubmissionVerdictJsonConverter), + + typeof(global::ResembleAI.JsonConverters.SignalSubmissionVerdictNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.SignalScoreItemInputModalityJsonConverter), + + typeof(global::ResembleAI.JsonConverters.SignalScoreItemInputModalityNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.SignalScoreItemVerdictJsonConverter), + + typeof(global::ResembleAI.JsonConverters.SignalScoreItemVerdictNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.SignalCustomCategoryStatusJsonConverter), + + typeof(global::ResembleAI.JsonConverters.SignalCustomCategoryStatusNullableJsonConverter), + typeof(global::ResembleAI.JsonConverters.SynthesizePostRequestBodyContentApplicationJsonSchemaPrecisionJsonConverter), typeof(global::ResembleAI.JsonConverters.SynthesizePostRequestBodyContentApplicationJsonSchemaPrecisionNullableJsonConverter), @@ -301,6 +321,30 @@ namespace ResembleAI typeof(global::ResembleAI.JsonConverters.DuetPostRequestBodyContentApplicationJsonSchemaScriptItemsSpeakerNullableJsonConverter), + typeof(global::ResembleAI.JsonConverters.BillingPlanPlanTypeJsonConverter), + + typeof(global::ResembleAI.JsonConverters.BillingPlanPlanTypeNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.BillingPlanBillingIntervalJsonConverter), + + typeof(global::ResembleAI.JsonConverters.BillingPlanBillingIntervalNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.BillingPlanProductCategoryJsonConverter), + + typeof(global::ResembleAI.JsonConverters.BillingPlanProductCategoryNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.BillingSubscriptionStatusJsonConverter), + + typeof(global::ResembleAI.JsonConverters.BillingSubscriptionStatusNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.BillingSubscriptionProductCategoryJsonConverter), + + typeof(global::ResembleAI.JsonConverters.BillingSubscriptionProductCategoryNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.BillingWalletTransactionTransactionTypeJsonConverter), + + typeof(global::ResembleAI.JsonConverters.BillingWalletTransactionTransactionTypeNullableJsonConverter), + typeof(global::ResembleAI.JsonConverters.DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionJsonConverter), typeof(global::ResembleAI.JsonConverters.DetectIntelligenceResultDescriptionJsonConverter), @@ -311,6 +355,14 @@ namespace ResembleAI typeof(global::ResembleAI.JsonConverters.WatermarkDetectItemMetricsJsonConverter), + typeof(global::ResembleAI.JsonConverters.UpdateBillingSubscriptionProductsRequestUnprocessableEntityErrorJsonConverter), + + typeof(global::ResembleAI.JsonConverters.ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityErrorJsonConverter), + + typeof(global::ResembleAI.JsonConverters.ChangeBillingPlanRequestUnprocessableEntityErrorJsonConverter), + + typeof(global::ResembleAI.JsonConverters.UpdateBillingAutoReloadRequestUnprocessableEntityErrorJsonConverter), + typeof(global::ResembleAI.JsonConverters.OneOfJsonConverter), typeof(global::ResembleAI.JsonConverters.OneOfJsonConverter), @@ -329,9 +381,21 @@ namespace ResembleAI typeof(global::ResembleAI.JsonConverters.OneOfJsonConverter), + typeof(global::ResembleAI.JsonConverters.OneOfJsonConverter), + + typeof(global::ResembleAI.JsonConverters.OneOfJsonConverter), + + typeof(global::ResembleAI.JsonConverters.OneOfJsonConverter), + + typeof(global::ResembleAI.JsonConverters.OneOfJsonConverter), + + typeof(global::ResembleAI.JsonConverters.OneOfJsonConverter), + typeof(global::ResembleAI.JsonConverters.UnixTimestampJsonConverter), })] - [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.JsonSerializerContextTypes))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.Dictionary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.Dictionary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Text.Json.JsonElement?))] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.DetectGetResponsesContentApplicationJsonSchemaItemsItemsMediaType), TypeInfoPropertyName = "DetectGetResponsesContentApplicationJsonSchemaItemsItemsMediaType2")] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.DetectGetResponsesContentApplicationJsonSchemaItemsItemsStatus), TypeInfoPropertyName = "DetectGetResponsesContentApplicationJsonSchemaItemsItemsStatus2")] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.DetectGetResponsesContentApplicationJsonSchemaItemsItemsModality), TypeInfoPropertyName = "DetectGetResponsesContentApplicationJsonSchemaItemsItemsModality2")] @@ -524,6 +588,41 @@ namespace ResembleAI [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.WatermarkDetectItem))] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.OneOf), TypeInfoPropertyName = "OneOfWatermarkDetectItemMetricsObject2")] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.WatermarkDetectResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SignalSubmissionInputModality), TypeInfoPropertyName = "SignalSubmissionInputModality2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SignalSubmissionVerdict), TypeInfoPropertyName = "SignalSubmissionVerdict2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SignalCategoryScore))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SignalScoreItemInputModality), TypeInfoPropertyName = "SignalScoreItemInputModality2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SignalScoreItemVerdict), TypeInfoPropertyName = "SignalScoreItemVerdict2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SignalTopMatch))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SignalScoreItem))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SignalSubmission))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SignalSubmissionListResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SignalError))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(long))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SignalScoreResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SignalSuccessResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SignalSettings))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SignalBuiltInCategory))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SignalCustomCategoryStatus), TypeInfoPropertyName = "SignalCustomCategoryStatus2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SignalCustomCategoryOverlapsItems))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SignalScenario))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SignalCustomCategory))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SignalCalibrationWarningsItems))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SignalCalibration))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SignalCustomCategoryListResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SignalCustomCategoryCreateRequest))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SignalCustomCategoryResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SignalCustomCategoryUpdateRequest))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SignalSettingsUpdateRequest))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SignalSettingsResponse))] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SecureUploadsCreateSecureUploadResponse200))] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SynthesizePostRequestBodyContentApplicationJsonSchemaPrecision), TypeInfoPropertyName = "SynthesizePostRequestBodyContentApplicationJsonSchemaPrecision2")] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SynthesizePostRequestBodyContentApplicationJsonSchemaOutputFormat), TypeInfoPropertyName = "SynthesizePostRequestBodyContentApplicationJsonSchemaOutputFormat2")] @@ -679,6 +778,57 @@ namespace ResembleAI [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.AccountTeamsTeamUuidGetResponsesContentApplicationJsonSchemaItem))] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.AccountGetTeamResponse200))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingPlanPlanType), TypeInfoPropertyName = "BillingPlanPlanType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingPlanBillingInterval), TypeInfoPropertyName = "BillingPlanBillingInterval2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingPlanFamily))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingPlanProductCategory), TypeInfoPropertyName = "BillingPlanProductCategory2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingProductRateTier))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingProductFamily))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingPlanProduct))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.OneOf), TypeInfoPropertyName = "OneOfBillingProductFamilyObject2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingPlan))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.OneOf), TypeInfoPropertyName = "OneOfBillingPlanFamilyObject2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingPlansResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingError))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingPlanResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingSubscriptionStatus), TypeInfoPropertyName = "BillingSubscriptionStatus2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingSubscriptionProductCategory), TypeInfoPropertyName = "BillingSubscriptionProductCategory2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingSubscriptionProduct))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingSubscriptionPlanProduct))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingSubscriptionItem))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.OneOf), TypeInfoPropertyName = "OneOfBillingSubscriptionPlanProductObject2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingSubscription))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingSubscriptionResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.OneOf), TypeInfoPropertyName = "OneOfBillingSubscriptionObject2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingForbiddenError))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingProductQuantityChange))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingUpdateProductsRequest))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingPaymentActionRequired))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingValidationErrors))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.UpdateBillingSubscriptionProductsRequestUnprocessableEntityError), TypeInfoPropertyName = "UpdateBillingSubscriptionProductsRequestUnprocessableEntityError2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingConfirmPaymentRequest))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError), TypeInfoPropertyName = "ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingChangePlanRequest))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.Dictionary))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.ChangeBillingPlanRequestUnprocessableEntityError), TypeInfoPropertyName = "ChangeBillingPlanRequestUnprocessableEntityError2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingWallet))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingWalletResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingWalletTransactionTransactionType), TypeInfoPropertyName = "BillingWalletTransactionTransactionType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingWalletTransaction))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingPagination))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingTransactionsResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingAutoReloadSetting))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingAutoReloadResponse))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.OneOf), TypeInfoPropertyName = "OneOfBillingAutoReloadSettingObject2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingUpdateAutoReloadRequest))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingWalletUpdateBillingAutoReloadResponse200))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.UpdateBillingAutoReloadRequestUnprocessableEntityError), TypeInfoPropertyName = "UpdateBillingAutoReloadRequestUnprocessableEntityError2")] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.AccountBillingUsageGetResponsesContentApplicationJsonSchemaItem))] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.AccountGetBillingUsageResponse200))] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.CreateDetectionRequest))] @@ -689,6 +839,7 @@ namespace ResembleAI [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.AskDetectIntelligenceQuestionRequest))] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.CreateIdentityAttachmentRequest))] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SearchIdentitiesRequest))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.CreateSignalSubmissionRequest))] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.CreateSecureUploadRequest))] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SynthesizeRequest))] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.StreamSynthesizeRequest))] @@ -715,6 +866,509 @@ namespace ResembleAI [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.CreateDuetVoicePairRequest))] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.GenerateDuetRequest))] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.DetectGetResponsesContentApplicationJsonSchemaItemsItemsMediaType?), TypeInfoPropertyName = "NullableDetectGetResponsesContentApplicationJsonSchemaItemsItemsMediaType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.DetectGetResponsesContentApplicationJsonSchemaItemsItemsStatus?), TypeInfoPropertyName = "NullableDetectGetResponsesContentApplicationJsonSchemaItemsItemsStatus2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.DetectGetResponsesContentApplicationJsonSchemaItemsItemsModality?), TypeInfoPropertyName = "NullableDetectGetResponsesContentApplicationJsonSchemaItemsItemsModality2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(double?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.DetectC2PaManifestValidationState?), TypeInfoPropertyName = "NullableDetectC2PaManifestValidationState2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(bool?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.OneOf?), TypeInfoPropertyName = "NullableOneOfDetectGetResponsesContentApplicationJsonSchemaItemsItemsAudioSourceTracingObject2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.OneOf?), TypeInfoPropertyName = "NullableOneOfDetectGetResponsesContentApplicationJsonSchemaItemsItemsIntelligenceObject2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.DateTime?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(int?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.DetectPostRequestBodyContentMultipartFormDataSchemaModality?), TypeInfoPropertyName = "NullableDetectPostRequestBodyContentMultipartFormDataSchemaModality2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.DetectPostResponsesContentApplicationJsonSchemaItemModality?), TypeInfoPropertyName = "NullableDetectPostResponsesContentApplicationJsonSchemaItemModality2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceStatus?), TypeInfoPropertyName = "NullableDetectPostResponsesContentApplicationJsonSchemaItemIntelligenceStatus2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1FraudType?), TypeInfoPropertyName = "NullableDetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1FraudType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1LivenessAssessment?), TypeInfoPropertyName = "NullableDetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1LivenessAssessment2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescription?), TypeInfoPropertyName = "NullableDetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescription2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.OneOf?), TypeInfoPropertyName = "NullableOneOfDetectPostResponsesContentApplicationJsonSchemaItemIntelligenceObject2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.DetectUuidGetResponsesContentApplicationJsonSchemaItemMediaType?), TypeInfoPropertyName = "NullableDetectUuidGetResponsesContentApplicationJsonSchemaItemMediaType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.DetectUuidGetResponsesContentApplicationJsonSchemaItemStatus?), TypeInfoPropertyName = "NullableDetectUuidGetResponsesContentApplicationJsonSchemaItemStatus2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.DetectIntelligenceResultStatus?), TypeInfoPropertyName = "NullableDetectIntelligenceResultStatus2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.DetectIntelligenceResultDescriptionOneOf1FraudType?), TypeInfoPropertyName = "NullableDetectIntelligenceResultDescriptionOneOf1FraudType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.DetectIntelligenceResultDescriptionOneOf1LivenessAssessment?), TypeInfoPropertyName = "NullableDetectIntelligenceResultDescriptionOneOf1LivenessAssessment2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.DetectIntelligenceResultDescription?), TypeInfoPropertyName = "NullableDetectIntelligenceResultDescription2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.OneOf?), TypeInfoPropertyName = "NullableOneOfDetectIntelligenceResultDescriptionObject2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.DetectUuidGetResponsesContentApplicationJsonSchemaItemIntelligence?), TypeInfoPropertyName = "NullableDetectUuidGetResponsesContentApplicationJsonSchemaItemIntelligence2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.DetectUuidGetResponsesContentApplicationJsonSchemaItemModality?), TypeInfoPropertyName = "NullableDetectUuidGetResponsesContentApplicationJsonSchemaItemModality2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.OneOf?), TypeInfoPropertyName = "NullableOneOfDetectUuidGetResponsesContentApplicationJsonSchemaItemAudioSourceTracingObject2")] + internal sealed partial class SourceGenerationContextChunk0 : global::System.Text.Json.Serialization.JsonSerializerContext + { + } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonSourceGenerationOptions( + DefaultIgnoreCondition = global::System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull, + Converters = new global::System.Type[] + { + typeof(global::ResembleAI.JsonConverters.DetectGetResponsesContentApplicationJsonSchemaItemsItemsMediaTypeJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectGetResponsesContentApplicationJsonSchemaItemsItemsMediaTypeNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectGetResponsesContentApplicationJsonSchemaItemsItemsStatusJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectGetResponsesContentApplicationJsonSchemaItemsItemsStatusNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectGetResponsesContentApplicationJsonSchemaItemsItemsModalityJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectGetResponsesContentApplicationJsonSchemaItemsItemsModalityNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectC2PaManifestValidationStateJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectC2PaManifestValidationStateNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectPostRequestBodyContentMultipartFormDataSchemaModalityJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectPostRequestBodyContentMultipartFormDataSchemaModalityNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectPostResponsesContentApplicationJsonSchemaItemModalityJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectPostResponsesContentApplicationJsonSchemaItemModalityNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceStatusJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceStatusNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1FraudTypeJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1FraudTypeNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1LivenessAssessmentJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1LivenessAssessmentNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectUuidGetResponsesContentApplicationJsonSchemaItemMediaTypeJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectUuidGetResponsesContentApplicationJsonSchemaItemMediaTypeNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectUuidGetResponsesContentApplicationJsonSchemaItemStatusJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectUuidGetResponsesContentApplicationJsonSchemaItemStatusNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectIntelligenceResultStatusJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectIntelligenceResultStatusNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectIntelligenceResultDescriptionOneOf1FraudTypeJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectIntelligenceResultDescriptionOneOf1FraudTypeNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectIntelligenceResultDescriptionOneOf1LivenessAssessmentJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectIntelligenceResultDescriptionOneOf1LivenessAssessmentNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectUuidGetResponsesContentApplicationJsonSchemaItemModalityJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectUuidGetResponsesContentApplicationJsonSchemaItemModalityNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectBatchStatusJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectBatchStatusNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectAgentTierJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectAgentTierNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectAgentRunSummaryStatusJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectAgentRunSummaryStatusNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.IntelligencePostRequestBodyContentApplicationJsonSchemaMediaTypeJsonConverter), + + typeof(global::ResembleAI.JsonConverters.IntelligencePostRequestBodyContentApplicationJsonSchemaMediaTypeNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.IntelligencePostResponsesContentApplicationJsonSchemaItemMediaTypeJsonConverter), + + typeof(global::ResembleAI.JsonConverters.IntelligencePostResponsesContentApplicationJsonSchemaItemMediaTypeNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionFraudTypeJsonConverter), + + typeof(global::ResembleAI.JsonConverters.IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionFraudTypeNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionLivenessAssessmentJsonConverter), + + typeof(global::ResembleAI.JsonConverters.IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionLivenessAssessmentNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsMediaTypeJsonConverter), + + typeof(global::ResembleAI.JsonConverters.IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsMediaTypeNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionFraudTypeJsonConverter), + + typeof(global::ResembleAI.JsonConverters.IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionFraudTypeNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionLivenessAssessmentJsonConverter), + + typeof(global::ResembleAI.JsonConverters.IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionLivenessAssessmentNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemMediaTypeJsonConverter), + + typeof(global::ResembleAI.JsonConverters.IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemMediaTypeNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectsUuidIntelligencePostResponsesContentApplicationJsonSchemaItemStatusJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectsUuidIntelligencePostResponsesContentApplicationJsonSchemaItemStatusNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectsUuidIntelligenceQuestionUuidGetResponsesContentApplicationJsonSchemaItemStatusJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectsUuidIntelligenceQuestionUuidGetResponsesContentApplicationJsonSchemaItemStatusNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.IdentitySummaryVisibilityJsonConverter), + + typeof(global::ResembleAI.JsonConverters.IdentitySummaryVisibilityNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.IdentitySummaryIdentityTypeJsonConverter), + + typeof(global::ResembleAI.JsonConverters.IdentitySummaryIdentityTypeNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.IdentityPostRequestBodyContentApplicationJsonSchemaOneOf1IdentityIdentityTypeJsonConverter), + + typeof(global::ResembleAI.JsonConverters.IdentityPostRequestBodyContentApplicationJsonSchemaOneOf1IdentityIdentityTypeNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.IdentityPostRequestBodyContentApplicationJsonSchemaOneOf1IdentityVisibilityJsonConverter), + + typeof(global::ResembleAI.JsonConverters.IdentityPostRequestBodyContentApplicationJsonSchemaOneOf1IdentityVisibilityNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.IdentityUuidAttachmentsPostRequestBodyContentMultipartFormDataSchemaModalityJsonConverter), + + typeof(global::ResembleAI.JsonConverters.IdentityUuidAttachmentsPostRequestBodyContentMultipartFormDataSchemaModalityNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.IdentityIdentityTypeJsonConverter), + + typeof(global::ResembleAI.JsonConverters.IdentityIdentityTypeNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.IdentityVisibilityJsonConverter), + + typeof(global::ResembleAI.JsonConverters.IdentityVisibilityNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.IdentityEmbeddingsItemsModalityJsonConverter), + + typeof(global::ResembleAI.JsonConverters.IdentityEmbeddingsItemsModalityNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.IdentitySearchPostRequestBodyContentApplicationJsonSchemaModalityJsonConverter), + + typeof(global::ResembleAI.JsonConverters.IdentitySearchPostRequestBodyContentApplicationJsonSchemaModalityNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.IdentitySearchPostResponsesContentApplicationJsonSchemaModalityJsonConverter), + + typeof(global::ResembleAI.JsonConverters.IdentitySearchPostResponsesContentApplicationJsonSchemaModalityNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.WatermarkApplyPostParametersPreferJsonConverter), + + typeof(global::ResembleAI.JsonConverters.WatermarkApplyPostParametersPreferNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.WatermarkApplyItemMediaTypeJsonConverter), + + typeof(global::ResembleAI.JsonConverters.WatermarkApplyItemMediaTypeNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.WatermarkApplyItemOperationTypeJsonConverter), + + typeof(global::ResembleAI.JsonConverters.WatermarkApplyItemOperationTypeNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.WatermarkApplyItemStatusJsonConverter), + + typeof(global::ResembleAI.JsonConverters.WatermarkApplyItemStatusNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.WatermarkApplyItemModelVersionJsonConverter), + + typeof(global::ResembleAI.JsonConverters.WatermarkApplyItemModelVersionNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.WatermarkDetectPostParametersPreferJsonConverter), + + typeof(global::ResembleAI.JsonConverters.WatermarkDetectPostParametersPreferNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.WatermarkDetectItemMediaTypeJsonConverter), + + typeof(global::ResembleAI.JsonConverters.WatermarkDetectItemMediaTypeNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.WatermarkDetectItemOperationTypeJsonConverter), + + typeof(global::ResembleAI.JsonConverters.WatermarkDetectItemOperationTypeNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.WatermarkDetectItemStatusJsonConverter), + + typeof(global::ResembleAI.JsonConverters.WatermarkDetectItemStatusNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.WatermarkDetectItemModelVersionJsonConverter), + + typeof(global::ResembleAI.JsonConverters.WatermarkDetectItemModelVersionNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.WatermarkAudioDetectionMetricsOverallStatusJsonConverter), + + typeof(global::ResembleAI.JsonConverters.WatermarkAudioDetectionMetricsOverallStatusNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.WatermarkAudioDetectionMetricsDetectedModelVersionsItemsJsonConverter), + + typeof(global::ResembleAI.JsonConverters.WatermarkAudioDetectionMetricsDetectedModelVersionsItemsNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.WatermarkAudioModelResultModelVersionJsonConverter), + + typeof(global::ResembleAI.JsonConverters.WatermarkAudioModelResultModelVersionNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.WatermarkAudioModelResultStatusJsonConverter), + + typeof(global::ResembleAI.JsonConverters.WatermarkAudioModelResultStatusNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.WatermarkVisionDetectionMetricsOverallStatusJsonConverter), + + typeof(global::ResembleAI.JsonConverters.WatermarkVisionDetectionMetricsOverallStatusNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.WatermarkVisionDetectionMetricsDetectedModelVersionsItemsJsonConverter), + + typeof(global::ResembleAI.JsonConverters.WatermarkVisionDetectionMetricsDetectedModelVersionsItemsNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.WatermarkVisionModelResultModelVersionJsonConverter), + + typeof(global::ResembleAI.JsonConverters.WatermarkVisionModelResultModelVersionNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.WatermarkVisionModelResultStatusJsonConverter), + + typeof(global::ResembleAI.JsonConverters.WatermarkVisionModelResultStatusNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.WatermarkVisionDetectionMetricsVerdictJsonConverter), + + typeof(global::ResembleAI.JsonConverters.WatermarkVisionDetectionMetricsVerdictNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.SignalSubmissionInputModalityJsonConverter), + + typeof(global::ResembleAI.JsonConverters.SignalSubmissionInputModalityNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.SignalSubmissionVerdictJsonConverter), + + typeof(global::ResembleAI.JsonConverters.SignalSubmissionVerdictNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.SignalScoreItemInputModalityJsonConverter), + + typeof(global::ResembleAI.JsonConverters.SignalScoreItemInputModalityNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.SignalScoreItemVerdictJsonConverter), + + typeof(global::ResembleAI.JsonConverters.SignalScoreItemVerdictNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.SignalCustomCategoryStatusJsonConverter), + + typeof(global::ResembleAI.JsonConverters.SignalCustomCategoryStatusNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.SynthesizePostRequestBodyContentApplicationJsonSchemaPrecisionJsonConverter), + + typeof(global::ResembleAI.JsonConverters.SynthesizePostRequestBodyContentApplicationJsonSchemaPrecisionNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.SynthesizePostRequestBodyContentApplicationJsonSchemaOutputFormatJsonConverter), + + typeof(global::ResembleAI.JsonConverters.SynthesizePostRequestBodyContentApplicationJsonSchemaOutputFormatNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.SynthesizePostRequestBodyContentApplicationJsonSchemaSampleRateJsonConverter), + + typeof(global::ResembleAI.JsonConverters.SynthesizePostRequestBodyContentApplicationJsonSchemaSampleRateNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.StreamPostRequestBodyContentApplicationJsonSchemaPrecisionJsonConverter), + + typeof(global::ResembleAI.JsonConverters.StreamPostRequestBodyContentApplicationJsonSchemaPrecisionNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.StreamPostRequestBodyContentApplicationJsonSchemaSampleRateJsonConverter), + + typeof(global::ResembleAI.JsonConverters.StreamPostRequestBodyContentApplicationJsonSchemaSampleRateNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.SpeechToTextPostResponsesContentApplicationJsonSchemaItemStatusJsonConverter), + + typeof(global::ResembleAI.JsonConverters.SpeechToTextPostResponsesContentApplicationJsonSchemaItemStatusNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.SpeechToTextUuidGetResponsesContentApplicationJsonSchemaItemStatusJsonConverter), + + typeof(global::ResembleAI.JsonConverters.SpeechToTextUuidGetResponsesContentApplicationJsonSchemaItemStatusNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.AudioEnhancementsGetResponsesContentApplicationJsonSchemaItemsItemsStatusJsonConverter), + + typeof(global::ResembleAI.JsonConverters.AudioEnhancementsGetResponsesContentApplicationJsonSchemaItemsItemsStatusNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.AudioEnhancementsGetResponsesContentApplicationJsonSchemaItemsItemsEnhancementEngineJsonConverter), + + typeof(global::ResembleAI.JsonConverters.AudioEnhancementsGetResponsesContentApplicationJsonSchemaItemsItemsEnhancementEngineNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.AudioEnhancementsPostRequestBodyContentMultipartFormDataSchemaEnhancementEngineJsonConverter), + + typeof(global::ResembleAI.JsonConverters.AudioEnhancementsPostRequestBodyContentMultipartFormDataSchemaEnhancementEngineNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.AudioEnhancementsPostResponsesContentApplicationJsonSchemaStatusJsonConverter), + + typeof(global::ResembleAI.JsonConverters.AudioEnhancementsPostResponsesContentApplicationJsonSchemaStatusNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.AudioEnhancementsEnhancementUuidGetResponsesContentApplicationJsonSchemaStatusJsonConverter), + + typeof(global::ResembleAI.JsonConverters.AudioEnhancementsEnhancementUuidGetResponsesContentApplicationJsonSchemaStatusNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.PronunciationsGetParametersStatusJsonConverter), + + typeof(global::ResembleAI.JsonConverters.PronunciationsGetParametersStatusNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.CustomPronunciationStatusJsonConverter), + + typeof(global::ResembleAI.JsonConverters.CustomPronunciationStatusNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DuetPostRequestBodyContentApplicationJsonSchemaScriptItemsSpeakerJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DuetPostRequestBodyContentApplicationJsonSchemaScriptItemsSpeakerNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.BillingPlanPlanTypeJsonConverter), + + typeof(global::ResembleAI.JsonConverters.BillingPlanPlanTypeNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.BillingPlanBillingIntervalJsonConverter), + + typeof(global::ResembleAI.JsonConverters.BillingPlanBillingIntervalNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.BillingPlanProductCategoryJsonConverter), + + typeof(global::ResembleAI.JsonConverters.BillingPlanProductCategoryNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.BillingSubscriptionStatusJsonConverter), + + typeof(global::ResembleAI.JsonConverters.BillingSubscriptionStatusNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.BillingSubscriptionProductCategoryJsonConverter), + + typeof(global::ResembleAI.JsonConverters.BillingSubscriptionProductCategoryNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.BillingWalletTransactionTransactionTypeJsonConverter), + + typeof(global::ResembleAI.JsonConverters.BillingWalletTransactionTransactionTypeNullableJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectIntelligenceResultDescriptionJsonConverter), + + typeof(global::ResembleAI.JsonConverters.DetectUuidGetResponsesContentApplicationJsonSchemaItemIntelligenceJsonConverter), + + typeof(global::ResembleAI.JsonConverters.IdentityCreateIdentityRequestJsonConverter), + + typeof(global::ResembleAI.JsonConverters.WatermarkDetectItemMetricsJsonConverter), + + typeof(global::ResembleAI.JsonConverters.UpdateBillingSubscriptionProductsRequestUnprocessableEntityErrorJsonConverter), + + typeof(global::ResembleAI.JsonConverters.ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityErrorJsonConverter), + + typeof(global::ResembleAI.JsonConverters.ChangeBillingPlanRequestUnprocessableEntityErrorJsonConverter), + + typeof(global::ResembleAI.JsonConverters.UpdateBillingAutoReloadRequestUnprocessableEntityErrorJsonConverter), + + typeof(global::ResembleAI.JsonConverters.OneOfJsonConverter), + + typeof(global::ResembleAI.JsonConverters.OneOfJsonConverter), + + typeof(global::ResembleAI.JsonConverters.OneOfJsonConverter), + + typeof(global::ResembleAI.JsonConverters.OneOfJsonConverter), + + typeof(global::ResembleAI.JsonConverters.OneOfJsonConverter), + + typeof(global::ResembleAI.JsonConverters.OneOfJsonConverter), + + typeof(global::ResembleAI.JsonConverters.OneOfJsonConverter), + + typeof(global::ResembleAI.JsonConverters.OneOfJsonConverter), + + typeof(global::ResembleAI.JsonConverters.OneOfJsonConverter), + + typeof(global::ResembleAI.JsonConverters.OneOfJsonConverter), + + typeof(global::ResembleAI.JsonConverters.OneOfJsonConverter), + + typeof(global::ResembleAI.JsonConverters.OneOfJsonConverter), + + typeof(global::ResembleAI.JsonConverters.OneOfJsonConverter), + + typeof(global::ResembleAI.JsonConverters.OneOfJsonConverter), + + typeof(global::ResembleAI.JsonConverters.UnixTimestampJsonConverter), + })] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.OneOf?), TypeInfoPropertyName = "NullableOneOfDetectUuidGetResponsesContentApplicationJsonSchemaItemIntelligenceObject2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.DetectBatchStatus?), TypeInfoPropertyName = "NullableDetectBatchStatus2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.DetectAgentTier?), TypeInfoPropertyName = "NullableDetectAgentTier2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.DetectAgentRunSummaryStatus?), TypeInfoPropertyName = "NullableDetectAgentRunSummaryStatus2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.OneOf?), TypeInfoPropertyName = "NullableOneOfDetectAgentRunResultVerdictObject2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Guid?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.IntelligencePostRequestBodyContentApplicationJsonSchemaMediaType?), TypeInfoPropertyName = "NullableIntelligencePostRequestBodyContentApplicationJsonSchemaMediaType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.IntelligencePostResponsesContentApplicationJsonSchemaItemMediaType?), TypeInfoPropertyName = "NullableIntelligencePostResponsesContentApplicationJsonSchemaItemMediaType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionFraudType?), TypeInfoPropertyName = "NullableIntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionFraudType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionLivenessAssessment?), TypeInfoPropertyName = "NullableIntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionLivenessAssessment2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsMediaType?), TypeInfoPropertyName = "NullableIntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsMediaType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionFraudType?), TypeInfoPropertyName = "NullableIntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionFraudType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionLivenessAssessment?), TypeInfoPropertyName = "NullableIntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionLivenessAssessment2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemMediaType?), TypeInfoPropertyName = "NullableIntelligencesUuidGetResponsesContentApplicationJsonSchemaItemMediaType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.DetectsUuidIntelligencePostResponsesContentApplicationJsonSchemaItemStatus?), TypeInfoPropertyName = "NullableDetectsUuidIntelligencePostResponsesContentApplicationJsonSchemaItemStatus2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.DetectsUuidIntelligenceQuestionUuidGetResponsesContentApplicationJsonSchemaItemStatus?), TypeInfoPropertyName = "NullableDetectsUuidIntelligenceQuestionUuidGetResponsesContentApplicationJsonSchemaItemStatus2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.IdentitySummaryVisibility?), TypeInfoPropertyName = "NullableIdentitySummaryVisibility2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.IdentitySummaryIdentityType?), TypeInfoPropertyName = "NullableIdentitySummaryIdentityType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.IdentityPostRequestBodyContentApplicationJsonSchemaOneOf1IdentityIdentityType?), TypeInfoPropertyName = "NullableIdentityPostRequestBodyContentApplicationJsonSchemaOneOf1IdentityIdentityType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.IdentityPostRequestBodyContentApplicationJsonSchemaOneOf1IdentityVisibility?), TypeInfoPropertyName = "NullableIdentityPostRequestBodyContentApplicationJsonSchemaOneOf1IdentityVisibility2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.IdentityCreateIdentityRequest?), TypeInfoPropertyName = "NullableIdentityCreateIdentityRequest2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.IdentityUuidAttachmentsPostRequestBodyContentMultipartFormDataSchemaModality?), TypeInfoPropertyName = "NullableIdentityUuidAttachmentsPostRequestBodyContentMultipartFormDataSchemaModality2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.IdentityIdentityType?), TypeInfoPropertyName = "NullableIdentityIdentityType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.IdentityVisibility?), TypeInfoPropertyName = "NullableIdentityVisibility2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.IdentityEmbeddingsItemsModality?), TypeInfoPropertyName = "NullableIdentityEmbeddingsItemsModality2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.IdentitySearchPostRequestBodyContentApplicationJsonSchemaModality?), TypeInfoPropertyName = "NullableIdentitySearchPostRequestBodyContentApplicationJsonSchemaModality2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.IdentitySearchPostResponsesContentApplicationJsonSchemaModality?), TypeInfoPropertyName = "NullableIdentitySearchPostResponsesContentApplicationJsonSchemaModality2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.WatermarkApplyPostParametersPrefer?), TypeInfoPropertyName = "NullableWatermarkApplyPostParametersPrefer2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.WatermarkApplyItemMediaType?), TypeInfoPropertyName = "NullableWatermarkApplyItemMediaType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.WatermarkApplyItemOperationType?), TypeInfoPropertyName = "NullableWatermarkApplyItemOperationType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.WatermarkApplyItemStatus?), TypeInfoPropertyName = "NullableWatermarkApplyItemStatus2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.WatermarkApplyItemModelVersion?), TypeInfoPropertyName = "NullableWatermarkApplyItemModelVersion2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.WatermarkDetectPostParametersPrefer?), TypeInfoPropertyName = "NullableWatermarkDetectPostParametersPrefer2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.WatermarkDetectItemMediaType?), TypeInfoPropertyName = "NullableWatermarkDetectItemMediaType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.WatermarkDetectItemOperationType?), TypeInfoPropertyName = "NullableWatermarkDetectItemOperationType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.WatermarkDetectItemStatus?), TypeInfoPropertyName = "NullableWatermarkDetectItemStatus2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.WatermarkDetectItemModelVersion?), TypeInfoPropertyName = "NullableWatermarkDetectItemModelVersion2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.WatermarkAudioDetectionMetricsOverallStatus?), TypeInfoPropertyName = "NullableWatermarkAudioDetectionMetricsOverallStatus2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.WatermarkAudioDetectionMetricsDetectedModelVersionsItems?), TypeInfoPropertyName = "NullableWatermarkAudioDetectionMetricsDetectedModelVersionsItems2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.WatermarkAudioModelResultModelVersion?), TypeInfoPropertyName = "NullableWatermarkAudioModelResultModelVersion2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.WatermarkAudioModelResultStatus?), TypeInfoPropertyName = "NullableWatermarkAudioModelResultStatus2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.WatermarkVisionDetectionMetricsOverallStatus?), TypeInfoPropertyName = "NullableWatermarkVisionDetectionMetricsOverallStatus2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.WatermarkVisionDetectionMetricsDetectedModelVersionsItems?), TypeInfoPropertyName = "NullableWatermarkVisionDetectionMetricsDetectedModelVersionsItems2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.WatermarkVisionModelResultModelVersion?), TypeInfoPropertyName = "NullableWatermarkVisionModelResultModelVersion2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.WatermarkVisionModelResultStatus?), TypeInfoPropertyName = "NullableWatermarkVisionModelResultStatus2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.WatermarkVisionDetectionMetricsVerdict?), TypeInfoPropertyName = "NullableWatermarkVisionDetectionMetricsVerdict2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.OneOf?), TypeInfoPropertyName = "NullableOneOfWatermarkVisionDetectionMetricsVerdictObject2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.WatermarkDetectItemMetrics?), TypeInfoPropertyName = "NullableWatermarkDetectItemMetrics2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.OneOf?), TypeInfoPropertyName = "NullableOneOfWatermarkDetectItemMetricsObject2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SignalSubmissionInputModality?), TypeInfoPropertyName = "NullableSignalSubmissionInputModality2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SignalSubmissionVerdict?), TypeInfoPropertyName = "NullableSignalSubmissionVerdict2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SignalScoreItemInputModality?), TypeInfoPropertyName = "NullableSignalScoreItemInputModality2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SignalScoreItemVerdict?), TypeInfoPropertyName = "NullableSignalScoreItemVerdict2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(long?))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SignalCustomCategoryStatus?), TypeInfoPropertyName = "NullableSignalCustomCategoryStatus2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SynthesizePostRequestBodyContentApplicationJsonSchemaPrecision?), TypeInfoPropertyName = "NullableSynthesizePostRequestBodyContentApplicationJsonSchemaPrecision2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SynthesizePostRequestBodyContentApplicationJsonSchemaOutputFormat?), TypeInfoPropertyName = "NullableSynthesizePostRequestBodyContentApplicationJsonSchemaOutputFormat2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SynthesizePostRequestBodyContentApplicationJsonSchemaSampleRate?), TypeInfoPropertyName = "NullableSynthesizePostRequestBodyContentApplicationJsonSchemaSampleRate2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.StreamPostRequestBodyContentApplicationJsonSchemaPrecision?), TypeInfoPropertyName = "NullableStreamPostRequestBodyContentApplicationJsonSchemaPrecision2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.StreamPostRequestBodyContentApplicationJsonSchemaSampleRate?), TypeInfoPropertyName = "NullableStreamPostRequestBodyContentApplicationJsonSchemaSampleRate2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SpeechToTextPostResponsesContentApplicationJsonSchemaItemStatus?), TypeInfoPropertyName = "NullableSpeechToTextPostResponsesContentApplicationJsonSchemaItemStatus2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.SpeechToTextUuidGetResponsesContentApplicationJsonSchemaItemStatus?), TypeInfoPropertyName = "NullableSpeechToTextUuidGetResponsesContentApplicationJsonSchemaItemStatus2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.AudioEnhancementsGetResponsesContentApplicationJsonSchemaItemsItemsStatus?), TypeInfoPropertyName = "NullableAudioEnhancementsGetResponsesContentApplicationJsonSchemaItemsItemsStatus2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.AudioEnhancementsGetResponsesContentApplicationJsonSchemaItemsItemsEnhancementEngine?), TypeInfoPropertyName = "NullableAudioEnhancementsGetResponsesContentApplicationJsonSchemaItemsItemsEnhancementEngine2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.AudioEnhancementsPostRequestBodyContentMultipartFormDataSchemaEnhancementEngine?), TypeInfoPropertyName = "NullableAudioEnhancementsPostRequestBodyContentMultipartFormDataSchemaEnhancementEngine2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.AudioEnhancementsPostResponsesContentApplicationJsonSchemaStatus?), TypeInfoPropertyName = "NullableAudioEnhancementsPostResponsesContentApplicationJsonSchemaStatus2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.AudioEnhancementsEnhancementUuidGetResponsesContentApplicationJsonSchemaStatus?), TypeInfoPropertyName = "NullableAudioEnhancementsEnhancementUuidGetResponsesContentApplicationJsonSchemaStatus2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.PronunciationsGetParametersStatus?), TypeInfoPropertyName = "NullablePronunciationsGetParametersStatus2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.CustomPronunciationStatus?), TypeInfoPropertyName = "NullableCustomPronunciationStatus2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.DuetPostRequestBodyContentApplicationJsonSchemaScriptItemsSpeaker?), TypeInfoPropertyName = "NullableDuetPostRequestBodyContentApplicationJsonSchemaScriptItemsSpeaker2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingPlanPlanType?), TypeInfoPropertyName = "NullableBillingPlanPlanType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingPlanBillingInterval?), TypeInfoPropertyName = "NullableBillingPlanBillingInterval2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingPlanProductCategory?), TypeInfoPropertyName = "NullableBillingPlanProductCategory2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.OneOf?), TypeInfoPropertyName = "NullableOneOfBillingProductFamilyObject2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.OneOf?), TypeInfoPropertyName = "NullableOneOfBillingPlanFamilyObject2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingSubscriptionStatus?), TypeInfoPropertyName = "NullableBillingSubscriptionStatus2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingSubscriptionProductCategory?), TypeInfoPropertyName = "NullableBillingSubscriptionProductCategory2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.OneOf?), TypeInfoPropertyName = "NullableOneOfBillingSubscriptionPlanProductObject2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.OneOf?), TypeInfoPropertyName = "NullableOneOfBillingSubscriptionObject2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.UpdateBillingSubscriptionProductsRequestUnprocessableEntityError?), TypeInfoPropertyName = "NullableUpdateBillingSubscriptionProductsRequestUnprocessableEntityError2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError?), TypeInfoPropertyName = "NullableConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.ChangeBillingPlanRequestUnprocessableEntityError?), TypeInfoPropertyName = "NullableChangeBillingPlanRequestUnprocessableEntityError2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.BillingWalletTransactionTransactionType?), TypeInfoPropertyName = "NullableBillingWalletTransactionTransactionType2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.OneOf?), TypeInfoPropertyName = "NullableOneOfBillingAutoReloadSettingObject2")] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::ResembleAI.UpdateBillingAutoReloadRequestUnprocessableEntityError?), TypeInfoPropertyName = "NullableUpdateBillingAutoReloadRequestUnprocessableEntityError2")] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] @@ -736,6 +1390,14 @@ namespace ResembleAI [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List>))] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] @@ -754,9 +1416,248 @@ namespace ResembleAI [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))] + internal sealed partial class SourceGenerationContextChunk1 : global::System.Text.Json.Serialization.JsonSerializerContext + { + } + /// + /// + /// public sealed partial class SourceGenerationContext : global::System.Text.Json.Serialization.JsonSerializerContext { + private static readonly global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver Resolver = global::System.Text.Json.Serialization.Metadata.JsonTypeInfoResolver.Combine( + SourceGenerationContextChunk0.Default, + + SourceGenerationContextChunk1.Default + ); + + private static readonly global::System.Text.Json.JsonSerializerOptions DefaultOptions = CreateDefaultOptions(); + + /// + /// + /// + public static SourceGenerationContext Default { get; } = new(DefaultOptions); + + private SourceGenerationContext(global::System.Text.Json.JsonSerializerOptions options) + : base(options) + { + } + + /// + protected override global::System.Text.Json.JsonSerializerOptions? GeneratedSerializerOptions => DefaultOptions; + + /// + public override global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? GetTypeInfo(global::System.Type type) + { + return Resolver.GetTypeInfo(type, Options); + } + + private static global::System.Text.Json.JsonSerializerOptions CreateDefaultOptions() + { + var options = new global::System.Text.Json.JsonSerializerOptions + { + DefaultIgnoreCondition = global::System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull, + TypeInfoResolver = Resolver, + }; + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectGetResponsesContentApplicationJsonSchemaItemsItemsMediaTypeJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectGetResponsesContentApplicationJsonSchemaItemsItemsMediaTypeNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectGetResponsesContentApplicationJsonSchemaItemsItemsStatusJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectGetResponsesContentApplicationJsonSchemaItemsItemsStatusNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectGetResponsesContentApplicationJsonSchemaItemsItemsModalityJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectGetResponsesContentApplicationJsonSchemaItemsItemsModalityNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectC2PaManifestValidationStateJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectC2PaManifestValidationStateNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectPostRequestBodyContentMultipartFormDataSchemaModalityJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectPostRequestBodyContentMultipartFormDataSchemaModalityNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectPostResponsesContentApplicationJsonSchemaItemModalityJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectPostResponsesContentApplicationJsonSchemaItemModalityNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceStatusJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceStatusNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1FraudTypeJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1FraudTypeNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1LivenessAssessmentJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1LivenessAssessmentNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectUuidGetResponsesContentApplicationJsonSchemaItemMediaTypeJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectUuidGetResponsesContentApplicationJsonSchemaItemMediaTypeNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectUuidGetResponsesContentApplicationJsonSchemaItemStatusJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectUuidGetResponsesContentApplicationJsonSchemaItemStatusNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectIntelligenceResultStatusJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectIntelligenceResultStatusNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectIntelligenceResultDescriptionOneOf1FraudTypeJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectIntelligenceResultDescriptionOneOf1FraudTypeNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectIntelligenceResultDescriptionOneOf1LivenessAssessmentJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectIntelligenceResultDescriptionOneOf1LivenessAssessmentNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectUuidGetResponsesContentApplicationJsonSchemaItemModalityJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectUuidGetResponsesContentApplicationJsonSchemaItemModalityNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectBatchStatusJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectBatchStatusNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectAgentTierJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectAgentTierNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectAgentRunSummaryStatusJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectAgentRunSummaryStatusNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.IntelligencePostRequestBodyContentApplicationJsonSchemaMediaTypeJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.IntelligencePostRequestBodyContentApplicationJsonSchemaMediaTypeNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.IntelligencePostResponsesContentApplicationJsonSchemaItemMediaTypeJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.IntelligencePostResponsesContentApplicationJsonSchemaItemMediaTypeNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionFraudTypeJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionFraudTypeNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionLivenessAssessmentJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionLivenessAssessmentNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsMediaTypeJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsMediaTypeNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionFraudTypeJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionFraudTypeNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionLivenessAssessmentJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionLivenessAssessmentNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemMediaTypeJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemMediaTypeNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectsUuidIntelligencePostResponsesContentApplicationJsonSchemaItemStatusJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectsUuidIntelligencePostResponsesContentApplicationJsonSchemaItemStatusNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectsUuidIntelligenceQuestionUuidGetResponsesContentApplicationJsonSchemaItemStatusJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectsUuidIntelligenceQuestionUuidGetResponsesContentApplicationJsonSchemaItemStatusNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.IdentitySummaryVisibilityJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.IdentitySummaryVisibilityNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.IdentitySummaryIdentityTypeJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.IdentitySummaryIdentityTypeNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.IdentityPostRequestBodyContentApplicationJsonSchemaOneOf1IdentityIdentityTypeJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.IdentityPostRequestBodyContentApplicationJsonSchemaOneOf1IdentityIdentityTypeNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.IdentityPostRequestBodyContentApplicationJsonSchemaOneOf1IdentityVisibilityJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.IdentityPostRequestBodyContentApplicationJsonSchemaOneOf1IdentityVisibilityNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.IdentityUuidAttachmentsPostRequestBodyContentMultipartFormDataSchemaModalityJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.IdentityUuidAttachmentsPostRequestBodyContentMultipartFormDataSchemaModalityNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.IdentityIdentityTypeJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.IdentityIdentityTypeNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.IdentityVisibilityJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.IdentityVisibilityNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.IdentityEmbeddingsItemsModalityJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.IdentityEmbeddingsItemsModalityNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.IdentitySearchPostRequestBodyContentApplicationJsonSchemaModalityJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.IdentitySearchPostRequestBodyContentApplicationJsonSchemaModalityNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.IdentitySearchPostResponsesContentApplicationJsonSchemaModalityJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.IdentitySearchPostResponsesContentApplicationJsonSchemaModalityNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.WatermarkApplyPostParametersPreferJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.WatermarkApplyPostParametersPreferNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.WatermarkApplyItemMediaTypeJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.WatermarkApplyItemMediaTypeNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.WatermarkApplyItemOperationTypeJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.WatermarkApplyItemOperationTypeNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.WatermarkApplyItemStatusJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.WatermarkApplyItemStatusNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.WatermarkApplyItemModelVersionJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.WatermarkApplyItemModelVersionNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.WatermarkDetectPostParametersPreferJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.WatermarkDetectPostParametersPreferNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.WatermarkDetectItemMediaTypeJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.WatermarkDetectItemMediaTypeNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.WatermarkDetectItemOperationTypeJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.WatermarkDetectItemOperationTypeNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.WatermarkDetectItemStatusJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.WatermarkDetectItemStatusNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.WatermarkDetectItemModelVersionJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.WatermarkDetectItemModelVersionNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.WatermarkAudioDetectionMetricsOverallStatusJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.WatermarkAudioDetectionMetricsOverallStatusNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.WatermarkAudioDetectionMetricsDetectedModelVersionsItemsJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.WatermarkAudioDetectionMetricsDetectedModelVersionsItemsNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.WatermarkAudioModelResultModelVersionJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.WatermarkAudioModelResultModelVersionNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.WatermarkAudioModelResultStatusJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.WatermarkAudioModelResultStatusNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.WatermarkVisionDetectionMetricsOverallStatusJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.WatermarkVisionDetectionMetricsOverallStatusNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.WatermarkVisionDetectionMetricsDetectedModelVersionsItemsJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.WatermarkVisionDetectionMetricsDetectedModelVersionsItemsNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.WatermarkVisionModelResultModelVersionJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.WatermarkVisionModelResultModelVersionNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.WatermarkVisionModelResultStatusJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.WatermarkVisionModelResultStatusNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.WatermarkVisionDetectionMetricsVerdictJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.WatermarkVisionDetectionMetricsVerdictNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.SignalSubmissionInputModalityJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.SignalSubmissionInputModalityNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.SignalSubmissionVerdictJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.SignalSubmissionVerdictNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.SignalScoreItemInputModalityJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.SignalScoreItemInputModalityNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.SignalScoreItemVerdictJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.SignalScoreItemVerdictNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.SignalCustomCategoryStatusJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.SignalCustomCategoryStatusNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.SynthesizePostRequestBodyContentApplicationJsonSchemaPrecisionJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.SynthesizePostRequestBodyContentApplicationJsonSchemaPrecisionNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.SynthesizePostRequestBodyContentApplicationJsonSchemaOutputFormatJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.SynthesizePostRequestBodyContentApplicationJsonSchemaOutputFormatNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.SynthesizePostRequestBodyContentApplicationJsonSchemaSampleRateJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.SynthesizePostRequestBodyContentApplicationJsonSchemaSampleRateNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.StreamPostRequestBodyContentApplicationJsonSchemaPrecisionJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.StreamPostRequestBodyContentApplicationJsonSchemaPrecisionNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.StreamPostRequestBodyContentApplicationJsonSchemaSampleRateJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.StreamPostRequestBodyContentApplicationJsonSchemaSampleRateNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.SpeechToTextPostResponsesContentApplicationJsonSchemaItemStatusJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.SpeechToTextPostResponsesContentApplicationJsonSchemaItemStatusNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.SpeechToTextUuidGetResponsesContentApplicationJsonSchemaItemStatusJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.SpeechToTextUuidGetResponsesContentApplicationJsonSchemaItemStatusNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.AudioEnhancementsGetResponsesContentApplicationJsonSchemaItemsItemsStatusJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.AudioEnhancementsGetResponsesContentApplicationJsonSchemaItemsItemsStatusNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.AudioEnhancementsGetResponsesContentApplicationJsonSchemaItemsItemsEnhancementEngineJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.AudioEnhancementsGetResponsesContentApplicationJsonSchemaItemsItemsEnhancementEngineNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.AudioEnhancementsPostRequestBodyContentMultipartFormDataSchemaEnhancementEngineJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.AudioEnhancementsPostRequestBodyContentMultipartFormDataSchemaEnhancementEngineNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.AudioEnhancementsPostResponsesContentApplicationJsonSchemaStatusJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.AudioEnhancementsPostResponsesContentApplicationJsonSchemaStatusNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.AudioEnhancementsEnhancementUuidGetResponsesContentApplicationJsonSchemaStatusJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.AudioEnhancementsEnhancementUuidGetResponsesContentApplicationJsonSchemaStatusNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.PronunciationsGetParametersStatusJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.PronunciationsGetParametersStatusNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.CustomPronunciationStatusJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.CustomPronunciationStatusNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DuetPostRequestBodyContentApplicationJsonSchemaScriptItemsSpeakerJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DuetPostRequestBodyContentApplicationJsonSchemaScriptItemsSpeakerNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.BillingPlanPlanTypeJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.BillingPlanPlanTypeNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.BillingPlanBillingIntervalJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.BillingPlanBillingIntervalNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.BillingPlanProductCategoryJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.BillingPlanProductCategoryNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.BillingSubscriptionStatusJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.BillingSubscriptionStatusNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.BillingSubscriptionProductCategoryJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.BillingSubscriptionProductCategoryNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.BillingWalletTransactionTransactionTypeJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.BillingWalletTransactionTransactionTypeNullableJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectIntelligenceResultDescriptionJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.DetectUuidGetResponsesContentApplicationJsonSchemaItemIntelligenceJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.IdentityCreateIdentityRequestJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.WatermarkDetectItemMetricsJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.UpdateBillingSubscriptionProductsRequestUnprocessableEntityErrorJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityErrorJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.ChangeBillingPlanRequestUnprocessableEntityErrorJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.UpdateBillingAutoReloadRequestUnprocessableEntityErrorJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.OneOfJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.OneOfJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.OneOfJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.OneOfJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.OneOfJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.OneOfJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.OneOfJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.OneOfJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.OneOfJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.OneOfJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.OneOfJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.OneOfJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.OneOfJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.OneOfJsonConverter()); + options.Converters.Add(new global::ResembleAI.JsonConverters.UnixTimestampJsonConverter()); + + return options; + } } } \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.JsonSerializerContextTypes.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.JsonSerializerContextTypes.g.cs index aa43290..581bcce 100644 --- a/src/libs/ResembleAI/Generated/ResembleAI.JsonSerializerContextTypes.g.cs +++ b/src/libs/ResembleAI/Generated/ResembleAI.JsonSerializerContextTypes.g.cs @@ -796,767 +796,1115 @@ public sealed partial class JsonSerializerContextTypes /// /// /// - public global::ResembleAI.SecureUploadsCreateSecureUploadResponse200? Type192 { get; set; } + public global::ResembleAI.SignalSubmissionInputModality? Type192 { get; set; } /// /// /// - public global::ResembleAI.SynthesizePostRequestBodyContentApplicationJsonSchemaPrecision? Type193 { get; set; } + public global::ResembleAI.SignalSubmissionVerdict? Type193 { get; set; } /// /// /// - public global::ResembleAI.SynthesizePostRequestBodyContentApplicationJsonSchemaOutputFormat? Type194 { get; set; } + public global::ResembleAI.SignalCategoryScore? Type194 { get; set; } /// /// /// - public global::ResembleAI.SynthesizePostRequestBodyContentApplicationJsonSchemaSampleRate? Type195 { get; set; } + public global::ResembleAI.SignalScoreItemInputModality? Type195 { get; set; } /// /// /// - public global::ResembleAI.AudioTimestamps? Type196 { get; set; } + public global::ResembleAI.SignalScoreItemVerdict? Type196 { get; set; } /// /// /// - public global::System.Collections.Generic.IList>? Type197 { get; set; } + public global::ResembleAI.SignalTopMatch? Type197 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type198 { get; set; } + public global::ResembleAI.SignalScoreItem? Type198 { get; set; } /// /// /// - public global::ResembleAI.TextToSpeechSynthesizeResponse200? Type199 { get; set; } + public global::System.Collections.Generic.IList? Type199 { get; set; } /// /// /// - public byte[]? Type200 { get; set; } + public global::System.Collections.Generic.IList? Type200 { get; set; } /// /// /// - public global::ResembleAI.StreamPostRequestBodyContentApplicationJsonSchemaPrecision? Type201 { get; set; } + public global::ResembleAI.SignalSubmission? Type201 { get; set; } /// /// /// - public global::ResembleAI.StreamPostRequestBodyContentApplicationJsonSchemaSampleRate? Type202 { get; set; } + public global::ResembleAI.SignalSubmissionListResponse? Type202 { get; set; } /// /// /// - public global::ResembleAI.SpeechToTextGetResponsesContentApplicationJsonSchemaItemsItems? Type203 { get; set; } + public global::System.Collections.Generic.IList? Type203 { get; set; } /// /// /// - public global::ResembleAI.SpeechToTextGetResponsesContentApplicationJsonSchemaMeta? Type204 { get; set; } + public global::ResembleAI.SignalError? Type204 { get; set; } /// /// /// - public global::ResembleAI.SpeechToTextListTranscriptsResponse200? Type205 { get; set; } + public long? Type205 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type206 { get; set; } + public global::ResembleAI.SignalScoreResponse? Type206 { get; set; } /// /// /// - public global::ResembleAI.SpeechToTextPostResponsesContentApplicationJsonSchemaItemStatus? Type207 { get; set; } + public global::ResembleAI.SignalSuccessResponse? Type207 { get; set; } /// /// /// - public global::ResembleAI.SpeechToTextPostResponsesContentApplicationJsonSchemaItem? Type208 { get; set; } + public global::ResembleAI.SignalSettings? Type208 { get; set; } /// /// /// - public global::ResembleAI.SpeechToTextCreateTranscriptResponse200? Type209 { get; set; } + public global::ResembleAI.SignalBuiltInCategory? Type209 { get; set; } /// /// /// - public global::ResembleAI.SpeechToTextUuidGetResponsesContentApplicationJsonSchemaItemStatus? Type210 { get; set; } + public global::ResembleAI.SignalCustomCategoryStatus? Type210 { get; set; } /// /// /// - public global::ResembleAI.SpeechToTextUuidGetResponsesContentApplicationJsonSchemaItemWordsItems? Type211 { get; set; } + public global::ResembleAI.SignalCustomCategoryOverlapsItems? Type211 { get; set; } /// /// /// - public global::ResembleAI.SpeechToTextUuidGetResponsesContentApplicationJsonSchemaItem? Type212 { get; set; } + public global::ResembleAI.SignalScenario? Type212 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type213 { get; set; } + public global::ResembleAI.SignalCustomCategory? Type213 { get; set; } /// /// /// - public global::ResembleAI.SpeechToTextGetTranscriptResponse200? Type214 { get; set; } + public global::System.Collections.Generic.IList? Type214 { get; set; } /// /// /// - public global::ResembleAI.SpeechToTextUuidAskPostResponsesContentApplicationJsonSchemaItem? Type215 { get; set; } + public global::System.Collections.Generic.IList? Type215 { get; set; } /// /// /// - public global::ResembleAI.SpeechToTextAskTranscriptQuestionResponse200? Type216 { get; set; } + public global::ResembleAI.SignalCalibrationWarningsItems? Type216 { get; set; } /// /// /// - public global::ResembleAI.SpeechToTextUuidQuestionsGetResponsesContentApplicationJsonSchemaItemsItems? Type217 { get; set; } + public global::ResembleAI.SignalCalibration? Type217 { get; set; } /// /// /// - public global::ResembleAI.SpeechToTextUuidQuestionsGetResponsesContentApplicationJsonSchemaMeta? Type218 { get; set; } + public global::System.Collections.Generic.IList? Type218 { get; set; } /// /// /// - public global::ResembleAI.SpeechToTextListTranscriptQuestionsResponse200? Type219 { get; set; } + public global::ResembleAI.SignalCustomCategoryListResponse? Type219 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type220 { get; set; } + public global::System.Collections.Generic.IList? Type220 { get; set; } /// /// /// - public global::ResembleAI.SpeechToTextUuidQuestionsQuestionUuidGetResponsesContentApplicationJsonSchemaItem? Type221 { get; set; } + public global::System.Collections.Generic.IList? Type221 { get; set; } /// /// /// - public global::ResembleAI.SpeechToTextGetTranscriptQuestionResponse200? Type222 { get; set; } + public global::ResembleAI.SignalCustomCategoryCreateRequest? Type222 { get; set; } /// /// /// - public global::ResembleAI.AudioEnhancementsGetResponsesContentApplicationJsonSchemaItemsItemsStatus? Type223 { get; set; } + public global::ResembleAI.SignalCustomCategoryResponse? Type223 { get; set; } /// /// /// - public global::ResembleAI.AudioEnhancementsGetResponsesContentApplicationJsonSchemaItemsItemsEnhancementEngine? Type224 { get; set; } + public global::ResembleAI.SignalCustomCategoryUpdateRequest? Type224 { get; set; } /// /// /// - public global::ResembleAI.AudioEnhancementsGetResponsesContentApplicationJsonSchemaItemsItems? Type225 { get; set; } + public global::ResembleAI.SignalSettingsUpdateRequest? Type225 { get; set; } /// /// /// - public global::ResembleAI.AudioEnhancementListAudioEnhancementsResponse200? Type226 { get; set; } + public global::ResembleAI.SignalSettingsResponse? Type226 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type227 { get; set; } + public global::ResembleAI.SecureUploadsCreateSecureUploadResponse200? Type227 { get; set; } /// /// /// - public global::ResembleAI.ListAudioEnhancementsRequestBadRequestError? Type228 { get; set; } + public global::ResembleAI.SynthesizePostRequestBodyContentApplicationJsonSchemaPrecision? Type228 { get; set; } /// /// /// - public global::ResembleAI.AudioEnhancementsPostRequestBodyContentMultipartFormDataSchemaEnhancementEngine? Type229 { get; set; } + public global::ResembleAI.SynthesizePostRequestBodyContentApplicationJsonSchemaOutputFormat? Type229 { get; set; } /// /// /// - public global::ResembleAI.AudioEnhancementsPostResponsesContentApplicationJsonSchemaStatus? Type230 { get; set; } + public global::ResembleAI.SynthesizePostRequestBodyContentApplicationJsonSchemaSampleRate? Type230 { get; set; } /// /// /// - public global::ResembleAI.AudioEnhancementCreateAudioEnhancementResponse202? Type231 { get; set; } + public global::ResembleAI.AudioTimestamps? Type231 { get; set; } /// /// /// - public global::ResembleAI.CreateAudioEnhancementRequestBadRequestError? Type232 { get; set; } + public global::System.Collections.Generic.IList>? Type232 { get; set; } /// /// /// - public global::ResembleAI.CreateAudioEnhancementRequestForbiddenError? Type233 { get; set; } + public global::System.Collections.Generic.IList? Type233 { get; set; } /// /// /// - public global::ResembleAI.AudioEnhancementsEnhancementUuidGetResponsesContentApplicationJsonSchemaStatus? Type234 { get; set; } + public global::ResembleAI.TextToSpeechSynthesizeResponse200? Type234 { get; set; } /// /// /// - public global::ResembleAI.AudioEnhancementGetAudioEnhancementResponse200? Type235 { get; set; } + public byte[]? Type235 { get; set; } /// /// /// - public global::ResembleAI.GetAudioEnhancementRequestNotFoundError? Type236 { get; set; } + public global::ResembleAI.StreamPostRequestBodyContentApplicationJsonSchemaPrecision? Type236 { get; set; } /// /// /// - public global::ResembleAI.VoicesGetResponsesContentApplicationJsonSchemaItemsItems? Type237 { get; set; } + public global::ResembleAI.StreamPostRequestBodyContentApplicationJsonSchemaSampleRate? Type237 { get; set; } /// /// /// - public global::ResembleAI.VoicesGetResponsesContentApplicationJsonSchemaItemsItemsComponentStatus? Type238 { get; set; } + public global::ResembleAI.SpeechToTextGetResponsesContentApplicationJsonSchemaItemsItems? Type238 { get; set; } /// /// /// - public global::ResembleAI.VoicesGetResponsesContentApplicationJsonSchemaItemsItemsComponentStatusTextToSpeech? Type239 { get; set; } + public global::ResembleAI.SpeechToTextGetResponsesContentApplicationJsonSchemaMeta? Type239 { get; set; } /// /// /// - public global::ResembleAI.VoicesGetResponsesContentApplicationJsonSchemaItemsItemsComponentStatusFill? Type240 { get; set; } + public global::ResembleAI.SpeechToTextListTranscriptsResponse200? Type240 { get; set; } /// /// /// - public global::ResembleAI.VoicesGetResponsesContentApplicationJsonSchemaItemsItemsComponentStatusVoiceConversion? Type241 { get; set; } + public global::System.Collections.Generic.IList? Type241 { get; set; } /// /// /// - public global::ResembleAI.VoicesGetResponsesContentApplicationJsonSchemaItemsItemsApiSupport? Type242 { get; set; } + public global::ResembleAI.SpeechToTextPostResponsesContentApplicationJsonSchemaItemStatus? Type242 { get; set; } /// /// /// - public global::ResembleAI.VoicesListVoicesResponse200? Type243 { get; set; } + public global::ResembleAI.SpeechToTextPostResponsesContentApplicationJsonSchemaItem? Type243 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type244 { get; set; } + public global::ResembleAI.SpeechToTextCreateTranscriptResponse200? Type244 { get; set; } /// /// /// - public global::ResembleAI.VoicesPostResponsesContentApplicationJsonSchemaItem? Type245 { get; set; } + public global::ResembleAI.SpeechToTextUuidGetResponsesContentApplicationJsonSchemaItemStatus? Type245 { get; set; } /// /// /// - public global::ResembleAI.VoicesPostResponsesContentApplicationJsonSchemaItemComponentStatus? Type246 { get; set; } + public global::ResembleAI.SpeechToTextUuidGetResponsesContentApplicationJsonSchemaItemWordsItems? Type246 { get; set; } /// /// /// - public global::ResembleAI.VoicesPostResponsesContentApplicationJsonSchemaItemComponentStatusTextToSpeech? Type247 { get; set; } + public global::ResembleAI.SpeechToTextUuidGetResponsesContentApplicationJsonSchemaItem? Type247 { get; set; } /// /// /// - public global::ResembleAI.VoicesPostResponsesContentApplicationJsonSchemaItemComponentStatusFill? Type248 { get; set; } + public global::System.Collections.Generic.IList? Type248 { get; set; } /// /// /// - public global::ResembleAI.VoicesPostResponsesContentApplicationJsonSchemaItemComponentStatusVoiceConversion? Type249 { get; set; } + public global::ResembleAI.SpeechToTextGetTranscriptResponse200? Type249 { get; set; } /// /// /// - public global::ResembleAI.VoicesPostResponsesContentApplicationJsonSchemaItemApiSupport? Type250 { get; set; } + public global::ResembleAI.SpeechToTextUuidAskPostResponsesContentApplicationJsonSchemaItem? Type250 { get; set; } /// /// /// - public global::ResembleAI.VoicesCreateVoiceResponse200? Type251 { get; set; } + public global::ResembleAI.SpeechToTextAskTranscriptQuestionResponse200? Type251 { get; set; } /// /// /// - public global::ResembleAI.VoicesVoiceUuidGetResponsesContentApplicationJsonSchemaItem? Type252 { get; set; } + public global::ResembleAI.SpeechToTextUuidQuestionsGetResponsesContentApplicationJsonSchemaItemsItems? Type252 { get; set; } /// /// /// - public global::ResembleAI.VoicesVoiceUuidGetResponsesContentApplicationJsonSchemaItemComponentStatus? Type253 { get; set; } + public global::ResembleAI.SpeechToTextUuidQuestionsGetResponsesContentApplicationJsonSchemaMeta? Type253 { get; set; } /// /// /// - public global::ResembleAI.VoicesVoiceUuidGetResponsesContentApplicationJsonSchemaItemComponentStatusTextToSpeech? Type254 { get; set; } + public global::ResembleAI.SpeechToTextListTranscriptQuestionsResponse200? Type254 { get; set; } /// /// /// - public global::ResembleAI.VoicesVoiceUuidGetResponsesContentApplicationJsonSchemaItemComponentStatusFill? Type255 { get; set; } + public global::System.Collections.Generic.IList? Type255 { get; set; } /// /// /// - public global::ResembleAI.VoicesVoiceUuidGetResponsesContentApplicationJsonSchemaItemComponentStatusVoiceConversion? Type256 { get; set; } + public global::ResembleAI.SpeechToTextUuidQuestionsQuestionUuidGetResponsesContentApplicationJsonSchemaItem? Type256 { get; set; } /// /// /// - public global::ResembleAI.VoicesVoiceUuidGetResponsesContentApplicationJsonSchemaItemApiSupport? Type257 { get; set; } + public global::ResembleAI.SpeechToTextGetTranscriptQuestionResponse200? Type257 { get; set; } /// /// /// - public global::ResembleAI.VoicesGetVoiceResponse200? Type258 { get; set; } + public global::ResembleAI.AudioEnhancementsGetResponsesContentApplicationJsonSchemaItemsItemsStatus? Type258 { get; set; } /// /// /// - public global::ResembleAI.VoicesDeleteVoiceResponse200? Type259 { get; set; } + public global::ResembleAI.AudioEnhancementsGetResponsesContentApplicationJsonSchemaItemsItemsEnhancementEngine? Type259 { get; set; } /// /// /// - public global::ResembleAI.VoicesBuildVoiceResponse200? Type260 { get; set; } + public global::ResembleAI.AudioEnhancementsGetResponsesContentApplicationJsonSchemaItemsItems? Type260 { get; set; } /// /// /// - public global::ResembleAI.VoiceDesignPostResponsesContentApplicationJsonSchemaVoiceCandidatesItems? Type261 { get; set; } + public global::ResembleAI.AudioEnhancementListAudioEnhancementsResponse200? Type261 { get; set; } /// /// /// - public global::ResembleAI.VoiceDesignGenerateVoiceDesignResponse200? Type262 { get; set; } + public global::System.Collections.Generic.IList? Type262 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type263 { get; set; } + public global::ResembleAI.ListAudioEnhancementsRequestBadRequestError? Type263 { get; set; } /// /// /// - public global::ResembleAI.VoiceDesignCreateVoiceFromCandidateResponse200? Type264 { get; set; } + public global::ResembleAI.AudioEnhancementsPostRequestBodyContentMultipartFormDataSchemaEnhancementEngine? Type264 { get; set; } /// /// /// - public global::ResembleAI.VoicesVoiceUuidRecordingsGetResponsesContentApplicationJsonSchemaItemsItems? Type265 { get; set; } + public global::ResembleAI.AudioEnhancementsPostResponsesContentApplicationJsonSchemaStatus? Type265 { get; set; } /// /// /// - public global::ResembleAI.RecordingsListRecordingsResponse200? Type266 { get; set; } + public global::ResembleAI.AudioEnhancementCreateAudioEnhancementResponse202? Type266 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type267 { get; set; } + public global::ResembleAI.CreateAudioEnhancementRequestBadRequestError? Type267 { get; set; } /// /// /// - public global::ResembleAI.VoicesVoiceUuidRecordingsPostResponsesContentApplicationJsonSchemaItem? Type268 { get; set; } + public global::ResembleAI.CreateAudioEnhancementRequestForbiddenError? Type268 { get; set; } /// /// /// - public global::ResembleAI.RecordingsCreateRecordingResponse200? Type269 { get; set; } + public global::ResembleAI.AudioEnhancementsEnhancementUuidGetResponsesContentApplicationJsonSchemaStatus? Type269 { get; set; } /// /// /// - public global::ResembleAI.VoicesVoiceUuidRecordingsRecordingIdGetResponsesContentApplicationJsonSchemaItem? Type270 { get; set; } + public global::ResembleAI.AudioEnhancementGetAudioEnhancementResponse200? Type270 { get; set; } /// /// /// - public global::ResembleAI.RecordingsGetRecordingResponse200? Type271 { get; set; } + public global::ResembleAI.GetAudioEnhancementRequestNotFoundError? Type271 { get; set; } /// /// /// - public global::ResembleAI.RecordingsDeleteRecordingResponse200? Type272 { get; set; } + public global::ResembleAI.VoicesGetResponsesContentApplicationJsonSchemaItemsItems? Type272 { get; set; } /// /// /// - public global::ResembleAI.VoicesVoiceUuidRecordingsRecordingIdPatchResponsesContentApplicationJsonSchemaItem? Type273 { get; set; } + public global::ResembleAI.VoicesGetResponsesContentApplicationJsonSchemaItemsItemsComponentStatus? Type273 { get; set; } /// /// /// - public global::ResembleAI.RecordingsUpdateRecordingResponse200? Type274 { get; set; } + public global::ResembleAI.VoicesGetResponsesContentApplicationJsonSchemaItemsItemsComponentStatusTextToSpeech? Type274 { get; set; } /// /// /// - public global::ResembleAI.TermSubstitutionsGetResponsesContentApplicationJsonSchemaItemsItems? Type275 { get; set; } + public global::ResembleAI.VoicesGetResponsesContentApplicationJsonSchemaItemsItemsComponentStatusFill? Type275 { get; set; } /// /// /// - public global::ResembleAI.TermSubstitutionsListTermSubstitutionsResponse200? Type276 { get; set; } + public global::ResembleAI.VoicesGetResponsesContentApplicationJsonSchemaItemsItemsComponentStatusVoiceConversion? Type276 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type277 { get; set; } + public global::ResembleAI.VoicesGetResponsesContentApplicationJsonSchemaItemsItemsApiSupport? Type277 { get; set; } /// /// /// - public global::ResembleAI.TermSubstitutionsPostResponsesContentApplicationJsonSchemaItem? Type278 { get; set; } + public global::ResembleAI.VoicesListVoicesResponse200? Type278 { get; set; } /// /// /// - public global::ResembleAI.TermSubstitutionsCreateTermSubstitutionResponse200? Type279 { get; set; } + public global::System.Collections.Generic.IList? Type279 { get; set; } /// /// /// - public global::ResembleAI.TermSubstitutionsIdGetResponsesContentApplicationJsonSchemaItem? Type280 { get; set; } + public global::ResembleAI.VoicesPostResponsesContentApplicationJsonSchemaItem? Type280 { get; set; } /// /// /// - public global::ResembleAI.TermSubstitutionsGetTermSubstitutionResponse200? Type281 { get; set; } + public global::ResembleAI.VoicesPostResponsesContentApplicationJsonSchemaItemComponentStatus? Type281 { get; set; } /// /// /// - public global::ResembleAI.TermSubstitutionsDeleteTermSubstitutionResponse200? Type282 { get; set; } + public global::ResembleAI.VoicesPostResponsesContentApplicationJsonSchemaItemComponentStatusTextToSpeech? Type282 { get; set; } /// /// /// - public global::ResembleAI.PronunciationsGetParametersStatus? Type283 { get; set; } + public global::ResembleAI.VoicesPostResponsesContentApplicationJsonSchemaItemComponentStatusFill? Type283 { get; set; } /// /// /// - public global::ResembleAI.CustomPronunciationStatus? Type284 { get; set; } + public global::ResembleAI.VoicesPostResponsesContentApplicationJsonSchemaItemComponentStatusVoiceConversion? Type284 { get; set; } /// /// /// - public global::ResembleAI.CustomPronunciation? Type285 { get; set; } + public global::ResembleAI.VoicesPostResponsesContentApplicationJsonSchemaItemApiSupport? Type285 { get; set; } /// /// /// - public global::ResembleAI.CustomPronunciationsListPronunciationsResponse200? Type286 { get; set; } + public global::ResembleAI.VoicesCreateVoiceResponse200? Type286 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type287 { get; set; } + public global::ResembleAI.VoicesVoiceUuidGetResponsesContentApplicationJsonSchemaItem? Type287 { get; set; } /// /// /// - public global::ResembleAI.CustomPronunciationsCreatePronunciationResponse201? Type288 { get; set; } + public global::ResembleAI.VoicesVoiceUuidGetResponsesContentApplicationJsonSchemaItemComponentStatus? Type288 { get; set; } /// /// /// - public global::ResembleAI.PronunciationsBulkPostResponsesContentApplicationJsonSchemaErrorsItems? Type289 { get; set; } + public global::ResembleAI.VoicesVoiceUuidGetResponsesContentApplicationJsonSchemaItemComponentStatusTextToSpeech? Type289 { get; set; } /// /// /// - public global::ResembleAI.CustomPronunciationsBulkCreatePronunciationsResponse201? Type290 { get; set; } + public global::ResembleAI.VoicesVoiceUuidGetResponsesContentApplicationJsonSchemaItemComponentStatusFill? Type290 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type291 { get; set; } + public global::ResembleAI.VoicesVoiceUuidGetResponsesContentApplicationJsonSchemaItemComponentStatusVoiceConversion? Type291 { get; set; } /// /// /// - public global::ResembleAI.CustomPronunciationsGetPronunciationResponse200? Type292 { get; set; } + public global::ResembleAI.VoicesVoiceUuidGetResponsesContentApplicationJsonSchemaItemApiSupport? Type292 { get; set; } /// /// /// - public global::ResembleAI.CustomPronunciationsDeletePronunciationResponse200? Type293 { get; set; } + public global::ResembleAI.VoicesGetVoiceResponse200? Type293 { get; set; } /// /// /// - public global::ResembleAI.CustomPronunciationsUpdatePronunciationResponse200? Type294 { get; set; } + public global::ResembleAI.VoicesDeleteVoiceResponse200? Type294 { get; set; } /// /// /// - public global::ResembleAI.VoiceSettingsPresetsGetResponsesContentApplicationJsonSchemaItemsItems? Type295 { get; set; } + public global::ResembleAI.VoicesBuildVoiceResponse200? Type295 { get; set; } /// /// /// - public global::ResembleAI.VoiceSettingsPresetsListVoiceSettingsPresetsResponse200? Type296 { get; set; } + public global::ResembleAI.VoiceDesignPostResponsesContentApplicationJsonSchemaVoiceCandidatesItems? Type296 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type297 { get; set; } + public global::ResembleAI.VoiceDesignGenerateVoiceDesignResponse200? Type297 { get; set; } /// /// /// - public global::ResembleAI.VoiceSettingsPresetsPostResponsesContentApplicationJsonSchemaData? Type298 { get; set; } + public global::System.Collections.Generic.IList? Type298 { get; set; } /// /// /// - public global::ResembleAI.VoiceSettingsPresetsCreateVoiceSettingsPresetResponse201? Type299 { get; set; } + public global::ResembleAI.VoiceDesignCreateVoiceFromCandidateResponse200? Type299 { get; set; } /// /// /// - public global::ResembleAI.VoiceSettingsPresetsUuidGetResponsesContentApplicationJsonSchemaData? Type300 { get; set; } + public global::ResembleAI.VoicesVoiceUuidRecordingsGetResponsesContentApplicationJsonSchemaItemsItems? Type300 { get; set; } /// /// /// - public global::ResembleAI.VoiceSettingsPresetsGetVoiceSettingsPresetResponse200? Type301 { get; set; } + public global::ResembleAI.RecordingsListRecordingsResponse200? Type301 { get; set; } /// /// /// - public global::ResembleAI.VoiceSettingsPresetsDeleteVoiceSettingsPresetResponse200? Type302 { get; set; } + public global::System.Collections.Generic.IList? Type302 { get; set; } /// /// /// - public global::ResembleAI.VoiceSettingsPresetsUuidPatchResponsesContentApplicationJsonSchemaData? Type303 { get; set; } + public global::ResembleAI.VoicesVoiceUuidRecordingsPostResponsesContentApplicationJsonSchemaItem? Type303 { get; set; } /// /// /// - public global::ResembleAI.VoiceSettingsPresetsUpdateVoiceSettingsPresetResponse200? Type304 { get; set; } + public global::ResembleAI.RecordingsCreateRecordingResponse200? Type304 { get; set; } /// /// /// - public global::ResembleAI.ProjectsGetResponsesContentApplicationJsonSchemaItemsItems? Type305 { get; set; } + public global::ResembleAI.VoicesVoiceUuidRecordingsRecordingIdGetResponsesContentApplicationJsonSchemaItem? Type305 { get; set; } /// /// /// - public global::ResembleAI.ProjectsListProjectsResponse200? Type306 { get; set; } + public global::ResembleAI.RecordingsGetRecordingResponse200? Type306 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type307 { get; set; } + public global::ResembleAI.RecordingsDeleteRecordingResponse200? Type307 { get; set; } /// /// /// - public global::ResembleAI.ProjectsPostResponsesContentApplicationJsonSchemaItem? Type308 { get; set; } + public global::ResembleAI.VoicesVoiceUuidRecordingsRecordingIdPatchResponsesContentApplicationJsonSchemaItem? Type308 { get; set; } /// /// /// - public global::ResembleAI.ProjectsCreateProjectResponse200? Type309 { get; set; } + public global::ResembleAI.RecordingsUpdateRecordingResponse200? Type309 { get; set; } /// /// /// - public global::ResembleAI.ProjectsProjectUuidGetResponsesContentApplicationJsonSchemaItem? Type310 { get; set; } + public global::ResembleAI.TermSubstitutionsGetResponsesContentApplicationJsonSchemaItemsItems? Type310 { get; set; } /// /// /// - public global::ResembleAI.ProjectsGetProjectResponse200? Type311 { get; set; } + public global::ResembleAI.TermSubstitutionsListTermSubstitutionsResponse200? Type311 { get; set; } /// /// /// - public global::ResembleAI.ProjectsProjectUuidPutResponsesContentApplicationJsonSchemaItem? Type312 { get; set; } + public global::System.Collections.Generic.IList? Type312 { get; set; } /// /// /// - public global::ResembleAI.ProjectsUpdateProjectResponse200? Type313 { get; set; } + public global::ResembleAI.TermSubstitutionsPostResponsesContentApplicationJsonSchemaItem? Type313 { get; set; } /// /// /// - public global::ResembleAI.ProjectsDeleteProjectResponse200? Type314 { get; set; } + public global::ResembleAI.TermSubstitutionsCreateTermSubstitutionResponse200? Type314 { get; set; } /// /// /// - public global::ResembleAI.ProjectsProjectUuidClipsGetResponsesContentApplicationJsonSchemaItemsItems? Type315 { get; set; } + public global::ResembleAI.TermSubstitutionsIdGetResponsesContentApplicationJsonSchemaItem? Type315 { get; set; } /// /// /// - public global::ResembleAI.ClipsListClipsResponse200? Type316 { get; set; } + public global::ResembleAI.TermSubstitutionsGetTermSubstitutionResponse200? Type316 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type317 { get; set; } + public global::ResembleAI.TermSubstitutionsDeleteTermSubstitutionResponse200? Type317 { get; set; } /// /// /// - public global::ResembleAI.ProjectsProjectUuidClipsClipUuidGetResponsesContentApplicationJsonSchemaItem? Type318 { get; set; } + public global::ResembleAI.PronunciationsGetParametersStatus? Type318 { get; set; } /// /// /// - public global::ResembleAI.ClipsGetClipResponse200? Type319 { get; set; } + public global::ResembleAI.CustomPronunciationStatus? Type319 { get; set; } /// /// /// - public global::ResembleAI.ClipsDeleteClipResponse200? Type320 { get; set; } + public global::ResembleAI.CustomPronunciation? Type320 { get; set; } /// /// /// - public global::ResembleAI.ProjectsProjectUuidClipsClipUuidPatchResponsesContentApplicationJsonSchemaItem? Type321 { get; set; } + public global::ResembleAI.CustomPronunciationsListPronunciationsResponse200? Type321 { get; set; } /// /// /// - public global::ResembleAI.ClipsUpdateClipResponse200? Type322 { get; set; } + public global::System.Collections.Generic.IList? Type322 { get; set; } /// /// /// - public global::ResembleAI.DuetVoicesGetResponsesContentApplicationJsonSchemaItemsItems? Type323 { get; set; } + public global::ResembleAI.CustomPronunciationsCreatePronunciationResponse201? Type323 { get; set; } /// /// /// - public global::ResembleAI.DuetsListDuetVoicesResponse200? Type324 { get; set; } + public global::ResembleAI.PronunciationsBulkPostResponsesContentApplicationJsonSchemaErrorsItems? Type324 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type325 { get; set; } + public global::ResembleAI.CustomPronunciationsBulkCreatePronunciationsResponse201? Type325 { get; set; } /// /// /// - public global::ResembleAI.DuetVoicesPostResponsesContentApplicationJsonSchemaItem? Type326 { get; set; } + public global::System.Collections.Generic.IList? Type326 { get; set; } /// /// /// - public global::ResembleAI.DuetsCreateDuetVoiceResponse200? Type327 { get; set; } + public global::ResembleAI.CustomPronunciationsGetPronunciationResponse200? Type327 { get; set; } /// /// /// - public global::ResembleAI.DuetVoicesIdPutResponsesContentApplicationJsonSchemaItem? Type328 { get; set; } + public global::ResembleAI.CustomPronunciationsDeletePronunciationResponse200? Type328 { get; set; } /// /// /// - public global::ResembleAI.DuetsUpdateDuetVoiceResponse200? Type329 { get; set; } + public global::ResembleAI.CustomPronunciationsUpdatePronunciationResponse200? Type329 { get; set; } /// /// /// - public global::ResembleAI.DuetsDeleteDuetVoiceResponse200? Type330 { get; set; } + public global::ResembleAI.VoiceSettingsPresetsGetResponsesContentApplicationJsonSchemaItemsItems? Type330 { get; set; } /// /// /// - public global::ResembleAI.DuetVoicePairsGetResponsesContentApplicationJsonSchemaItemsItems? Type331 { get; set; } + public global::ResembleAI.VoiceSettingsPresetsListVoiceSettingsPresetsResponse200? Type331 { get; set; } /// /// /// - public global::ResembleAI.DuetsListDuetVoicePairsResponse200? Type332 { get; set; } + public global::System.Collections.Generic.IList? Type332 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type333 { get; set; } + public global::ResembleAI.VoiceSettingsPresetsPostResponsesContentApplicationJsonSchemaData? Type333 { get; set; } /// /// /// - public global::ResembleAI.DuetVoicePairsPostResponsesContentApplicationJsonSchemaItem? Type334 { get; set; } + public global::ResembleAI.VoiceSettingsPresetsCreateVoiceSettingsPresetResponse201? Type334 { get; set; } /// /// /// - public global::ResembleAI.DuetsCreateDuetVoicePairResponse200? Type335 { get; set; } + public global::ResembleAI.VoiceSettingsPresetsUuidGetResponsesContentApplicationJsonSchemaData? Type335 { get; set; } /// /// /// - public global::ResembleAI.DuetPostRequestBodyContentApplicationJsonSchemaScriptItemsSpeaker? Type336 { get; set; } + public global::ResembleAI.VoiceSettingsPresetsGetVoiceSettingsPresetResponse200? Type336 { get; set; } /// /// /// - public global::ResembleAI.DuetPostRequestBodyContentApplicationJsonSchemaScriptItems? Type337 { get; set; } + public global::ResembleAI.VoiceSettingsPresetsDeleteVoiceSettingsPresetResponse200? Type337 { get; set; } /// /// /// - public global::ResembleAI.DuetPostResponsesContentApplicationJsonSchemaItem? Type338 { get; set; } + public global::ResembleAI.VoiceSettingsPresetsUuidPatchResponsesContentApplicationJsonSchemaData? Type338 { get; set; } /// /// /// - public global::ResembleAI.DuetsGenerateDuetResponse200? Type339 { get; set; } + public global::ResembleAI.VoiceSettingsPresetsUpdateVoiceSettingsPresetResponse200? Type339 { get; set; } /// /// /// - public global::ResembleAI.AccountGetResponsesContentApplicationJsonSchemaItem? Type340 { get; set; } + public global::ResembleAI.ProjectsGetResponsesContentApplicationJsonSchemaItemsItems? Type340 { get; set; } /// /// /// - public global::ResembleAI.AccountGetAccountResponse200? Type341 { get; set; } + public global::ResembleAI.ProjectsListProjectsResponse200? Type341 { get; set; } /// /// /// - public global::ResembleAI.AccountTeamsGetResponsesContentApplicationJsonSchemaItemsItems? Type342 { get; set; } + public global::System.Collections.Generic.IList? Type342 { get; set; } /// /// /// - public global::ResembleAI.AccountGetTeamsResponse200? Type343 { get; set; } + public global::ResembleAI.ProjectsPostResponsesContentApplicationJsonSchemaItem? Type343 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type344 { get; set; } + public global::ResembleAI.ProjectsCreateProjectResponse200? Type344 { get; set; } /// /// /// - public global::ResembleAI.AccountTeamsTeamUuidGetResponsesContentApplicationJsonSchemaItem? Type345 { get; set; } + public global::ResembleAI.ProjectsProjectUuidGetResponsesContentApplicationJsonSchemaItem? Type345 { get; set; } /// /// /// - public global::ResembleAI.AccountGetTeamResponse200? Type346 { get; set; } + public global::ResembleAI.ProjectsGetProjectResponse200? Type346 { get; set; } /// /// /// - public global::ResembleAI.AccountBillingUsageGetResponsesContentApplicationJsonSchemaItem? Type347 { get; set; } + public global::ResembleAI.ProjectsProjectUuidPutResponsesContentApplicationJsonSchemaItem? Type347 { get; set; } /// /// /// - public global::ResembleAI.AccountGetBillingUsageResponse200? Type348 { get; set; } + public global::ResembleAI.ProjectsUpdateProjectResponse200? Type348 { get; set; } /// /// /// - public global::ResembleAI.CreateDetectionRequest? Type349 { get; set; } + public global::ResembleAI.ProjectsDeleteProjectResponse200? Type349 { get; set; } /// /// /// - public global::ResembleAI.CreateDetectBatchRequest? Type350 { get; set; } + public global::ResembleAI.ProjectsProjectUuidClipsGetResponsesContentApplicationJsonSchemaItemsItems? Type350 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type351 { get; set; } + public global::ResembleAI.ClipsListClipsResponse200? Type351 { get; set; } /// /// /// - public global::ResembleAI.RunDetectAgentInvestigationRequest? Type352 { get; set; } + public global::System.Collections.Generic.IList? Type352 { get; set; } /// /// /// - public global::ResembleAI.RunIntelligenceRequest? Type353 { get; set; } + public global::ResembleAI.ProjectsProjectUuidClipsClipUuidGetResponsesContentApplicationJsonSchemaItem? Type353 { get; set; } /// /// /// - public global::ResembleAI.AskDetectIntelligenceQuestionRequest? Type354 { get; set; } + public global::ResembleAI.ClipsGetClipResponse200? Type354 { get; set; } /// /// /// - public global::ResembleAI.CreateIdentityAttachmentRequest? Type355 { get; set; } + public global::ResembleAI.ClipsDeleteClipResponse200? Type355 { get; set; } /// /// /// - public global::ResembleAI.SearchIdentitiesRequest? Type356 { get; set; } + public global::ResembleAI.ProjectsProjectUuidClipsClipUuidPatchResponsesContentApplicationJsonSchemaItem? Type356 { get; set; } /// /// /// - public global::ResembleAI.CreateSecureUploadRequest? Type357 { get; set; } + public global::ResembleAI.ClipsUpdateClipResponse200? Type357 { get; set; } /// /// /// - public global::ResembleAI.SynthesizeRequest? Type358 { get; set; } + public global::ResembleAI.DuetVoicesGetResponsesContentApplicationJsonSchemaItemsItems? Type358 { get; set; } /// /// /// - public global::ResembleAI.StreamSynthesizeRequest? Type359 { get; set; } + public global::ResembleAI.DuetsListDuetVoicesResponse200? Type359 { get; set; } /// /// /// - public global::ResembleAI.CreateTranscriptRequest? Type360 { get; set; } + public global::System.Collections.Generic.IList? Type360 { get; set; } /// /// /// - public global::ResembleAI.AskTranscriptQuestionRequest? Type361 { get; set; } + public global::ResembleAI.DuetVoicesPostResponsesContentApplicationJsonSchemaItem? Type361 { get; set; } /// /// /// - public global::ResembleAI.CreateAudioEnhancementRequest? Type362 { get; set; } + public global::ResembleAI.DuetsCreateDuetVoiceResponse200? Type362 { get; set; } /// /// /// - public global::ResembleAI.CreateVoiceRequest? Type363 { get; set; } + public global::ResembleAI.DuetVoicesIdPutResponsesContentApplicationJsonSchemaItem? Type363 { get; set; } /// /// /// - public global::ResembleAI.BuildVoiceRequest? Type364 { get; set; } + public global::ResembleAI.DuetsUpdateDuetVoiceResponse200? Type364 { get; set; } /// /// /// - public global::ResembleAI.GenerateVoiceDesignRequest? Type365 { get; set; } + public global::ResembleAI.DuetsDeleteDuetVoiceResponse200? Type365 { get; set; } /// /// /// - public global::ResembleAI.CreateVoiceFromCandidateRequest? Type366 { get; set; } + public global::ResembleAI.DuetVoicePairsGetResponsesContentApplicationJsonSchemaItemsItems? Type366 { get; set; } /// /// /// - public global::ResembleAI.CreateRecordingRequest? Type367 { get; set; } + public global::ResembleAI.DuetsListDuetVoicePairsResponse200? Type367 { get; set; } /// /// /// - public global::ResembleAI.UpdateRecordingRequest? Type368 { get; set; } + public global::System.Collections.Generic.IList? Type368 { get; set; } /// /// /// - public global::ResembleAI.CreateTermSubstitutionRequest? Type369 { get; set; } + public global::ResembleAI.DuetVoicePairsPostResponsesContentApplicationJsonSchemaItem? Type369 { get; set; } /// /// /// - public global::ResembleAI.CreatePronunciationRequest? Type370 { get; set; } + public global::ResembleAI.DuetsCreateDuetVoicePairResponse200? Type370 { get; set; } /// /// /// - public global::ResembleAI.BulkCreatePronunciationsRequest? Type371 { get; set; } + public global::ResembleAI.DuetPostRequestBodyContentApplicationJsonSchemaScriptItemsSpeaker? Type371 { get; set; } /// /// /// - public global::ResembleAI.UpdatePronunciationRequest? Type372 { get; set; } + public global::ResembleAI.DuetPostRequestBodyContentApplicationJsonSchemaScriptItems? Type372 { get; set; } /// /// /// - public global::ResembleAI.CreateVoiceSettingsPresetRequest? Type373 { get; set; } + public global::ResembleAI.DuetPostResponsesContentApplicationJsonSchemaItem? Type373 { get; set; } /// /// /// - public global::ResembleAI.UpdateVoiceSettingsPresetRequest? Type374 { get; set; } + public global::ResembleAI.DuetsGenerateDuetResponse200? Type374 { get; set; } /// /// /// - public global::ResembleAI.CreateProjectRequest? Type375 { get; set; } + public global::ResembleAI.AccountGetResponsesContentApplicationJsonSchemaItem? Type375 { get; set; } /// /// /// - public global::ResembleAI.UpdateProjectRequest? Type376 { get; set; } + public global::ResembleAI.AccountGetAccountResponse200? Type376 { get; set; } /// /// /// - public global::ResembleAI.UpdateClipRequest? Type377 { get; set; } + public global::ResembleAI.AccountTeamsGetResponsesContentApplicationJsonSchemaItemsItems? Type377 { get; set; } /// /// /// - public global::ResembleAI.CreateDuetVoiceRequest? Type378 { get; set; } + public global::ResembleAI.AccountGetTeamsResponse200? Type378 { get; set; } /// /// /// - public global::ResembleAI.UpdateDuetVoiceRequest? Type379 { get; set; } + public global::System.Collections.Generic.IList? Type379 { get; set; } /// /// /// - public global::ResembleAI.CreateDuetVoicePairRequest? Type380 { get; set; } + public global::ResembleAI.AccountTeamsTeamUuidGetResponsesContentApplicationJsonSchemaItem? Type380 { get; set; } /// /// /// - public global::ResembleAI.GenerateDuetRequest? Type381 { get; set; } + public global::ResembleAI.AccountGetTeamResponse200? Type381 { get; set; } /// /// /// - public global::System.Collections.Generic.IList? Type382 { get; set; } + public global::ResembleAI.BillingPlanPlanType? Type382 { get; set; } + /// + /// + /// + public global::ResembleAI.BillingPlanBillingInterval? Type383 { get; set; } + /// + /// + /// + public global::ResembleAI.BillingPlanFamily? Type384 { get; set; } + /// + /// + /// + public global::ResembleAI.BillingPlanProductCategory? Type385 { get; set; } + /// + /// + /// + public global::ResembleAI.BillingProductRateTier? Type386 { get; set; } + /// + /// + /// + public global::ResembleAI.BillingProductFamily? Type387 { get; set; } + /// + /// + /// + public global::ResembleAI.BillingPlanProduct? Type388 { get; set; } + /// + /// + /// + public global::System.Collections.Generic.IList? Type389 { get; set; } + /// + /// + /// + public global::ResembleAI.OneOf? Type390 { get; set; } + /// + /// + /// + public global::ResembleAI.BillingPlan? Type391 { get; set; } + /// + /// + /// + public global::ResembleAI.OneOf? Type392 { get; set; } + /// + /// + /// + public global::System.Collections.Generic.IList? Type393 { get; set; } + /// + /// + /// + public global::ResembleAI.BillingPlansResponse? Type394 { get; set; } + /// + /// + /// + public global::System.Collections.Generic.IList? Type395 { get; set; } + /// + /// + /// + public global::ResembleAI.BillingError? Type396 { get; set; } + /// + /// + /// + public global::ResembleAI.BillingPlanResponse? Type397 { get; set; } + /// + /// + /// + public global::ResembleAI.BillingSubscriptionStatus? Type398 { get; set; } + /// + /// + /// + public global::ResembleAI.BillingSubscriptionProductCategory? Type399 { get; set; } + /// + /// + /// + public global::ResembleAI.BillingSubscriptionProduct? Type400 { get; set; } + /// + /// + /// + public global::ResembleAI.BillingSubscriptionPlanProduct? Type401 { get; set; } + /// + /// + /// + public global::ResembleAI.BillingSubscriptionItem? Type402 { get; set; } + /// + /// + /// + public global::ResembleAI.OneOf? Type403 { get; set; } + /// + /// + /// + public global::ResembleAI.BillingSubscription? Type404 { get; set; } + /// + /// + /// + public global::System.Collections.Generic.IList? Type405 { get; set; } + /// + /// + /// + public global::ResembleAI.BillingSubscriptionResponse? Type406 { get; set; } + /// + /// + /// + public global::ResembleAI.OneOf? Type407 { get; set; } + /// + /// + /// + public global::ResembleAI.BillingForbiddenError? Type408 { get; set; } + /// + /// + /// + public global::ResembleAI.BillingProductQuantityChange? Type409 { get; set; } + /// + /// + /// + public global::ResembleAI.BillingUpdateProductsRequest? Type410 { get; set; } + /// + /// + /// + public global::System.Collections.Generic.IList? Type411 { get; set; } + /// + /// + /// + public global::ResembleAI.BillingPaymentActionRequired? Type412 { get; set; } + /// + /// + /// + public global::ResembleAI.BillingValidationErrors? Type413 { get; set; } + /// + /// + /// + public global::ResembleAI.UpdateBillingSubscriptionProductsRequestUnprocessableEntityError? Type414 { get; set; } + /// + /// + /// + public global::ResembleAI.BillingConfirmPaymentRequest? Type415 { get; set; } + /// + /// + /// + public global::ResembleAI.ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError? Type416 { get; set; } + /// + /// + /// + public global::ResembleAI.BillingChangePlanRequest? Type417 { get; set; } + /// + /// + /// + public global::System.Collections.Generic.Dictionary? Type418 { get; set; } + /// + /// + /// + public global::ResembleAI.ChangeBillingPlanRequestUnprocessableEntityError? Type419 { get; set; } + /// + /// + /// + public global::ResembleAI.BillingWallet? Type420 { get; set; } + /// + /// + /// + public global::ResembleAI.BillingWalletResponse? Type421 { get; set; } + /// + /// + /// + public global::ResembleAI.BillingWalletTransactionTransactionType? Type422 { get; set; } + /// + /// + /// + public global::ResembleAI.BillingWalletTransaction? Type423 { get; set; } + /// + /// + /// + public global::ResembleAI.BillingPagination? Type424 { get; set; } + /// + /// + /// + public global::ResembleAI.BillingTransactionsResponse? Type425 { get; set; } + /// + /// + /// + public global::System.Collections.Generic.IList? Type426 { get; set; } + /// + /// + /// + public global::ResembleAI.BillingAutoReloadSetting? Type427 { get; set; } + /// + /// + /// + public global::ResembleAI.BillingAutoReloadResponse? Type428 { get; set; } + /// + /// + /// + public global::ResembleAI.OneOf? Type429 { get; set; } + /// + /// + /// + public global::ResembleAI.BillingUpdateAutoReloadRequest? Type430 { get; set; } + /// + /// + /// + public global::ResembleAI.BillingWalletUpdateBillingAutoReloadResponse200? Type431 { get; set; } + /// + /// + /// + public global::ResembleAI.UpdateBillingAutoReloadRequestUnprocessableEntityError? Type432 { get; set; } + /// + /// + /// + public global::ResembleAI.AccountBillingUsageGetResponsesContentApplicationJsonSchemaItem? Type433 { get; set; } + /// + /// + /// + public global::ResembleAI.AccountGetBillingUsageResponse200? Type434 { get; set; } + /// + /// + /// + public global::ResembleAI.CreateDetectionRequest? Type435 { get; set; } + /// + /// + /// + public global::ResembleAI.CreateDetectBatchRequest? Type436 { get; set; } + /// + /// + /// + public global::System.Collections.Generic.IList? Type437 { get; set; } + /// + /// + /// + public global::ResembleAI.RunDetectAgentInvestigationRequest? Type438 { get; set; } + /// + /// + /// + public global::ResembleAI.RunIntelligenceRequest? Type439 { get; set; } + /// + /// + /// + public global::ResembleAI.AskDetectIntelligenceQuestionRequest? Type440 { get; set; } + /// + /// + /// + public global::ResembleAI.CreateIdentityAttachmentRequest? Type441 { get; set; } + /// + /// + /// + public global::ResembleAI.SearchIdentitiesRequest? Type442 { get; set; } + /// + /// + /// + public global::ResembleAI.CreateSignalSubmissionRequest? Type443 { get; set; } + /// + /// + /// + public global::ResembleAI.CreateSecureUploadRequest? Type444 { get; set; } + /// + /// + /// + public global::ResembleAI.SynthesizeRequest? Type445 { get; set; } + /// + /// + /// + public global::ResembleAI.StreamSynthesizeRequest? Type446 { get; set; } + /// + /// + /// + public global::ResembleAI.CreateTranscriptRequest? Type447 { get; set; } + /// + /// + /// + public global::ResembleAI.AskTranscriptQuestionRequest? Type448 { get; set; } + /// + /// + /// + public global::ResembleAI.CreateAudioEnhancementRequest? Type449 { get; set; } + /// + /// + /// + public global::ResembleAI.CreateVoiceRequest? Type450 { get; set; } + /// + /// + /// + public global::ResembleAI.BuildVoiceRequest? Type451 { get; set; } + /// + /// + /// + public global::ResembleAI.GenerateVoiceDesignRequest? Type452 { get; set; } + /// + /// + /// + public global::ResembleAI.CreateVoiceFromCandidateRequest? Type453 { get; set; } + /// + /// + /// + public global::ResembleAI.CreateRecordingRequest? Type454 { get; set; } + /// + /// + /// + public global::ResembleAI.UpdateRecordingRequest? Type455 { get; set; } + /// + /// + /// + public global::ResembleAI.CreateTermSubstitutionRequest? Type456 { get; set; } + /// + /// + /// + public global::ResembleAI.CreatePronunciationRequest? Type457 { get; set; } + /// + /// + /// + public global::ResembleAI.BulkCreatePronunciationsRequest? Type458 { get; set; } + /// + /// + /// + public global::ResembleAI.UpdatePronunciationRequest? Type459 { get; set; } + /// + /// + /// + public global::ResembleAI.CreateVoiceSettingsPresetRequest? Type460 { get; set; } + /// + /// + /// + public global::ResembleAI.UpdateVoiceSettingsPresetRequest? Type461 { get; set; } + /// + /// + /// + public global::ResembleAI.CreateProjectRequest? Type462 { get; set; } + /// + /// + /// + public global::ResembleAI.UpdateProjectRequest? Type463 { get; set; } + /// + /// + /// + public global::ResembleAI.UpdateClipRequest? Type464 { get; set; } + /// + /// + /// + public global::ResembleAI.CreateDuetVoiceRequest? Type465 { get; set; } + /// + /// + /// + public global::ResembleAI.UpdateDuetVoiceRequest? Type466 { get; set; } + /// + /// + /// + public global::ResembleAI.CreateDuetVoicePairRequest? Type467 { get; set; } + /// + /// + /// + public global::ResembleAI.GenerateDuetRequest? Type468 { get; set; } + /// + /// + /// + public global::System.Collections.Generic.IList? Type469 { get; set; } /// /// @@ -1645,82 +1993,138 @@ public sealed partial class JsonSerializerContextTypes /// /// /// - public global::System.Collections.Generic.List>? ListType21 { get; set; } + public global::System.Collections.Generic.List? ListType21 { get; set; } + /// + /// + /// + public global::System.Collections.Generic.List? ListType22 { get; set; } + /// + /// + /// + public global::System.Collections.Generic.List? ListType23 { get; set; } + /// + /// + /// + public global::System.Collections.Generic.List? ListType24 { get; set; } + /// + /// + /// + public global::System.Collections.Generic.List? ListType25 { get; set; } + /// + /// + /// + public global::System.Collections.Generic.List? ListType26 { get; set; } + /// + /// + /// + public global::System.Collections.Generic.List? ListType27 { get; set; } + /// + /// + /// + public global::System.Collections.Generic.List? ListType28 { get; set; } + /// + /// + /// + public global::System.Collections.Generic.List>? ListType29 { get; set; } + /// + /// + /// + public global::System.Collections.Generic.List? ListType30 { get; set; } + /// + /// + /// + public global::System.Collections.Generic.List? ListType31 { get; set; } + /// + /// + /// + public global::System.Collections.Generic.List? ListType32 { get; set; } + /// + /// + /// + public global::System.Collections.Generic.List? ListType33 { get; set; } + /// + /// + /// + public global::System.Collections.Generic.List? ListType34 { get; set; } + /// + /// + /// + public global::System.Collections.Generic.List? ListType35 { get; set; } /// /// /// - public global::System.Collections.Generic.List? ListType22 { get; set; } + public global::System.Collections.Generic.List? ListType36 { get; set; } /// /// /// - public global::System.Collections.Generic.List? ListType23 { get; set; } + public global::System.Collections.Generic.List? ListType37 { get; set; } /// /// /// - public global::System.Collections.Generic.List? ListType24 { get; set; } + public global::System.Collections.Generic.List? ListType38 { get; set; } /// /// /// - public global::System.Collections.Generic.List? ListType25 { get; set; } + public global::System.Collections.Generic.List? ListType39 { get; set; } /// /// /// - public global::System.Collections.Generic.List? ListType26 { get; set; } + public global::System.Collections.Generic.List? ListType40 { get; set; } /// /// /// - public global::System.Collections.Generic.List? ListType27 { get; set; } + public global::System.Collections.Generic.List? ListType41 { get; set; } /// /// /// - public global::System.Collections.Generic.List? ListType28 { get; set; } + public global::System.Collections.Generic.List? ListType42 { get; set; } /// /// /// - public global::System.Collections.Generic.List? ListType29 { get; set; } + public global::System.Collections.Generic.List? ListType43 { get; set; } /// /// /// - public global::System.Collections.Generic.List? ListType30 { get; set; } + public global::System.Collections.Generic.List? ListType44 { get; set; } /// /// /// - public global::System.Collections.Generic.List? ListType31 { get; set; } + public global::System.Collections.Generic.List? ListType45 { get; set; } /// /// /// - public global::System.Collections.Generic.List? ListType32 { get; set; } + public global::System.Collections.Generic.List? ListType46 { get; set; } /// /// /// - public global::System.Collections.Generic.List? ListType33 { get; set; } + public global::System.Collections.Generic.List? ListType47 { get; set; } /// /// /// - public global::System.Collections.Generic.List? ListType34 { get; set; } + public global::System.Collections.Generic.List? ListType48 { get; set; } /// /// /// - public global::System.Collections.Generic.List? ListType35 { get; set; } + public global::System.Collections.Generic.List? ListType49 { get; set; } /// /// /// - public global::System.Collections.Generic.List? ListType36 { get; set; } + public global::System.Collections.Generic.List? ListType50 { get; set; } /// /// /// - public global::System.Collections.Generic.List? ListType37 { get; set; } + public global::System.Collections.Generic.List? ListType51 { get; set; } /// /// /// - public global::System.Collections.Generic.List? ListType38 { get; set; } + public global::System.Collections.Generic.List? ListType52 { get; set; } /// /// /// - public global::System.Collections.Generic.List? ListType39 { get; set; } + public global::System.Collections.Generic.List? ListType53 { get; set; } /// /// /// - public global::System.Collections.Generic.List? ListType40 { get; set; } + public global::System.Collections.Generic.List? ListType54 { get; set; } } } \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingAutoReloadResponse.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingAutoReloadResponse.Json.g.cs new file mode 100644 index 0000000..c2e4aad --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingAutoReloadResponse.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class BillingAutoReloadResponse + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.BillingAutoReloadResponse? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.BillingAutoReloadResponse), + jsonSerializerContext) as global::ResembleAI.BillingAutoReloadResponse; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.BillingAutoReloadResponse? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.BillingAutoReloadResponse? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.BillingAutoReloadResponse), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.BillingAutoReloadResponse; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingAutoReloadResponse.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingAutoReloadResponse.g.cs new file mode 100644 index 0000000..1f7d14f --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingAutoReloadResponse.g.cs @@ -0,0 +1,63 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class BillingAutoReloadResponse + { + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("auto_reload")] + [global::System.Text.Json.Serialization.JsonConverter(typeof(global::ResembleAI.JsonConverters.OneOfJsonConverter))] + public global::ResembleAI.OneOf? AutoReload { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("minimum_reload_amount_cents")] + public int? MinimumReloadAmountCents { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("maximum_reload_amount_cents")] + public int? MaximumReloadAmountCents { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public BillingAutoReloadResponse( + global::ResembleAI.OneOf? autoReload, + int? minimumReloadAmountCents, + int? maximumReloadAmountCents) + { + this.AutoReload = autoReload; + this.MinimumReloadAmountCents = minimumReloadAmountCents; + this.MaximumReloadAmountCents = maximumReloadAmountCents; + } + + /// + /// Initializes a new instance of the class. + /// + public BillingAutoReloadResponse() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingAutoReloadSetting.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingAutoReloadSetting.Json.g.cs new file mode 100644 index 0000000..0599f2c --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingAutoReloadSetting.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class BillingAutoReloadSetting + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.BillingAutoReloadSetting? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.BillingAutoReloadSetting), + jsonSerializerContext) as global::ResembleAI.BillingAutoReloadSetting; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.BillingAutoReloadSetting? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.BillingAutoReloadSetting? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.BillingAutoReloadSetting), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.BillingAutoReloadSetting; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingAutoReloadSetting.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingAutoReloadSetting.g.cs new file mode 100644 index 0000000..f5942c8 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingAutoReloadSetting.g.cs @@ -0,0 +1,152 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class BillingAutoReloadSetting + { + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("enabled")] + public bool? Enabled { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("reload_amount_cents")] + public int? ReloadAmountCents { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("reload_amount_dollars")] + public double? ReloadAmountDollars { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("minimum_balance_threshold_cents")] + public int? MinimumBalanceThresholdCents { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("minimum_balance_threshold_dollars")] + public double? MinimumBalanceThresholdDollars { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("maximum_monthly_spend_cents")] + public int? MaximumMonthlySpendCents { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("maximum_monthly_spend_dollars")] + public double? MaximumMonthlySpendDollars { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("current_month_spend_cents")] + public int? CurrentMonthSpendCents { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("current_month_spend_dollars")] + public double? CurrentMonthSpendDollars { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("remaining_monthly_allowance_cents")] + public int? RemainingMonthlyAllowanceCents { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("remaining_monthly_allowance_dollars")] + public double? RemainingMonthlyAllowanceDollars { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("has_payment_method")] + public bool? HasPaymentMethod { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("can_reload")] + public bool? CanReload { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// + /// + /// + /// + /// + /// + /// + /// + /// + /// + /// + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public BillingAutoReloadSetting( + bool? enabled, + int? reloadAmountCents, + double? reloadAmountDollars, + int? minimumBalanceThresholdCents, + double? minimumBalanceThresholdDollars, + int? maximumMonthlySpendCents, + double? maximumMonthlySpendDollars, + int? currentMonthSpendCents, + double? currentMonthSpendDollars, + int? remainingMonthlyAllowanceCents, + double? remainingMonthlyAllowanceDollars, + bool? hasPaymentMethod, + bool? canReload) + { + this.Enabled = enabled; + this.ReloadAmountCents = reloadAmountCents; + this.ReloadAmountDollars = reloadAmountDollars; + this.MinimumBalanceThresholdCents = minimumBalanceThresholdCents; + this.MinimumBalanceThresholdDollars = minimumBalanceThresholdDollars; + this.MaximumMonthlySpendCents = maximumMonthlySpendCents; + this.MaximumMonthlySpendDollars = maximumMonthlySpendDollars; + this.CurrentMonthSpendCents = currentMonthSpendCents; + this.CurrentMonthSpendDollars = currentMonthSpendDollars; + this.RemainingMonthlyAllowanceCents = remainingMonthlyAllowanceCents; + this.RemainingMonthlyAllowanceDollars = remainingMonthlyAllowanceDollars; + this.HasPaymentMethod = hasPaymentMethod; + this.CanReload = canReload; + } + + /// + /// Initializes a new instance of the class. + /// + public BillingAutoReloadSetting() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingChangePlanRequest.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingChangePlanRequest.Json.g.cs new file mode 100644 index 0000000..6443b77 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingChangePlanRequest.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class BillingChangePlanRequest + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.BillingChangePlanRequest? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.BillingChangePlanRequest), + jsonSerializerContext) as global::ResembleAI.BillingChangePlanRequest; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.BillingChangePlanRequest? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.BillingChangePlanRequest? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.BillingChangePlanRequest), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.BillingChangePlanRequest; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingChangePlanRequest.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingChangePlanRequest.g.cs new file mode 100644 index 0000000..a9b9d0a --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingChangePlanRequest.g.cs @@ -0,0 +1,56 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class BillingChangePlanRequest + { + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("plan_slug")] + [global::System.Text.Json.Serialization.JsonRequired] + public required string PlanSlug { get; set; } + + /// + /// Optional map of product slugs to desired quantities on the new plan. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("product_quantities")] + public global::System.Collections.Generic.Dictionary? ProductQuantities { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// + /// Optional map of product slugs to desired quantities on the new plan. + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public BillingChangePlanRequest( + string planSlug, + global::System.Collections.Generic.Dictionary? productQuantities) + { + this.PlanSlug = planSlug ?? throw new global::System.ArgumentNullException(nameof(planSlug)); + this.ProductQuantities = productQuantities; + } + + /// + /// Initializes a new instance of the class. + /// + public BillingChangePlanRequest() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingChangePlanRequestProductQuantities.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingChangePlanRequestProductQuantities.Json.g.cs new file mode 100644 index 0000000..502c748 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingChangePlanRequestProductQuantities.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class BillingChangePlanRequestProductQuantities + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.BillingChangePlanRequestProductQuantities? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.BillingChangePlanRequestProductQuantities), + jsonSerializerContext) as global::ResembleAI.BillingChangePlanRequestProductQuantities; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.BillingChangePlanRequestProductQuantities? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.BillingChangePlanRequestProductQuantities? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.BillingChangePlanRequestProductQuantities), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.BillingChangePlanRequestProductQuantities; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingChangePlanRequestProductQuantities.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingChangePlanRequestProductQuantities.g.cs new file mode 100644 index 0000000..cfd235d --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingChangePlanRequestProductQuantities.g.cs @@ -0,0 +1,19 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// Optional map of product slugs to desired quantities on the new plan. + /// + public sealed partial class BillingChangePlanRequestProductQuantities + { + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingConfirmPaymentRequest.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingConfirmPaymentRequest.Json.g.cs new file mode 100644 index 0000000..3bdeab4 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingConfirmPaymentRequest.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class BillingConfirmPaymentRequest + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.BillingConfirmPaymentRequest? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.BillingConfirmPaymentRequest), + jsonSerializerContext) as global::ResembleAI.BillingConfirmPaymentRequest; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.BillingConfirmPaymentRequest? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.BillingConfirmPaymentRequest? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.BillingConfirmPaymentRequest), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.BillingConfirmPaymentRequest; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingConfirmPaymentRequest.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingConfirmPaymentRequest.g.cs new file mode 100644 index 0000000..abb1a7c --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingConfirmPaymentRequest.g.cs @@ -0,0 +1,47 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class BillingConfirmPaymentRequest + { + /// + /// Payment intent identifier completed by the customer. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("payment_intent_id")] + [global::System.Text.Json.Serialization.JsonRequired] + public required string PaymentIntentId { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// Payment intent identifier completed by the customer. + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public BillingConfirmPaymentRequest( + string paymentIntentId) + { + this.PaymentIntentId = paymentIntentId ?? throw new global::System.ArgumentNullException(nameof(paymentIntentId)); + } + + /// + /// Initializes a new instance of the class. + /// + public BillingConfirmPaymentRequest() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingError.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingError.Json.g.cs new file mode 100644 index 0000000..b287afd --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingError.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class BillingError + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.BillingError? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.BillingError), + jsonSerializerContext) as global::ResembleAI.BillingError; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.BillingError? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.BillingError? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.BillingError), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.BillingError; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingError.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingError.g.cs new file mode 100644 index 0000000..40c62ab --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingError.g.cs @@ -0,0 +1,47 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class BillingError + { + /// + /// Human-readable error message. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("error")] + [global::System.Text.Json.Serialization.JsonRequired] + public required string Error { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// Human-readable error message. + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public BillingError( + string error) + { + this.Error = error ?? throw new global::System.ArgumentNullException(nameof(error)); + } + + /// + /// Initializes a new instance of the class. + /// + public BillingError() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingForbiddenError.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingForbiddenError.Json.g.cs new file mode 100644 index 0000000..ed239f0 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingForbiddenError.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class BillingForbiddenError + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.BillingForbiddenError? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.BillingForbiddenError), + jsonSerializerContext) as global::ResembleAI.BillingForbiddenError; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.BillingForbiddenError? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.BillingForbiddenError? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.BillingForbiddenError), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.BillingForbiddenError; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingForbiddenError.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingForbiddenError.g.cs new file mode 100644 index 0000000..b2aae72 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingForbiddenError.g.cs @@ -0,0 +1,58 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class BillingForbiddenError + { + /// + /// Human-readable authorization or eligibility error. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("error")] + [global::System.Text.Json.Serialization.JsonRequired] + public required string Error { get; set; } + + /// + /// Machine-readable error code when one is available. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("error_code")] + public string? ErrorCode { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// Human-readable authorization or eligibility error. + /// + /// + /// Machine-readable error code when one is available. + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public BillingForbiddenError( + string error, + string? errorCode) + { + this.Error = error ?? throw new global::System.ArgumentNullException(nameof(error)); + this.ErrorCode = errorCode; + } + + /// + /// Initializes a new instance of the class. + /// + public BillingForbiddenError() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPagination.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPagination.Json.g.cs new file mode 100644 index 0000000..2835636 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPagination.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class BillingPagination + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.BillingPagination? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.BillingPagination), + jsonSerializerContext) as global::ResembleAI.BillingPagination; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.BillingPagination? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.BillingPagination? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.BillingPagination), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.BillingPagination; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPagination.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPagination.g.cs new file mode 100644 index 0000000..6cc760c --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPagination.g.cs @@ -0,0 +1,71 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class BillingPagination + { + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("page")] + public int? Page { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("per_page")] + public int? PerPage { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("total_count")] + public int? TotalCount { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("total_pages")] + public int? TotalPages { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// + /// + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public BillingPagination( + int? page, + int? perPage, + int? totalCount, + int? totalPages) + { + this.Page = page; + this.PerPage = perPage; + this.TotalCount = totalCount; + this.TotalPages = totalPages; + } + + /// + /// Initializes a new instance of the class. + /// + public BillingPagination() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPaymentActionRequired.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPaymentActionRequired.Json.g.cs new file mode 100644 index 0000000..3a94032 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPaymentActionRequired.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class BillingPaymentActionRequired + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.BillingPaymentActionRequired? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.BillingPaymentActionRequired), + jsonSerializerContext) as global::ResembleAI.BillingPaymentActionRequired; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.BillingPaymentActionRequired? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.BillingPaymentActionRequired? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.BillingPaymentActionRequired), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.BillingPaymentActionRequired; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPaymentActionRequired.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPaymentActionRequired.g.cs new file mode 100644 index 0000000..a1cbcc9 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPaymentActionRequired.g.cs @@ -0,0 +1,57 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class BillingPaymentActionRequired + { + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("requires_action")] + [global::System.Text.Json.Serialization.JsonRequired] + public required bool RequiresAction { get; set; } + + /// + /// Client secret used to complete the required payment authentication. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("client_secret")] + [global::System.Text.Json.Serialization.JsonRequired] + public required string ClientSecret { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// + /// Client secret used to complete the required payment authentication. + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public BillingPaymentActionRequired( + bool requiresAction, + string clientSecret) + { + this.RequiresAction = requiresAction; + this.ClientSecret = clientSecret ?? throw new global::System.ArgumentNullException(nameof(clientSecret)); + } + + /// + /// Initializes a new instance of the class. + /// + public BillingPaymentActionRequired() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlan.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlan.Json.g.cs new file mode 100644 index 0000000..c9ce68a --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlan.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class BillingPlan + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.BillingPlan? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.BillingPlan), + jsonSerializerContext) as global::ResembleAI.BillingPlan; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.BillingPlan? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.BillingPlan? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.BillingPlan), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.BillingPlan; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlan.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlan.g.cs new file mode 100644 index 0000000..ae90643 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlan.g.cs @@ -0,0 +1,184 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class BillingPlan + { + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("id")] + public long? Id { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("name")] + public string? Name { get; set; } + + /// + /// Stable plan identifier used when creating or changing a subscription. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("slug")] + public string? Slug { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("plan_type")] + [global::System.Text.Json.Serialization.JsonConverter(typeof(global::ResembleAI.JsonConverters.BillingPlanPlanTypeJsonConverter))] + public global::ResembleAI.BillingPlanPlanType? PlanType { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("base_fee_cents")] + public int? BaseFeeCents { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("base_fee_dollars")] + public double? BaseFeeDollars { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("total_base_cost_cents")] + public int? TotalBaseCostCents { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("total_base_cost_dollars")] + public double? TotalBaseCostDollars { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("included_dollar_balance_cents")] + public int? IncludedDollarBalanceCents { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("included_dollar_balance_dollars")] + public double? IncludedDollarBalanceDollars { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("billing_interval")] + [global::System.Text.Json.Serialization.JsonConverter(typeof(global::ResembleAI.JsonConverters.BillingPlanBillingIntervalJsonConverter))] + public global::ResembleAI.BillingPlanBillingInterval? BillingInterval { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("plan_family")] + [global::System.Text.Json.Serialization.JsonConverter(typeof(global::ResembleAI.JsonConverters.OneOfJsonConverter))] + public global::ResembleAI.OneOf? PlanFamily { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("active")] + public bool? Active { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("products")] + public global::System.Collections.Generic.IList? Products { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("created_at")] + public global::System.DateTime? CreatedAt { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("updated_at")] + public global::System.DateTime? UpdatedAt { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// + /// + /// Stable plan identifier used when creating or changing a subscription. + /// + /// + /// + /// + /// + /// + /// + /// + /// + /// + /// + /// + /// + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public BillingPlan( + long? id, + string? name, + string? slug, + global::ResembleAI.BillingPlanPlanType? planType, + int? baseFeeCents, + double? baseFeeDollars, + int? totalBaseCostCents, + double? totalBaseCostDollars, + int? includedDollarBalanceCents, + double? includedDollarBalanceDollars, + global::ResembleAI.BillingPlanBillingInterval? billingInterval, + global::ResembleAI.OneOf? planFamily, + bool? active, + global::System.Collections.Generic.IList? products, + global::System.DateTime? createdAt, + global::System.DateTime? updatedAt) + { + this.Id = id; + this.Name = name; + this.Slug = slug; + this.PlanType = planType; + this.BaseFeeCents = baseFeeCents; + this.BaseFeeDollars = baseFeeDollars; + this.TotalBaseCostCents = totalBaseCostCents; + this.TotalBaseCostDollars = totalBaseCostDollars; + this.IncludedDollarBalanceCents = includedDollarBalanceCents; + this.IncludedDollarBalanceDollars = includedDollarBalanceDollars; + this.BillingInterval = billingInterval; + this.PlanFamily = planFamily; + this.Active = active; + this.Products = products; + this.CreatedAt = createdAt; + this.UpdatedAt = updatedAt; + } + + /// + /// Initializes a new instance of the class. + /// + public BillingPlan() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlanBillingInterval.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlanBillingInterval.g.cs new file mode 100644 index 0000000..d5dfabb --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlanBillingInterval.g.cs @@ -0,0 +1,57 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public enum BillingPlanBillingInterval + { + /// + /// + /// + Annual, + /// + /// + /// + Monthly, + /// + /// + /// + Quarterly, + } + + /// + /// Enum extensions to do fast conversions without the reflection. + /// + public static class BillingPlanBillingIntervalExtensions + { + /// + /// Converts an enum to a string. + /// + public static string ToValueString(this BillingPlanBillingInterval value) + { + return value switch + { + BillingPlanBillingInterval.Annual => "annual", + BillingPlanBillingInterval.Monthly => "monthly", + BillingPlanBillingInterval.Quarterly => "quarterly", + _ => throw new global::System.ArgumentOutOfRangeException(nameof(value), value, null), + }; + } + /// + /// Converts an string to a enum. + /// + public static BillingPlanBillingInterval? ToEnum(string value) + { + return value switch + { + "annual" => BillingPlanBillingInterval.Annual, + "monthly" => BillingPlanBillingInterval.Monthly, + "quarterly" => BillingPlanBillingInterval.Quarterly, + _ => null, + }; + } + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlanFamily.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlanFamily.Json.g.cs new file mode 100644 index 0000000..39b6b4c --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlanFamily.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class BillingPlanFamily + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.BillingPlanFamily? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.BillingPlanFamily), + jsonSerializerContext) as global::ResembleAI.BillingPlanFamily; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.BillingPlanFamily? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.BillingPlanFamily? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.BillingPlanFamily), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.BillingPlanFamily; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlanFamily.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlanFamily.g.cs new file mode 100644 index 0000000..cb97abd --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlanFamily.g.cs @@ -0,0 +1,71 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class BillingPlanFamily + { + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("key")] + public string? Key { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("name")] + public string? Name { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("description")] + public string? Description { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("position")] + public int? Position { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// + /// + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public BillingPlanFamily( + string? key, + string? name, + string? description, + int? position) + { + this.Key = key; + this.Name = name; + this.Description = description; + this.Position = position; + } + + /// + /// Initializes a new instance of the class. + /// + public BillingPlanFamily() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlanPlanType.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlanPlanType.g.cs new file mode 100644 index 0000000..62439b6 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlanPlanType.g.cs @@ -0,0 +1,57 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public enum BillingPlanPlanType + { + /// + /// + /// + Custom, + /// + /// + /// + Default, + /// + /// + /// + SelfServe, + } + + /// + /// Enum extensions to do fast conversions without the reflection. + /// + public static class BillingPlanPlanTypeExtensions + { + /// + /// Converts an enum to a string. + /// + public static string ToValueString(this BillingPlanPlanType value) + { + return value switch + { + BillingPlanPlanType.Custom => "custom", + BillingPlanPlanType.Default => "default", + BillingPlanPlanType.SelfServe => "self_serve", + _ => throw new global::System.ArgumentOutOfRangeException(nameof(value), value, null), + }; + } + /// + /// Converts an string to a enum. + /// + public static BillingPlanPlanType? ToEnum(string value) + { + return value switch + { + "custom" => BillingPlanPlanType.Custom, + "default" => BillingPlanPlanType.Default, + "self_serve" => BillingPlanPlanType.SelfServe, + _ => null, + }; + } + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlanProduct.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlanProduct.Json.g.cs new file mode 100644 index 0000000..110ae39 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlanProduct.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class BillingPlanProduct + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.BillingPlanProduct? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.BillingPlanProduct), + jsonSerializerContext) as global::ResembleAI.BillingPlanProduct; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.BillingPlanProduct? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.BillingPlanProduct? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.BillingPlanProduct), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.BillingPlanProduct; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlanProduct.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlanProduct.g.cs new file mode 100644 index 0000000..2202476 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlanProduct.g.cs @@ -0,0 +1,191 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// A product and its pricing and quantity rules on a plan. + /// + public sealed partial class BillingPlanProduct + { + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("id")] + public long? Id { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("name")] + public string? Name { get; set; } + + /// + /// Stable product identifier used in product_quantities and changes requests. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("slug")] + public string? Slug { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("description")] + public string? Description { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("unit_type")] + public string? UnitType { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("category")] + [global::System.Text.Json.Serialization.JsonConverter(typeof(global::ResembleAI.JsonConverters.BillingPlanProductCategoryJsonConverter))] + public global::ResembleAI.BillingPlanProductCategory? Category { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("rate_per_unit_cents")] + public int? RatePerUnitCents { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("rate_per_unit_dollars")] + public double? RatePerUnitDollars { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("has_tiers")] + public bool? HasTiers { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("tiers")] + public global::System.Collections.Generic.IList? Tiers { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("included_quantity")] + public double? IncludedQuantity { get; set; } + + /// + /// Whether the plan permits the product quantity to be changed. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("allow_additional_usage")] + public bool? AllowAdditionalUsage { get; set; } + + /// + /// Minimum allowed quantity for this product on the plan. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("min_usage_per_period")] + public double? MinUsagePerPeriod { get; set; } + + /// + /// Maximum allowed quantity for this product on the plan. Null means no plan-specific maximum. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("max_usage_per_period")] + public double? MaxUsagePerPeriod { get; set; } + + /// + /// Whether the product is displayed in Resemble billing interfaces. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("ui_visible")] + public bool? UiVisible { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("product_family")] + [global::System.Text.Json.Serialization.JsonConverter(typeof(global::ResembleAI.JsonConverters.OneOfJsonConverter))] + public global::ResembleAI.OneOf? ProductFamily { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// + /// + /// Stable product identifier used in product_quantities and changes requests. + /// + /// + /// + /// + /// + /// + /// + /// + /// + /// + /// Whether the plan permits the product quantity to be changed. + /// + /// + /// Minimum allowed quantity for this product on the plan. + /// + /// + /// Maximum allowed quantity for this product on the plan. Null means no plan-specific maximum. + /// + /// + /// Whether the product is displayed in Resemble billing interfaces. + /// + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public BillingPlanProduct( + long? id, + string? name, + string? slug, + string? description, + string? unitType, + global::ResembleAI.BillingPlanProductCategory? category, + int? ratePerUnitCents, + double? ratePerUnitDollars, + bool? hasTiers, + global::System.Collections.Generic.IList? tiers, + double? includedQuantity, + bool? allowAdditionalUsage, + double? minUsagePerPeriod, + double? maxUsagePerPeriod, + bool? uiVisible, + global::ResembleAI.OneOf? productFamily) + { + this.Id = id; + this.Name = name; + this.Slug = slug; + this.Description = description; + this.UnitType = unitType; + this.Category = category; + this.RatePerUnitCents = ratePerUnitCents; + this.RatePerUnitDollars = ratePerUnitDollars; + this.HasTiers = hasTiers; + this.Tiers = tiers; + this.IncludedQuantity = includedQuantity; + this.AllowAdditionalUsage = allowAdditionalUsage; + this.MinUsagePerPeriod = minUsagePerPeriod; + this.MaxUsagePerPeriod = maxUsagePerPeriod; + this.UiVisible = uiVisible; + this.ProductFamily = productFamily; + } + + /// + /// Initializes a new instance of the class. + /// + public BillingPlanProduct() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlanProductCategory.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlanProductCategory.g.cs new file mode 100644 index 0000000..9b81818 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlanProductCategory.g.cs @@ -0,0 +1,63 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public enum BillingPlanProductCategory + { + /// + /// + /// + BaseFee, + /// + /// + /// + IncludedCredits, + /// + /// + /// + Metered, + /// + /// + /// + Subscription, + } + + /// + /// Enum extensions to do fast conversions without the reflection. + /// + public static class BillingPlanProductCategoryExtensions + { + /// + /// Converts an enum to a string. + /// + public static string ToValueString(this BillingPlanProductCategory value) + { + return value switch + { + BillingPlanProductCategory.BaseFee => "base_fee", + BillingPlanProductCategory.IncludedCredits => "included_credits", + BillingPlanProductCategory.Metered => "metered", + BillingPlanProductCategory.Subscription => "subscription", + _ => throw new global::System.ArgumentOutOfRangeException(nameof(value), value, null), + }; + } + /// + /// Converts an string to a enum. + /// + public static BillingPlanProductCategory? ToEnum(string value) + { + return value switch + { + "base_fee" => BillingPlanProductCategory.BaseFee, + "included_credits" => BillingPlanProductCategory.IncludedCredits, + "metered" => BillingPlanProductCategory.Metered, + "subscription" => BillingPlanProductCategory.Subscription, + _ => null, + }; + } + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlanResponse.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlanResponse.Json.g.cs new file mode 100644 index 0000000..d03e060 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlanResponse.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class BillingPlanResponse + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.BillingPlanResponse? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.BillingPlanResponse), + jsonSerializerContext) as global::ResembleAI.BillingPlanResponse; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.BillingPlanResponse? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.BillingPlanResponse? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.BillingPlanResponse), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.BillingPlanResponse; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlanResponse.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlanResponse.g.cs new file mode 100644 index 0000000..fd8f5c4 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlanResponse.g.cs @@ -0,0 +1,45 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class BillingPlanResponse + { + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("plan")] + [global::System.Text.Json.Serialization.JsonRequired] + public required global::ResembleAI.BillingPlan Plan { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public BillingPlanResponse( + global::ResembleAI.BillingPlan plan) + { + this.Plan = plan ?? throw new global::System.ArgumentNullException(nameof(plan)); + } + + /// + /// Initializes a new instance of the class. + /// + public BillingPlanResponse() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlansResponse.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlansResponse.Json.g.cs new file mode 100644 index 0000000..83dad30 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlansResponse.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class BillingPlansResponse + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.BillingPlansResponse? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.BillingPlansResponse), + jsonSerializerContext) as global::ResembleAI.BillingPlansResponse; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.BillingPlansResponse? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.BillingPlansResponse? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.BillingPlansResponse), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.BillingPlansResponse; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlansResponse.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlansResponse.g.cs new file mode 100644 index 0000000..9a1c489 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingPlansResponse.g.cs @@ -0,0 +1,45 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class BillingPlansResponse + { + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("plans")] + [global::System.Text.Json.Serialization.JsonRequired] + public required global::System.Collections.Generic.IList Plans { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public BillingPlansResponse( + global::System.Collections.Generic.IList plans) + { + this.Plans = plans ?? throw new global::System.ArgumentNullException(nameof(plans)); + } + + /// + /// Initializes a new instance of the class. + /// + public BillingPlansResponse() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingProductFamily.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingProductFamily.Json.g.cs new file mode 100644 index 0000000..fd231d5 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingProductFamily.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class BillingProductFamily + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.BillingProductFamily? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.BillingProductFamily), + jsonSerializerContext) as global::ResembleAI.BillingProductFamily; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.BillingProductFamily? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.BillingProductFamily? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.BillingProductFamily), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.BillingProductFamily; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingProductFamily.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingProductFamily.g.cs new file mode 100644 index 0000000..8879e2d --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingProductFamily.g.cs @@ -0,0 +1,71 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class BillingProductFamily + { + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("key")] + public string? Key { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("name")] + public string? Name { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("description")] + public string? Description { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("position")] + public int? Position { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// + /// + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public BillingProductFamily( + string? key, + string? name, + string? description, + int? position) + { + this.Key = key; + this.Name = name; + this.Description = description; + this.Position = position; + } + + /// + /// Initializes a new instance of the class. + /// + public BillingProductFamily() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingProductQuantityChange.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingProductQuantityChange.Json.g.cs new file mode 100644 index 0000000..6e6d035 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingProductQuantityChange.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class BillingProductQuantityChange + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.BillingProductQuantityChange? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.BillingProductQuantityChange), + jsonSerializerContext) as global::ResembleAI.BillingProductQuantityChange; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.BillingProductQuantityChange? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.BillingProductQuantityChange? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.BillingProductQuantityChange), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.BillingProductQuantityChange; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingProductQuantityChange.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingProductQuantityChange.g.cs new file mode 100644 index 0000000..5e3c85a --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingProductQuantityChange.g.cs @@ -0,0 +1,59 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class BillingProductQuantityChange + { + /// + /// Product slug returned by the subscription response. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("product_slug")] + [global::System.Text.Json.Serialization.JsonRequired] + public required string ProductSlug { get; set; } + + /// + /// Desired absolute total, not an increment or decrement. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("new_quantity")] + [global::System.Text.Json.Serialization.JsonRequired] + public required double NewQuantity { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// Product slug returned by the subscription response. + /// + /// + /// Desired absolute total, not an increment or decrement. + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public BillingProductQuantityChange( + string productSlug, + double newQuantity) + { + this.ProductSlug = productSlug ?? throw new global::System.ArgumentNullException(nameof(productSlug)); + this.NewQuantity = newQuantity; + } + + /// + /// Initializes a new instance of the class. + /// + public BillingProductQuantityChange() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingProductRateTier.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingProductRateTier.Json.g.cs new file mode 100644 index 0000000..5f0f264 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingProductRateTier.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class BillingProductRateTier + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.BillingProductRateTier? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.BillingProductRateTier), + jsonSerializerContext) as global::ResembleAI.BillingProductRateTier; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.BillingProductRateTier? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.BillingProductRateTier? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.BillingProductRateTier), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.BillingProductRateTier; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingProductRateTier.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingProductRateTier.g.cs new file mode 100644 index 0000000..fb1cfe2 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingProductRateTier.g.cs @@ -0,0 +1,80 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class BillingProductRateTier + { + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("tier_order")] + public int? TierOrder { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("min_quantity")] + public double? MinQuantity { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("max_quantity")] + public double? MaxQuantity { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("rate_per_unit_cents")] + public int? RatePerUnitCents { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("rate_per_unit_dollars")] + public double? RatePerUnitDollars { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// + /// + /// + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public BillingProductRateTier( + int? tierOrder, + double? minQuantity, + double? maxQuantity, + int? ratePerUnitCents, + double? ratePerUnitDollars) + { + this.TierOrder = tierOrder; + this.MinQuantity = minQuantity; + this.MaxQuantity = maxQuantity; + this.RatePerUnitCents = ratePerUnitCents; + this.RatePerUnitDollars = ratePerUnitDollars; + } + + /// + /// Initializes a new instance of the class. + /// + public BillingProductRateTier() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscription.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscription.Json.g.cs new file mode 100644 index 0000000..2512fa5 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscription.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class BillingSubscription + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.BillingSubscription? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.BillingSubscription), + jsonSerializerContext) as global::ResembleAI.BillingSubscription; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.BillingSubscription? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.BillingSubscription? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.BillingSubscription), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.BillingSubscription; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscription.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscription.g.cs new file mode 100644 index 0000000..b7df492 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscription.g.cs @@ -0,0 +1,153 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class BillingSubscription + { + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("id")] + public long? Id { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("plan")] + public global::ResembleAI.BillingPlan? Plan { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("status")] + [global::System.Text.Json.Serialization.JsonConverter(typeof(global::ResembleAI.JsonConverters.BillingSubscriptionStatusJsonConverter))] + public global::ResembleAI.BillingSubscriptionStatus? Status { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("current_period_start")] + public global::System.DateTime? CurrentPeriodStart { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("current_period_end")] + public global::System.DateTime? CurrentPeriodEnd { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("cancel_at_period_end")] + public bool? CancelAtPeriodEnd { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("cancel_at")] + public global::System.DateTime? CancelAt { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("activated_at")] + public global::System.DateTime? ActivatedAt { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("invoice_due_date")] + public global::System.DateTime? InvoiceDueDate { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("delinquent_at")] + public global::System.DateTime? DelinquentAt { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("subscription_items")] + public global::System.Collections.Generic.IList? SubscriptionItems { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("created_at")] + public global::System.DateTime? CreatedAt { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("updated_at")] + public global::System.DateTime? UpdatedAt { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// + /// + /// + /// + /// + /// + /// + /// + /// + /// + /// + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public BillingSubscription( + long? id, + global::ResembleAI.BillingPlan? plan, + global::ResembleAI.BillingSubscriptionStatus? status, + global::System.DateTime? currentPeriodStart, + global::System.DateTime? currentPeriodEnd, + bool? cancelAtPeriodEnd, + global::System.DateTime? cancelAt, + global::System.DateTime? activatedAt, + global::System.DateTime? invoiceDueDate, + global::System.DateTime? delinquentAt, + global::System.Collections.Generic.IList? subscriptionItems, + global::System.DateTime? createdAt, + global::System.DateTime? updatedAt) + { + this.Id = id; + this.Plan = plan; + this.Status = status; + this.CurrentPeriodStart = currentPeriodStart; + this.CurrentPeriodEnd = currentPeriodEnd; + this.CancelAtPeriodEnd = cancelAtPeriodEnd; + this.CancelAt = cancelAt; + this.ActivatedAt = activatedAt; + this.InvoiceDueDate = invoiceDueDate; + this.DelinquentAt = delinquentAt; + this.SubscriptionItems = subscriptionItems; + this.CreatedAt = createdAt; + this.UpdatedAt = updatedAt; + } + + /// + /// Initializes a new instance of the class. + /// + public BillingSubscription() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscriptionItem.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscriptionItem.Json.g.cs new file mode 100644 index 0000000..94ba011 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscriptionItem.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class BillingSubscriptionItem + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.BillingSubscriptionItem? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.BillingSubscriptionItem), + jsonSerializerContext) as global::ResembleAI.BillingSubscriptionItem; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.BillingSubscriptionItem? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.BillingSubscriptionItem? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.BillingSubscriptionItem), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.BillingSubscriptionItem; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscriptionItem.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscriptionItem.g.cs new file mode 100644 index 0000000..c5aee28 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscriptionItem.g.cs @@ -0,0 +1,134 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class BillingSubscriptionItem + { + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("id")] + public long? Id { get; set; } + + /// + /// Current absolute quantity on the subscription. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("quantity")] + public double? Quantity { get; set; } + + /// + /// Quantity currently in use. A product cannot be reduced below this value. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("consumed_quantity")] + public double? ConsumedQuantity { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("product")] + public global::ResembleAI.BillingSubscriptionProduct? Product { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("plan_product")] + [global::System.Text.Json.Serialization.JsonConverter(typeof(global::ResembleAI.JsonConverters.OneOfJsonConverter))] + public global::ResembleAI.OneOf? PlanProduct { get; set; } + + /// + /// Locked-in unit rate for this subscription item. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("rate_per_unit_cents")] + public double? RatePerUnitCents { get; set; } + + /// + /// Current catalog unit rate for comparison. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("current_rate_per_unit_cents")] + public double? CurrentRatePerUnitCents { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("is_grandfathered")] + public bool? IsGrandfathered { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("rate_locked_at")] + public global::System.DateTime? RateLockedAt { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("ui_visible")] + public bool? UiVisible { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// + /// Current absolute quantity on the subscription. + /// + /// + /// Quantity currently in use. A product cannot be reduced below this value. + /// + /// + /// + /// + /// Locked-in unit rate for this subscription item. + /// + /// + /// Current catalog unit rate for comparison. + /// + /// + /// + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public BillingSubscriptionItem( + long? id, + double? quantity, + double? consumedQuantity, + global::ResembleAI.BillingSubscriptionProduct? product, + global::ResembleAI.OneOf? planProduct, + double? ratePerUnitCents, + double? currentRatePerUnitCents, + bool? isGrandfathered, + global::System.DateTime? rateLockedAt, + bool? uiVisible) + { + this.Id = id; + this.Quantity = quantity; + this.ConsumedQuantity = consumedQuantity; + this.Product = product; + this.PlanProduct = planProduct; + this.RatePerUnitCents = ratePerUnitCents; + this.CurrentRatePerUnitCents = currentRatePerUnitCents; + this.IsGrandfathered = isGrandfathered; + this.RateLockedAt = rateLockedAt; + this.UiVisible = uiVisible; + } + + /// + /// Initializes a new instance of the class. + /// + public BillingSubscriptionItem() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscriptionPlanProduct.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscriptionPlanProduct.Json.g.cs new file mode 100644 index 0000000..35191a6 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscriptionPlanProduct.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class BillingSubscriptionPlanProduct + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.BillingSubscriptionPlanProduct? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.BillingSubscriptionPlanProduct), + jsonSerializerContext) as global::ResembleAI.BillingSubscriptionPlanProduct; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.BillingSubscriptionPlanProduct? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.BillingSubscriptionPlanProduct? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.BillingSubscriptionPlanProduct), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.BillingSubscriptionPlanProduct; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscriptionPlanProduct.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscriptionPlanProduct.g.cs new file mode 100644 index 0000000..ce80bbc --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscriptionPlanProduct.g.cs @@ -0,0 +1,71 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// Quantity rules inherited from the subscription's current plan. + /// + public sealed partial class BillingSubscriptionPlanProduct + { + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("included_quantity")] + public double? IncludedQuantity { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("allow_additional_usage")] + public bool? AllowAdditionalUsage { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("min_usage_per_period")] + public double? MinUsagePerPeriod { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("max_usage_per_period")] + public double? MaxUsagePerPeriod { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// + /// + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public BillingSubscriptionPlanProduct( + double? includedQuantity, + bool? allowAdditionalUsage, + double? minUsagePerPeriod, + double? maxUsagePerPeriod) + { + this.IncludedQuantity = includedQuantity; + this.AllowAdditionalUsage = allowAdditionalUsage; + this.MinUsagePerPeriod = minUsagePerPeriod; + this.MaxUsagePerPeriod = maxUsagePerPeriod; + } + + /// + /// Initializes a new instance of the class. + /// + public BillingSubscriptionPlanProduct() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscriptionProduct.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscriptionProduct.Json.g.cs new file mode 100644 index 0000000..e58332f --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscriptionProduct.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class BillingSubscriptionProduct + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.BillingSubscriptionProduct? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.BillingSubscriptionProduct), + jsonSerializerContext) as global::ResembleAI.BillingSubscriptionProduct; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.BillingSubscriptionProduct? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.BillingSubscriptionProduct? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.BillingSubscriptionProduct), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.BillingSubscriptionProduct; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscriptionProduct.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscriptionProduct.g.cs new file mode 100644 index 0000000..6e6b677 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscriptionProduct.g.cs @@ -0,0 +1,119 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class BillingSubscriptionProduct + { + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("id")] + public long? Id { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("name")] + public string? Name { get; set; } + + /// + /// Product identifier to send as product_slug when updating quantities. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("slug")] + public string? Slug { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("unit_type")] + public string? UnitType { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("category")] + [global::System.Text.Json.Serialization.JsonConverter(typeof(global::ResembleAI.JsonConverters.BillingSubscriptionProductCategoryJsonConverter))] + public global::ResembleAI.BillingSubscriptionProductCategory? Category { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("description")] + public string? Description { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("active")] + public bool? Active { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("min_purchase_quantity")] + public double? MinPurchaseQuantity { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("max_purchase_quantity")] + public double? MaxPurchaseQuantity { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// + /// + /// Product identifier to send as product_slug when updating quantities. + /// + /// + /// + /// + /// + /// + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public BillingSubscriptionProduct( + long? id, + string? name, + string? slug, + string? unitType, + global::ResembleAI.BillingSubscriptionProductCategory? category, + string? description, + bool? active, + double? minPurchaseQuantity, + double? maxPurchaseQuantity) + { + this.Id = id; + this.Name = name; + this.Slug = slug; + this.UnitType = unitType; + this.Category = category; + this.Description = description; + this.Active = active; + this.MinPurchaseQuantity = minPurchaseQuantity; + this.MaxPurchaseQuantity = maxPurchaseQuantity; + } + + /// + /// Initializes a new instance of the class. + /// + public BillingSubscriptionProduct() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscriptionProductCategory.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscriptionProductCategory.g.cs new file mode 100644 index 0000000..8b0e5e3 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscriptionProductCategory.g.cs @@ -0,0 +1,63 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public enum BillingSubscriptionProductCategory + { + /// + /// + /// + BaseFee, + /// + /// + /// + IncludedCredits, + /// + /// + /// + Metered, + /// + /// + /// + Subscription, + } + + /// + /// Enum extensions to do fast conversions without the reflection. + /// + public static class BillingSubscriptionProductCategoryExtensions + { + /// + /// Converts an enum to a string. + /// + public static string ToValueString(this BillingSubscriptionProductCategory value) + { + return value switch + { + BillingSubscriptionProductCategory.BaseFee => "base_fee", + BillingSubscriptionProductCategory.IncludedCredits => "included_credits", + BillingSubscriptionProductCategory.Metered => "metered", + BillingSubscriptionProductCategory.Subscription => "subscription", + _ => throw new global::System.ArgumentOutOfRangeException(nameof(value), value, null), + }; + } + /// + /// Converts an string to a enum. + /// + public static BillingSubscriptionProductCategory? ToEnum(string value) + { + return value switch + { + "base_fee" => BillingSubscriptionProductCategory.BaseFee, + "included_credits" => BillingSubscriptionProductCategory.IncludedCredits, + "metered" => BillingSubscriptionProductCategory.Metered, + "subscription" => BillingSubscriptionProductCategory.Subscription, + _ => null, + }; + } + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscriptionResponse.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscriptionResponse.Json.g.cs new file mode 100644 index 0000000..0063901 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscriptionResponse.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class BillingSubscriptionResponse + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.BillingSubscriptionResponse? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.BillingSubscriptionResponse), + jsonSerializerContext) as global::ResembleAI.BillingSubscriptionResponse; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.BillingSubscriptionResponse? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.BillingSubscriptionResponse? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.BillingSubscriptionResponse), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.BillingSubscriptionResponse; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscriptionResponse.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscriptionResponse.g.cs new file mode 100644 index 0000000..5644a65 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscriptionResponse.g.cs @@ -0,0 +1,46 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class BillingSubscriptionResponse + { + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("subscription")] + [global::System.Text.Json.Serialization.JsonConverter(typeof(global::ResembleAI.JsonConverters.OneOfJsonConverter))] + [global::System.Text.Json.Serialization.JsonRequired] + public required global::ResembleAI.OneOf Subscription { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public BillingSubscriptionResponse( + global::ResembleAI.OneOf subscription) + { + this.Subscription = subscription; + } + + /// + /// Initializes a new instance of the class. + /// + public BillingSubscriptionResponse() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscriptionStatus.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscriptionStatus.g.cs new file mode 100644 index 0000000..2312958 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingSubscriptionStatus.g.cs @@ -0,0 +1,87 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public enum BillingSubscriptionStatus + { + /// + /// + /// + Active, + /// + /// + /// + ActivePendingPayment, + /// + /// + /// + Cancelled, + /// + /// + /// + Delinquent, + /// + /// + /// + Expired, + /// + /// + /// + PastDue, + /// + /// + /// + PendingPayment, + /// + /// + /// + Trialing, + } + + /// + /// Enum extensions to do fast conversions without the reflection. + /// + public static class BillingSubscriptionStatusExtensions + { + /// + /// Converts an enum to a string. + /// + public static string ToValueString(this BillingSubscriptionStatus value) + { + return value switch + { + BillingSubscriptionStatus.Active => "active", + BillingSubscriptionStatus.ActivePendingPayment => "active_pending_payment", + BillingSubscriptionStatus.Cancelled => "cancelled", + BillingSubscriptionStatus.Delinquent => "delinquent", + BillingSubscriptionStatus.Expired => "expired", + BillingSubscriptionStatus.PastDue => "past_due", + BillingSubscriptionStatus.PendingPayment => "pending_payment", + BillingSubscriptionStatus.Trialing => "trialing", + _ => throw new global::System.ArgumentOutOfRangeException(nameof(value), value, null), + }; + } + /// + /// Converts an string to a enum. + /// + public static BillingSubscriptionStatus? ToEnum(string value) + { + return value switch + { + "active" => BillingSubscriptionStatus.Active, + "active_pending_payment" => BillingSubscriptionStatus.ActivePendingPayment, + "cancelled" => BillingSubscriptionStatus.Cancelled, + "delinquent" => BillingSubscriptionStatus.Delinquent, + "expired" => BillingSubscriptionStatus.Expired, + "past_due" => BillingSubscriptionStatus.PastDue, + "pending_payment" => BillingSubscriptionStatus.PendingPayment, + "trialing" => BillingSubscriptionStatus.Trialing, + _ => null, + }; + } + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingTransactionsResponse.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingTransactionsResponse.Json.g.cs new file mode 100644 index 0000000..5565e4e --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingTransactionsResponse.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class BillingTransactionsResponse + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.BillingTransactionsResponse? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.BillingTransactionsResponse), + jsonSerializerContext) as global::ResembleAI.BillingTransactionsResponse; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.BillingTransactionsResponse? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.BillingTransactionsResponse? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.BillingTransactionsResponse), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.BillingTransactionsResponse; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingTransactionsResponse.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingTransactionsResponse.g.cs new file mode 100644 index 0000000..cbdafb8 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingTransactionsResponse.g.cs @@ -0,0 +1,54 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class BillingTransactionsResponse + { + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("transactions")] + [global::System.Text.Json.Serialization.JsonRequired] + public required global::System.Collections.Generic.IList Transactions { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("pagination")] + public global::ResembleAI.BillingPagination? Pagination { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public BillingTransactionsResponse( + global::System.Collections.Generic.IList transactions, + global::ResembleAI.BillingPagination? pagination) + { + this.Transactions = transactions ?? throw new global::System.ArgumentNullException(nameof(transactions)); + this.Pagination = pagination; + } + + /// + /// Initializes a new instance of the class. + /// + public BillingTransactionsResponse() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingUpdateAutoReloadRequest.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingUpdateAutoReloadRequest.Json.g.cs new file mode 100644 index 0000000..bead9fc --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingUpdateAutoReloadRequest.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class BillingUpdateAutoReloadRequest + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.BillingUpdateAutoReloadRequest? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.BillingUpdateAutoReloadRequest), + jsonSerializerContext) as global::ResembleAI.BillingUpdateAutoReloadRequest; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.BillingUpdateAutoReloadRequest? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.BillingUpdateAutoReloadRequest? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.BillingUpdateAutoReloadRequest), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.BillingUpdateAutoReloadRequest; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingUpdateAutoReloadRequest.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingUpdateAutoReloadRequest.g.cs new file mode 100644 index 0000000..1e77977 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingUpdateAutoReloadRequest.g.cs @@ -0,0 +1,75 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class BillingUpdateAutoReloadRequest + { + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("enabled")] + [global::System.Text.Json.Serialization.JsonRequired] + public required bool Enabled { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("reload_amount_cents")] + [global::System.Text.Json.Serialization.JsonRequired] + public required int ReloadAmountCents { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("minimum_balance_threshold_cents")] + [global::System.Text.Json.Serialization.JsonRequired] + public required int MinimumBalanceThresholdCents { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("maximum_monthly_spend_cents")] + [global::System.Text.Json.Serialization.JsonRequired] + public required int MaximumMonthlySpendCents { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// + /// + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public BillingUpdateAutoReloadRequest( + bool enabled, + int reloadAmountCents, + int minimumBalanceThresholdCents, + int maximumMonthlySpendCents) + { + this.Enabled = enabled; + this.ReloadAmountCents = reloadAmountCents; + this.MinimumBalanceThresholdCents = minimumBalanceThresholdCents; + this.MaximumMonthlySpendCents = maximumMonthlySpendCents; + } + + /// + /// Initializes a new instance of the class. + /// + public BillingUpdateAutoReloadRequest() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingUpdateProductsRequest.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingUpdateProductsRequest.Json.g.cs new file mode 100644 index 0000000..aa8cbd8 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingUpdateProductsRequest.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class BillingUpdateProductsRequest + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.BillingUpdateProductsRequest? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.BillingUpdateProductsRequest), + jsonSerializerContext) as global::ResembleAI.BillingUpdateProductsRequest; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.BillingUpdateProductsRequest? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.BillingUpdateProductsRequest? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.BillingUpdateProductsRequest), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.BillingUpdateProductsRequest; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingUpdateProductsRequest.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingUpdateProductsRequest.g.cs new file mode 100644 index 0000000..c157c0e --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingUpdateProductsRequest.g.cs @@ -0,0 +1,45 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class BillingUpdateProductsRequest + { + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("changes")] + [global::System.Text.Json.Serialization.JsonRequired] + public required global::System.Collections.Generic.IList Changes { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public BillingUpdateProductsRequest( + global::System.Collections.Generic.IList changes) + { + this.Changes = changes ?? throw new global::System.ArgumentNullException(nameof(changes)); + } + + /// + /// Initializes a new instance of the class. + /// + public BillingUpdateProductsRequest() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingValidationErrors.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingValidationErrors.Json.g.cs new file mode 100644 index 0000000..f0db25d --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingValidationErrors.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class BillingValidationErrors + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.BillingValidationErrors? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.BillingValidationErrors), + jsonSerializerContext) as global::ResembleAI.BillingValidationErrors; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.BillingValidationErrors? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.BillingValidationErrors? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.BillingValidationErrors), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.BillingValidationErrors; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingValidationErrors.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingValidationErrors.g.cs new file mode 100644 index 0000000..4f2e13f --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingValidationErrors.g.cs @@ -0,0 +1,45 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class BillingValidationErrors + { + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("errors")] + [global::System.Text.Json.Serialization.JsonRequired] + public required global::System.Collections.Generic.IList Errors { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public BillingValidationErrors( + global::System.Collections.Generic.IList errors) + { + this.Errors = errors ?? throw new global::System.ArgumentNullException(nameof(errors)); + } + + /// + /// Initializes a new instance of the class. + /// + public BillingValidationErrors() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWallet.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWallet.Json.g.cs new file mode 100644 index 0000000..4867ef0 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWallet.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class BillingWallet + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.BillingWallet? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.BillingWallet), + jsonSerializerContext) as global::ResembleAI.BillingWallet; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.BillingWallet? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.BillingWallet? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.BillingWallet), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.BillingWallet; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWallet.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWallet.g.cs new file mode 100644 index 0000000..c738b10 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWallet.g.cs @@ -0,0 +1,134 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class BillingWallet + { + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("balance_cents")] + public double? BalanceCents { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("balance_dollars")] + public double? BalanceDollars { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("cash_balance_cents")] + public double? CashBalanceCents { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("cash_balance_dollars")] + public double? CashBalanceDollars { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("promotional_balance_cents")] + public double? PromotionalBalanceCents { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("promotional_balance_dollars")] + public double? PromotionalBalanceDollars { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("lifetime_loaded_cents")] + public double? LifetimeLoadedCents { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("lifetime_loaded_dollars")] + public double? LifetimeLoadedDollars { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("lifetime_consumed_cents")] + public double? LifetimeConsumedCents { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("lifetime_consumed_dollars")] + public double? LifetimeConsumedDollars { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("low_balance")] + public bool? LowBalance { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// + /// + /// + /// + /// + /// + /// + /// + /// + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public BillingWallet( + double? balanceCents, + double? balanceDollars, + double? cashBalanceCents, + double? cashBalanceDollars, + double? promotionalBalanceCents, + double? promotionalBalanceDollars, + double? lifetimeLoadedCents, + double? lifetimeLoadedDollars, + double? lifetimeConsumedCents, + double? lifetimeConsumedDollars, + bool? lowBalance) + { + this.BalanceCents = balanceCents; + this.BalanceDollars = balanceDollars; + this.CashBalanceCents = cashBalanceCents; + this.CashBalanceDollars = cashBalanceDollars; + this.PromotionalBalanceCents = promotionalBalanceCents; + this.PromotionalBalanceDollars = promotionalBalanceDollars; + this.LifetimeLoadedCents = lifetimeLoadedCents; + this.LifetimeLoadedDollars = lifetimeLoadedDollars; + this.LifetimeConsumedCents = lifetimeConsumedCents; + this.LifetimeConsumedDollars = lifetimeConsumedDollars; + this.LowBalance = lowBalance; + } + + /// + /// Initializes a new instance of the class. + /// + public BillingWallet() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletResponse.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletResponse.Json.g.cs new file mode 100644 index 0000000..c4d27ce --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletResponse.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class BillingWalletResponse + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.BillingWalletResponse? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.BillingWalletResponse), + jsonSerializerContext) as global::ResembleAI.BillingWalletResponse; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.BillingWalletResponse? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.BillingWalletResponse? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.BillingWalletResponse), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.BillingWalletResponse; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletResponse.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletResponse.g.cs new file mode 100644 index 0000000..3df52f1 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletResponse.g.cs @@ -0,0 +1,44 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class BillingWalletResponse + { + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("wallet")] + public global::ResembleAI.BillingWallet? Wallet { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public BillingWalletResponse( + global::ResembleAI.BillingWallet? wallet) + { + this.Wallet = wallet; + } + + /// + /// Initializes a new instance of the class. + /// + public BillingWalletResponse() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletTransaction.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletTransaction.Json.g.cs new file mode 100644 index 0000000..93b63a9 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletTransaction.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class BillingWalletTransaction + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.BillingWalletTransaction? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.BillingWalletTransaction), + jsonSerializerContext) as global::ResembleAI.BillingWalletTransaction; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.BillingWalletTransaction? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.BillingWalletTransaction? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.BillingWalletTransaction), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.BillingWalletTransaction; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletTransaction.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletTransaction.g.cs new file mode 100644 index 0000000..9ee9bc1 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletTransaction.g.cs @@ -0,0 +1,101 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class BillingWalletTransaction + { + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("id")] + public long? Id { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("transaction_type")] + [global::System.Text.Json.Serialization.JsonConverter(typeof(global::ResembleAI.JsonConverters.BillingWalletTransactionTransactionTypeJsonConverter))] + public global::ResembleAI.BillingWalletTransactionTransactionType? TransactionType { get; set; } + + /// + /// Positive for credits and negative for debits. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("amount_cents")] + public double? AmountCents { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("balance_after_cents")] + public double? BalanceAfterCents { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("description")] + public string? Description { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("metadata")] + public object? Metadata { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("created_at")] + public global::System.DateTime? CreatedAt { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// + /// + /// Positive for credits and negative for debits. + /// + /// + /// + /// + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public BillingWalletTransaction( + long? id, + global::ResembleAI.BillingWalletTransactionTransactionType? transactionType, + double? amountCents, + double? balanceAfterCents, + string? description, + object? metadata, + global::System.DateTime? createdAt) + { + this.Id = id; + this.TransactionType = transactionType; + this.AmountCents = amountCents; + this.BalanceAfterCents = balanceAfterCents; + this.Description = description; + this.Metadata = metadata; + this.CreatedAt = createdAt; + } + + /// + /// Initializes a new instance of the class. + /// + public BillingWalletTransaction() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletTransactionMetadata.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletTransactionMetadata.Json.g.cs new file mode 100644 index 0000000..6c1d177 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletTransactionMetadata.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class BillingWalletTransactionMetadata + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.BillingWalletTransactionMetadata? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.BillingWalletTransactionMetadata), + jsonSerializerContext) as global::ResembleAI.BillingWalletTransactionMetadata; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.BillingWalletTransactionMetadata? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.BillingWalletTransactionMetadata? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.BillingWalletTransactionMetadata), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.BillingWalletTransactionMetadata; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletTransactionMetadata.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletTransactionMetadata.g.cs new file mode 100644 index 0000000..fa19dff --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletTransactionMetadata.g.cs @@ -0,0 +1,19 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class BillingWalletTransactionMetadata + { + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletTransactionMetadata2.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletTransactionMetadata2.Json.g.cs new file mode 100644 index 0000000..c3a9546 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletTransactionMetadata2.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class BillingWalletTransactionMetadata2 + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.BillingWalletTransactionMetadata2? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.BillingWalletTransactionMetadata2), + jsonSerializerContext) as global::ResembleAI.BillingWalletTransactionMetadata2; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.BillingWalletTransactionMetadata2? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.BillingWalletTransactionMetadata2? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.BillingWalletTransactionMetadata2), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.BillingWalletTransactionMetadata2; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletTransactionMetadata2.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletTransactionMetadata2.g.cs new file mode 100644 index 0000000..fd33521 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletTransactionMetadata2.g.cs @@ -0,0 +1,19 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// Any type + /// + public sealed partial class BillingWalletTransactionMetadata2 + { + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletTransactionTransactionType.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletTransactionTransactionType.g.cs new file mode 100644 index 0000000..c7fe697 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletTransactionTransactionType.g.cs @@ -0,0 +1,105 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public enum BillingWalletTransactionTransactionType + { + /// + /// + /// + CreditPurchase, + /// + /// + /// + ManualAdjustment, + /// + /// + /// + PlanChange, + /// + /// + /// + PlanSubscription, + /// + /// + /// + PromotionBonus, + /// + /// + /// + PromotionalCreditAdjustment, + /// + /// + /// + Refund, + /// + /// + /// + SubscriptionCancellation, + /// + /// + /// + SubscriptionRenewalCredit, + /// + /// + /// + TrialCredit, + /// + /// + /// + UsageDeduction, + } + + /// + /// Enum extensions to do fast conversions without the reflection. + /// + public static class BillingWalletTransactionTransactionTypeExtensions + { + /// + /// Converts an enum to a string. + /// + public static string ToValueString(this BillingWalletTransactionTransactionType value) + { + return value switch + { + BillingWalletTransactionTransactionType.CreditPurchase => "credit_purchase", + BillingWalletTransactionTransactionType.ManualAdjustment => "manual_adjustment", + BillingWalletTransactionTransactionType.PlanChange => "plan_change", + BillingWalletTransactionTransactionType.PlanSubscription => "plan_subscription", + BillingWalletTransactionTransactionType.PromotionBonus => "promotion_bonus", + BillingWalletTransactionTransactionType.PromotionalCreditAdjustment => "promotional_credit_adjustment", + BillingWalletTransactionTransactionType.Refund => "refund", + BillingWalletTransactionTransactionType.SubscriptionCancellation => "subscription_cancellation", + BillingWalletTransactionTransactionType.SubscriptionRenewalCredit => "subscription_renewal_credit", + BillingWalletTransactionTransactionType.TrialCredit => "trial_credit", + BillingWalletTransactionTransactionType.UsageDeduction => "usage_deduction", + _ => throw new global::System.ArgumentOutOfRangeException(nameof(value), value, null), + }; + } + /// + /// Converts an string to a enum. + /// + public static BillingWalletTransactionTransactionType? ToEnum(string value) + { + return value switch + { + "credit_purchase" => BillingWalletTransactionTransactionType.CreditPurchase, + "manual_adjustment" => BillingWalletTransactionTransactionType.ManualAdjustment, + "plan_change" => BillingWalletTransactionTransactionType.PlanChange, + "plan_subscription" => BillingWalletTransactionTransactionType.PlanSubscription, + "promotion_bonus" => BillingWalletTransactionTransactionType.PromotionBonus, + "promotional_credit_adjustment" => BillingWalletTransactionTransactionType.PromotionalCreditAdjustment, + "refund" => BillingWalletTransactionTransactionType.Refund, + "subscription_cancellation" => BillingWalletTransactionTransactionType.SubscriptionCancellation, + "subscription_renewal_credit" => BillingWalletTransactionTransactionType.SubscriptionRenewalCredit, + "trial_credit" => BillingWalletTransactionTransactionType.TrialCredit, + "usage_deduction" => BillingWalletTransactionTransactionType.UsageDeduction, + _ => null, + }; + } + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletUpdateBillingAutoReloadResponse200.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletUpdateBillingAutoReloadResponse200.Json.g.cs new file mode 100644 index 0000000..3dfa2a6 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletUpdateBillingAutoReloadResponse200.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class BillingWalletUpdateBillingAutoReloadResponse200 + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.BillingWalletUpdateBillingAutoReloadResponse200? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.BillingWalletUpdateBillingAutoReloadResponse200), + jsonSerializerContext) as global::ResembleAI.BillingWalletUpdateBillingAutoReloadResponse200; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.BillingWalletUpdateBillingAutoReloadResponse200? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.BillingWalletUpdateBillingAutoReloadResponse200? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.BillingWalletUpdateBillingAutoReloadResponse200), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.BillingWalletUpdateBillingAutoReloadResponse200; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletUpdateBillingAutoReloadResponse200.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletUpdateBillingAutoReloadResponse200.g.cs new file mode 100644 index 0000000..94f994a --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.BillingWalletUpdateBillingAutoReloadResponse200.g.cs @@ -0,0 +1,44 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class BillingWalletUpdateBillingAutoReloadResponse200 + { + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("auto_reload")] + public global::ResembleAI.BillingAutoReloadSetting? AutoReload { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public BillingWalletUpdateBillingAutoReloadResponse200( + global::ResembleAI.BillingAutoReloadSetting? autoReload) + { + this.AutoReload = autoReload; + } + + /// + /// Initializes a new instance of the class. + /// + public BillingWalletUpdateBillingAutoReloadResponse200() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.ChangeBillingPlanRequestUnprocessableEntityError.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.ChangeBillingPlanRequestUnprocessableEntityError.Json.g.cs new file mode 100644 index 0000000..c253525 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.ChangeBillingPlanRequestUnprocessableEntityError.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public readonly partial struct ChangeBillingPlanRequestUnprocessableEntityError + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.ChangeBillingPlanRequestUnprocessableEntityError? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.ChangeBillingPlanRequestUnprocessableEntityError), + jsonSerializerContext) as global::ResembleAI.ChangeBillingPlanRequestUnprocessableEntityError?; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.ChangeBillingPlanRequestUnprocessableEntityError? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.ChangeBillingPlanRequestUnprocessableEntityError? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.ChangeBillingPlanRequestUnprocessableEntityError), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.ChangeBillingPlanRequestUnprocessableEntityError?; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.ChangeBillingPlanRequestUnprocessableEntityError.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.ChangeBillingPlanRequestUnprocessableEntityError.g.cs new file mode 100644 index 0000000..f0ae18d --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.ChangeBillingPlanRequestUnprocessableEntityError.g.cs @@ -0,0 +1,295 @@ +#pragma warning disable CS0618 // Type or member is obsolete + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public readonly partial struct ChangeBillingPlanRequestUnprocessableEntityError : global::System.IEquatable + { + /// + /// + /// +#if NET6_0_OR_GREATER + public global::ResembleAI.BillingError? BillingError { get; init; } +#else + public global::ResembleAI.BillingError? BillingError { get; } +#endif + + /// + /// + /// +#if NET6_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.MemberNotNullWhen(true, nameof(BillingError))] +#endif + public bool IsBillingError => BillingError != null; + + /// + /// + /// + public bool TryPickBillingError( +#if NET6_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.NotNullWhen(true)] +#endif + out global::ResembleAI.BillingError? value) + { + value = BillingError; + return IsBillingError; + } + + /// + /// + /// + public global::ResembleAI.BillingError PickBillingError() => IsBillingError + ? BillingError! + : throw new global::System.InvalidOperationException($"Expected union variant 'BillingError' but the value was {ToString()}."); + + /// + /// + /// +#if NET6_0_OR_GREATER + public global::ResembleAI.BillingValidationErrors? BillingValidationErrors { get; init; } +#else + public global::ResembleAI.BillingValidationErrors? BillingValidationErrors { get; } +#endif + + /// + /// + /// +#if NET6_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.MemberNotNullWhen(true, nameof(BillingValidationErrors))] +#endif + public bool IsBillingValidationErrors => BillingValidationErrors != null; + + /// + /// + /// + public bool TryPickBillingValidationErrors( +#if NET6_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.NotNullWhen(true)] +#endif + out global::ResembleAI.BillingValidationErrors? value) + { + value = BillingValidationErrors; + return IsBillingValidationErrors; + } + + /// + /// + /// + public global::ResembleAI.BillingValidationErrors PickBillingValidationErrors() => IsBillingValidationErrors + ? BillingValidationErrors! + : throw new global::System.InvalidOperationException($"Expected union variant 'BillingValidationErrors' but the value was {ToString()}."); + /// + /// + /// + public static implicit operator ChangeBillingPlanRequestUnprocessableEntityError(global::ResembleAI.BillingError value) => new ChangeBillingPlanRequestUnprocessableEntityError((global::ResembleAI.BillingError?)value); + + /// + /// + /// + public static implicit operator global::ResembleAI.BillingError?(ChangeBillingPlanRequestUnprocessableEntityError @this) => @this.BillingError; + + /// + /// + /// + public ChangeBillingPlanRequestUnprocessableEntityError(global::ResembleAI.BillingError? value) + { + BillingError = value; + } + + /// + /// + /// + public static ChangeBillingPlanRequestUnprocessableEntityError FromBillingError(global::ResembleAI.BillingError? value) => new ChangeBillingPlanRequestUnprocessableEntityError(value); + + /// + /// + /// + public static implicit operator ChangeBillingPlanRequestUnprocessableEntityError(global::ResembleAI.BillingValidationErrors value) => new ChangeBillingPlanRequestUnprocessableEntityError((global::ResembleAI.BillingValidationErrors?)value); + + /// + /// + /// + public static implicit operator global::ResembleAI.BillingValidationErrors?(ChangeBillingPlanRequestUnprocessableEntityError @this) => @this.BillingValidationErrors; + + /// + /// + /// + public ChangeBillingPlanRequestUnprocessableEntityError(global::ResembleAI.BillingValidationErrors? value) + { + BillingValidationErrors = value; + } + + /// + /// + /// + public static ChangeBillingPlanRequestUnprocessableEntityError FromBillingValidationErrors(global::ResembleAI.BillingValidationErrors? value) => new ChangeBillingPlanRequestUnprocessableEntityError(value); + + /// + /// + /// + public ChangeBillingPlanRequestUnprocessableEntityError( + global::ResembleAI.BillingError? billingError, + global::ResembleAI.BillingValidationErrors? billingValidationErrors + ) + { + BillingError = billingError; + BillingValidationErrors = billingValidationErrors; + } + + /// + /// + /// + public object? Object => + BillingValidationErrors as object ?? + BillingError as object + ; + + /// + /// + /// + public override string? ToString() => + BillingError?.ToString() ?? + BillingValidationErrors?.ToString() + ; + + /// + /// + /// + public bool Validate() + { + return IsBillingError && !IsBillingValidationErrors || !IsBillingError && IsBillingValidationErrors; + } + + /// + /// + /// + public TResult? Match( + global::System.Func? billingError = null, + global::System.Func? billingValidationErrors = null, + bool validate = true) + { + if (validate) + { + Validate(); + } + + if (IsBillingError && billingError != null) + { + return billingError(BillingError!); + } + else if (IsBillingValidationErrors && billingValidationErrors != null) + { + return billingValidationErrors(BillingValidationErrors!); + } + + return default(TResult); + } + + /// + /// + /// + public void Match( + global::System.Action? billingError = null, + + global::System.Action? billingValidationErrors = null, + bool validate = true) + { + if (validate) + { + Validate(); + } + + if (IsBillingError) + { + billingError?.Invoke(BillingError!); + } + else if (IsBillingValidationErrors) + { + billingValidationErrors?.Invoke(BillingValidationErrors!); + } + } + + /// + /// + /// + public void Switch( + global::System.Action? billingError = null, + global::System.Action? billingValidationErrors = null, + bool validate = true) + { + if (validate) + { + Validate(); + } + + if (IsBillingError) + { + billingError?.Invoke(BillingError!); + } + else if (IsBillingValidationErrors) + { + billingValidationErrors?.Invoke(BillingValidationErrors!); + } + } + + /// + /// + /// + public override int GetHashCode() + { + var fields = new object?[] + { + BillingError, + typeof(global::ResembleAI.BillingError), + BillingValidationErrors, + typeof(global::ResembleAI.BillingValidationErrors), + }; + const int offset = unchecked((int)2166136261); + const int prime = 16777619; + static int HashCodeAggregator(int hashCode, object? value) => value == null + ? (hashCode ^ 0) * prime + : (hashCode ^ value.GetHashCode()) * prime; + + return global::System.Linq.Enumerable.Aggregate(fields, offset, HashCodeAggregator); + } + + /// + /// + /// + public bool Equals(ChangeBillingPlanRequestUnprocessableEntityError other) + { + return + global::System.Collections.Generic.EqualityComparer.Default.Equals(BillingError, other.BillingError) && + global::System.Collections.Generic.EqualityComparer.Default.Equals(BillingValidationErrors, other.BillingValidationErrors) + ; + } + + /// + /// + /// + public static bool operator ==(ChangeBillingPlanRequestUnprocessableEntityError obj1, ChangeBillingPlanRequestUnprocessableEntityError obj2) + { + return global::System.Collections.Generic.EqualityComparer.Default.Equals(obj1, obj2); + } + + /// + /// + /// + public static bool operator !=(ChangeBillingPlanRequestUnprocessableEntityError obj1, ChangeBillingPlanRequestUnprocessableEntityError obj2) + { + return !(obj1 == obj2); + } + + /// + /// + /// + public override bool Equals(object? obj) + { + return obj is ChangeBillingPlanRequestUnprocessableEntityError o && Equals(o); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError.Json.g.cs new file mode 100644 index 0000000..c375ef0 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public readonly partial struct ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError), + jsonSerializerContext) as global::ResembleAI.ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError?; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError?; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError.g.cs new file mode 100644 index 0000000..a9c62cd --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError.g.cs @@ -0,0 +1,295 @@ +#pragma warning disable CS0618 // Type or member is obsolete + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public readonly partial struct ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError : global::System.IEquatable + { + /// + /// + /// +#if NET6_0_OR_GREATER + public global::ResembleAI.BillingError? BillingError { get; init; } +#else + public global::ResembleAI.BillingError? BillingError { get; } +#endif + + /// + /// + /// +#if NET6_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.MemberNotNullWhen(true, nameof(BillingError))] +#endif + public bool IsBillingError => BillingError != null; + + /// + /// + /// + public bool TryPickBillingError( +#if NET6_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.NotNullWhen(true)] +#endif + out global::ResembleAI.BillingError? value) + { + value = BillingError; + return IsBillingError; + } + + /// + /// + /// + public global::ResembleAI.BillingError PickBillingError() => IsBillingError + ? BillingError! + : throw new global::System.InvalidOperationException($"Expected union variant 'BillingError' but the value was {ToString()}."); + + /// + /// + /// +#if NET6_0_OR_GREATER + public global::ResembleAI.BillingValidationErrors? BillingValidationErrors { get; init; } +#else + public global::ResembleAI.BillingValidationErrors? BillingValidationErrors { get; } +#endif + + /// + /// + /// +#if NET6_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.MemberNotNullWhen(true, nameof(BillingValidationErrors))] +#endif + public bool IsBillingValidationErrors => BillingValidationErrors != null; + + /// + /// + /// + public bool TryPickBillingValidationErrors( +#if NET6_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.NotNullWhen(true)] +#endif + out global::ResembleAI.BillingValidationErrors? value) + { + value = BillingValidationErrors; + return IsBillingValidationErrors; + } + + /// + /// + /// + public global::ResembleAI.BillingValidationErrors PickBillingValidationErrors() => IsBillingValidationErrors + ? BillingValidationErrors! + : throw new global::System.InvalidOperationException($"Expected union variant 'BillingValidationErrors' but the value was {ToString()}."); + /// + /// + /// + public static implicit operator ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError(global::ResembleAI.BillingError value) => new ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError((global::ResembleAI.BillingError?)value); + + /// + /// + /// + public static implicit operator global::ResembleAI.BillingError?(ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError @this) => @this.BillingError; + + /// + /// + /// + public ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError(global::ResembleAI.BillingError? value) + { + BillingError = value; + } + + /// + /// + /// + public static ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError FromBillingError(global::ResembleAI.BillingError? value) => new ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError(value); + + /// + /// + /// + public static implicit operator ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError(global::ResembleAI.BillingValidationErrors value) => new ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError((global::ResembleAI.BillingValidationErrors?)value); + + /// + /// + /// + public static implicit operator global::ResembleAI.BillingValidationErrors?(ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError @this) => @this.BillingValidationErrors; + + /// + /// + /// + public ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError(global::ResembleAI.BillingValidationErrors? value) + { + BillingValidationErrors = value; + } + + /// + /// + /// + public static ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError FromBillingValidationErrors(global::ResembleAI.BillingValidationErrors? value) => new ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError(value); + + /// + /// + /// + public ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError( + global::ResembleAI.BillingError? billingError, + global::ResembleAI.BillingValidationErrors? billingValidationErrors + ) + { + BillingError = billingError; + BillingValidationErrors = billingValidationErrors; + } + + /// + /// + /// + public object? Object => + BillingValidationErrors as object ?? + BillingError as object + ; + + /// + /// + /// + public override string? ToString() => + BillingError?.ToString() ?? + BillingValidationErrors?.ToString() + ; + + /// + /// + /// + public bool Validate() + { + return IsBillingError && !IsBillingValidationErrors || !IsBillingError && IsBillingValidationErrors; + } + + /// + /// + /// + public TResult? Match( + global::System.Func? billingError = null, + global::System.Func? billingValidationErrors = null, + bool validate = true) + { + if (validate) + { + Validate(); + } + + if (IsBillingError && billingError != null) + { + return billingError(BillingError!); + } + else if (IsBillingValidationErrors && billingValidationErrors != null) + { + return billingValidationErrors(BillingValidationErrors!); + } + + return default(TResult); + } + + /// + /// + /// + public void Match( + global::System.Action? billingError = null, + + global::System.Action? billingValidationErrors = null, + bool validate = true) + { + if (validate) + { + Validate(); + } + + if (IsBillingError) + { + billingError?.Invoke(BillingError!); + } + else if (IsBillingValidationErrors) + { + billingValidationErrors?.Invoke(BillingValidationErrors!); + } + } + + /// + /// + /// + public void Switch( + global::System.Action? billingError = null, + global::System.Action? billingValidationErrors = null, + bool validate = true) + { + if (validate) + { + Validate(); + } + + if (IsBillingError) + { + billingError?.Invoke(BillingError!); + } + else if (IsBillingValidationErrors) + { + billingValidationErrors?.Invoke(BillingValidationErrors!); + } + } + + /// + /// + /// + public override int GetHashCode() + { + var fields = new object?[] + { + BillingError, + typeof(global::ResembleAI.BillingError), + BillingValidationErrors, + typeof(global::ResembleAI.BillingValidationErrors), + }; + const int offset = unchecked((int)2166136261); + const int prime = 16777619; + static int HashCodeAggregator(int hashCode, object? value) => value == null + ? (hashCode ^ 0) * prime + : (hashCode ^ value.GetHashCode()) * prime; + + return global::System.Linq.Enumerable.Aggregate(fields, offset, HashCodeAggregator); + } + + /// + /// + /// + public bool Equals(ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError other) + { + return + global::System.Collections.Generic.EqualityComparer.Default.Equals(BillingError, other.BillingError) && + global::System.Collections.Generic.EqualityComparer.Default.Equals(BillingValidationErrors, other.BillingValidationErrors) + ; + } + + /// + /// + /// + public static bool operator ==(ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError obj1, ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError obj2) + { + return global::System.Collections.Generic.EqualityComparer.Default.Equals(obj1, obj2); + } + + /// + /// + /// + public static bool operator !=(ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError obj1, ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError obj2) + { + return !(obj1 == obj2); + } + + /// + /// + /// + public override bool Equals(object? obj) + { + return obj is ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError o && Equals(o); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.CreateSignalSubmissionRequest.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.CreateSignalSubmissionRequest.Json.g.cs new file mode 100644 index 0000000..a7e78cd --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.CreateSignalSubmissionRequest.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class CreateSignalSubmissionRequest + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.CreateSignalSubmissionRequest? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.CreateSignalSubmissionRequest), + jsonSerializerContext) as global::ResembleAI.CreateSignalSubmissionRequest; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.CreateSignalSubmissionRequest? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.CreateSignalSubmissionRequest? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.CreateSignalSubmissionRequest), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.CreateSignalSubmissionRequest; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.CreateSignalSubmissionRequest.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.CreateSignalSubmissionRequest.g.cs new file mode 100644 index 0000000..94c44a2 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.CreateSignalSubmissionRequest.g.cs @@ -0,0 +1,47 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class CreateSignalSubmissionRequest + { + /// + /// Text to analyze. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("text")] + [global::System.Text.Json.Serialization.JsonRequired] + public required string Text { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// Text to analyze. + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public CreateSignalSubmissionRequest( + string text) + { + this.Text = text ?? throw new global::System.ArgumentNullException(nameof(text)); + } + + /// + /// Initializes a new instance of the class. + /// + public CreateSignalSubmissionRequest() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.ExportBillingWalletTransactionsResponse.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.ExportBillingWalletTransactionsResponse.Json.g.cs new file mode 100644 index 0000000..ae564fe --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.ExportBillingWalletTransactionsResponse.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class ExportBillingWalletTransactionsResponse + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.ExportBillingWalletTransactionsResponse? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.ExportBillingWalletTransactionsResponse), + jsonSerializerContext) as global::ResembleAI.ExportBillingWalletTransactionsResponse; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.ExportBillingWalletTransactionsResponse? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.ExportBillingWalletTransactionsResponse? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.ExportBillingWalletTransactionsResponse), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.ExportBillingWalletTransactionsResponse; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.ExportBillingWalletTransactionsResponse.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.ExportBillingWalletTransactionsResponse.g.cs new file mode 100644 index 0000000..e9fb3a3 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.ExportBillingWalletTransactionsResponse.g.cs @@ -0,0 +1,19 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class ExportBillingWalletTransactionsResponse + { + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalBuiltInCategory.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalBuiltInCategory.Json.g.cs new file mode 100644 index 0000000..2c0a3f0 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalBuiltInCategory.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class SignalBuiltInCategory + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.SignalBuiltInCategory? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.SignalBuiltInCategory), + jsonSerializerContext) as global::ResembleAI.SignalBuiltInCategory; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.SignalBuiltInCategory? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.SignalBuiltInCategory? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.SignalBuiltInCategory), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.SignalBuiltInCategory; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalBuiltInCategory.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalBuiltInCategory.g.cs new file mode 100644 index 0000000..d5cf1e9 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalBuiltInCategory.g.cs @@ -0,0 +1,80 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class SignalBuiltInCategory + { + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("id")] + public int? Id { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("name")] + public string? Name { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("icon")] + public string? Icon { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("scenario_count")] + public int? ScenarioCount { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("example_texts")] + public global::System.Collections.Generic.IList? ExampleTexts { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// + /// + /// + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public SignalBuiltInCategory( + int? id, + string? name, + string? icon, + int? scenarioCount, + global::System.Collections.Generic.IList? exampleTexts) + { + this.Id = id; + this.Name = name; + this.Icon = icon; + this.ScenarioCount = scenarioCount; + this.ExampleTexts = exampleTexts; + } + + /// + /// Initializes a new instance of the class. + /// + public SignalBuiltInCategory() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCalibration.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCalibration.Json.g.cs new file mode 100644 index 0000000..14d4dcd --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCalibration.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class SignalCalibration + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.SignalCalibration? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.SignalCalibration), + jsonSerializerContext) as global::ResembleAI.SignalCalibration; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.SignalCalibration? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.SignalCalibration? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.SignalCalibration), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.SignalCalibration; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCalibration.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCalibration.g.cs new file mode 100644 index 0000000..29264b6 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCalibration.g.cs @@ -0,0 +1,71 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// Null until the team's categories have been calibrated. + /// + public sealed partial class SignalCalibration + { + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("status")] + public string? Status { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("calibrated_at")] + public global::System.DateTime? CalibratedAt { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("overall_recall")] + public double? OverallRecall { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("warnings")] + public global::System.Collections.Generic.IList? Warnings { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// + /// + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public SignalCalibration( + string? status, + global::System.DateTime? calibratedAt, + double? overallRecall, + global::System.Collections.Generic.IList? warnings) + { + this.Status = status; + this.CalibratedAt = calibratedAt; + this.OverallRecall = overallRecall; + this.Warnings = warnings; + } + + /// + /// Initializes a new instance of the class. + /// + public SignalCalibration() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCalibrationWarningsItems.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCalibrationWarningsItems.Json.g.cs new file mode 100644 index 0000000..f6de316 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCalibrationWarningsItems.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class SignalCalibrationWarningsItems + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.SignalCalibrationWarningsItems? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.SignalCalibrationWarningsItems), + jsonSerializerContext) as global::ResembleAI.SignalCalibrationWarningsItems; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.SignalCalibrationWarningsItems? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.SignalCalibrationWarningsItems? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.SignalCalibrationWarningsItems), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.SignalCalibrationWarningsItems; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCalibrationWarningsItems.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCalibrationWarningsItems.g.cs new file mode 100644 index 0000000..503db31 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCalibrationWarningsItems.g.cs @@ -0,0 +1,19 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class SignalCalibrationWarningsItems + { + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCategoryScore.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCategoryScore.Json.g.cs new file mode 100644 index 0000000..dd2ac54 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCategoryScore.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class SignalCategoryScore + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.SignalCategoryScore? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.SignalCategoryScore), + jsonSerializerContext) as global::ResembleAI.SignalCategoryScore; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.SignalCategoryScore? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.SignalCategoryScore? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.SignalCategoryScore), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.SignalCategoryScore; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCategoryScore.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCategoryScore.g.cs new file mode 100644 index 0000000..158f1d8 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCategoryScore.g.cs @@ -0,0 +1,68 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class SignalCategoryScore + { + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("name")] + [global::System.Text.Json.Serialization.JsonRequired] + public required string Name { get; set; } + + /// + /// Single emoji associated with the category. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("icon")] + public string? Icon { get; set; } + + /// + /// Similarity score from 0 to 1. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("score")] + [global::System.Text.Json.Serialization.JsonRequired] + public required double Score { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// + /// Similarity score from 0 to 1. + /// + /// + /// Single emoji associated with the category. + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public SignalCategoryScore( + string name, + double score, + string? icon) + { + this.Name = name ?? throw new global::System.ArgumentNullException(nameof(name)); + this.Icon = icon; + this.Score = score; + } + + /// + /// Initializes a new instance of the class. + /// + public SignalCategoryScore() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategory.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategory.Json.g.cs new file mode 100644 index 0000000..17c2f77 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategory.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class SignalCustomCategory + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.SignalCustomCategory? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.SignalCustomCategory), + jsonSerializerContext) as global::ResembleAI.SignalCustomCategory; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.SignalCustomCategory? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.SignalCustomCategory? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.SignalCustomCategory), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.SignalCustomCategory; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategory.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategory.g.cs new file mode 100644 index 0000000..4eaa24b --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategory.g.cs @@ -0,0 +1,150 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class SignalCustomCategory + { + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("id")] + public int? Id { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("name")] + public string? Name { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("description")] + public string? Description { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("icon")] + public string? Icon { get; set; } + + /// + /// Whether the category is included in scoring. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("enabled")] + public bool? Enabled { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("status")] + [global::System.Text.Json.Serialization.JsonConverter(typeof(global::ResembleAI.JsonConverters.SignalCustomCategoryStatusJsonConverter))] + public global::ResembleAI.SignalCustomCategoryStatus? Status { get; set; } + + /// + /// Error message when `status` is `failed`. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("embed_error")] + public string? EmbedError { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("embedded_at")] + public global::System.DateTime? EmbeddedAt { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("scenario_count")] + public int? ScenarioCount { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("embedding_model_version")] + public string? EmbeddingModelVersion { get; set; } + + /// + /// Calibration warnings where this category was confused with another. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("overlaps")] + public global::System.Collections.Generic.IList? Overlaps { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("scenarios")] + public global::System.Collections.Generic.IList? Scenarios { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// + /// + /// + /// + /// Whether the category is included in scoring. + /// + /// + /// + /// Error message when `status` is `failed`. + /// + /// + /// + /// + /// + /// Calibration warnings where this category was confused with another. + /// + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public SignalCustomCategory( + int? id, + string? name, + string? description, + string? icon, + bool? enabled, + global::ResembleAI.SignalCustomCategoryStatus? status, + string? embedError, + global::System.DateTime? embeddedAt, + int? scenarioCount, + string? embeddingModelVersion, + global::System.Collections.Generic.IList? overlaps, + global::System.Collections.Generic.IList? scenarios) + { + this.Id = id; + this.Name = name; + this.Description = description; + this.Icon = icon; + this.Enabled = enabled; + this.Status = status; + this.EmbedError = embedError; + this.EmbeddedAt = embeddedAt; + this.ScenarioCount = scenarioCount; + this.EmbeddingModelVersion = embeddingModelVersion; + this.Overlaps = overlaps; + this.Scenarios = scenarios; + } + + /// + /// Initializes a new instance of the class. + /// + public SignalCustomCategory() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryCreateRequest.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryCreateRequest.Json.g.cs new file mode 100644 index 0000000..1f86bb7 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryCreateRequest.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class SignalCustomCategoryCreateRequest + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.SignalCustomCategoryCreateRequest? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.SignalCustomCategoryCreateRequest), + jsonSerializerContext) as global::ResembleAI.SignalCustomCategoryCreateRequest; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.SignalCustomCategoryCreateRequest? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.SignalCustomCategoryCreateRequest? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.SignalCustomCategoryCreateRequest), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.SignalCustomCategoryCreateRequest; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryCreateRequest.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryCreateRequest.g.cs new file mode 100644 index 0000000..77fb098 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryCreateRequest.g.cs @@ -0,0 +1,90 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class SignalCustomCategoryCreateRequest + { + /// + /// Category name. Must be unique within the team. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("name")] + [global::System.Text.Json.Serialization.JsonRequired] + public required string Name { get; set; } + + /// + /// Example phrases that define the pattern. Maximum 50 entries, each up to 2000 characters. A newline-separated string is also accepted. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("scenarios")] + [global::System.Text.Json.Serialization.JsonRequired] + public required global::System.Collections.Generic.IList Scenarios { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("description")] + public string? Description { get; set; } + + /// + /// Single emoji. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("icon")] + public string? Icon { get; set; } + + /// + /// Default Value: true + /// + [global::System.Text.Json.Serialization.JsonPropertyName("enabled")] + public bool? Enabled { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// Category name. Must be unique within the team. + /// + /// + /// Example phrases that define the pattern. Maximum 50 entries, each up to 2000 characters. A newline-separated string is also accepted. + /// + /// + /// + /// Single emoji. + /// + /// + /// Default Value: true + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public SignalCustomCategoryCreateRequest( + string name, + global::System.Collections.Generic.IList scenarios, + string? description, + string? icon, + bool? enabled) + { + this.Name = name ?? throw new global::System.ArgumentNullException(nameof(name)); + this.Scenarios = scenarios ?? throw new global::System.ArgumentNullException(nameof(scenarios)); + this.Description = description; + this.Icon = icon; + this.Enabled = enabled; + } + + /// + /// Initializes a new instance of the class. + /// + public SignalCustomCategoryCreateRequest() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryListResponse.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryListResponse.Json.g.cs new file mode 100644 index 0000000..c276ccc --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryListResponse.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class SignalCustomCategoryListResponse + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.SignalCustomCategoryListResponse? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.SignalCustomCategoryListResponse), + jsonSerializerContext) as global::ResembleAI.SignalCustomCategoryListResponse; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.SignalCustomCategoryListResponse? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.SignalCustomCategoryListResponse? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.SignalCustomCategoryListResponse), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.SignalCustomCategoryListResponse; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryListResponse.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryListResponse.g.cs new file mode 100644 index 0000000..86a4f30 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryListResponse.g.cs @@ -0,0 +1,83 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class SignalCustomCategoryListResponse + { + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("success")] + [global::System.Text.Json.Serialization.JsonRequired] + public required bool Success { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("settings")] + public global::ResembleAI.SignalSettings? Settings { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("built_in_categories")] + public global::System.Collections.Generic.IList? BuiltInCategories { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("custom_categories")] + public global::System.Collections.Generic.IList? CustomCategories { get; set; } + + /// + /// Null until the team's categories have been calibrated. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("calibration")] + public global::ResembleAI.SignalCalibration? Calibration { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// + /// + /// + /// + /// Null until the team's categories have been calibrated. + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public SignalCustomCategoryListResponse( + bool success, + global::ResembleAI.SignalSettings? settings, + global::System.Collections.Generic.IList? builtInCategories, + global::System.Collections.Generic.IList? customCategories, + global::ResembleAI.SignalCalibration? calibration) + { + this.Success = success; + this.Settings = settings; + this.BuiltInCategories = builtInCategories; + this.CustomCategories = customCategories; + this.Calibration = calibration; + } + + /// + /// Initializes a new instance of the class. + /// + public SignalCustomCategoryListResponse() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryOverlapsItems.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryOverlapsItems.Json.g.cs new file mode 100644 index 0000000..85ace6d --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryOverlapsItems.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class SignalCustomCategoryOverlapsItems + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.SignalCustomCategoryOverlapsItems? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.SignalCustomCategoryOverlapsItems), + jsonSerializerContext) as global::ResembleAI.SignalCustomCategoryOverlapsItems; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.SignalCustomCategoryOverlapsItems? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.SignalCustomCategoryOverlapsItems? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.SignalCustomCategoryOverlapsItems), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.SignalCustomCategoryOverlapsItems; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryOverlapsItems.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryOverlapsItems.g.cs new file mode 100644 index 0000000..cf292f1 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryOverlapsItems.g.cs @@ -0,0 +1,19 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class SignalCustomCategoryOverlapsItems + { + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryResponse.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryResponse.Json.g.cs new file mode 100644 index 0000000..9d36d5d --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryResponse.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class SignalCustomCategoryResponse + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.SignalCustomCategoryResponse? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.SignalCustomCategoryResponse), + jsonSerializerContext) as global::ResembleAI.SignalCustomCategoryResponse; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.SignalCustomCategoryResponse? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.SignalCustomCategoryResponse? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.SignalCustomCategoryResponse), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.SignalCustomCategoryResponse; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryResponse.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryResponse.g.cs new file mode 100644 index 0000000..03a204a --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryResponse.g.cs @@ -0,0 +1,55 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class SignalCustomCategoryResponse + { + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("success")] + [global::System.Text.Json.Serialization.JsonRequired] + public required bool Success { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("item")] + [global::System.Text.Json.Serialization.JsonRequired] + public required global::ResembleAI.SignalCustomCategory Item { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public SignalCustomCategoryResponse( + bool success, + global::ResembleAI.SignalCustomCategory item) + { + this.Success = success; + this.Item = item ?? throw new global::System.ArgumentNullException(nameof(item)); + } + + /// + /// Initializes a new instance of the class. + /// + public SignalCustomCategoryResponse() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryStatus.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryStatus.g.cs new file mode 100644 index 0000000..aace211 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryStatus.g.cs @@ -0,0 +1,69 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public enum SignalCustomCategoryStatus + { + /// + /// + /// + Embedding, + /// + /// + /// + Failed, + /// + /// + /// + NeedsMoreExamples, + /// + /// + /// + Pending, + /// + /// + /// + Ready, + } + + /// + /// Enum extensions to do fast conversions without the reflection. + /// + public static class SignalCustomCategoryStatusExtensions + { + /// + /// Converts an enum to a string. + /// + public static string ToValueString(this SignalCustomCategoryStatus value) + { + return value switch + { + SignalCustomCategoryStatus.Embedding => "embedding", + SignalCustomCategoryStatus.Failed => "failed", + SignalCustomCategoryStatus.NeedsMoreExamples => "needs_more_examples", + SignalCustomCategoryStatus.Pending => "pending", + SignalCustomCategoryStatus.Ready => "ready", + _ => throw new global::System.ArgumentOutOfRangeException(nameof(value), value, null), + }; + } + /// + /// Converts an string to a enum. + /// + public static SignalCustomCategoryStatus? ToEnum(string value) + { + return value switch + { + "embedding" => SignalCustomCategoryStatus.Embedding, + "failed" => SignalCustomCategoryStatus.Failed, + "needs_more_examples" => SignalCustomCategoryStatus.NeedsMoreExamples, + "pending" => SignalCustomCategoryStatus.Pending, + "ready" => SignalCustomCategoryStatus.Ready, + _ => null, + }; + } + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryUpdateRequest.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryUpdateRequest.Json.g.cs new file mode 100644 index 0000000..f160ace --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryUpdateRequest.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class SignalCustomCategoryUpdateRequest + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.SignalCustomCategoryUpdateRequest? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.SignalCustomCategoryUpdateRequest), + jsonSerializerContext) as global::ResembleAI.SignalCustomCategoryUpdateRequest; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.SignalCustomCategoryUpdateRequest? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.SignalCustomCategoryUpdateRequest? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.SignalCustomCategoryUpdateRequest), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.SignalCustomCategoryUpdateRequest; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryUpdateRequest.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryUpdateRequest.g.cs new file mode 100644 index 0000000..16e2278 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalCustomCategoryUpdateRequest.g.cs @@ -0,0 +1,80 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// Any subset of the create parameters. Supplying `scenarios` replaces the existing set and re-triggers embedding. + /// + public sealed partial class SignalCustomCategoryUpdateRequest + { + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("name")] + public string? Name { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("scenarios")] + public global::System.Collections.Generic.IList? Scenarios { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("description")] + public string? Description { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("icon")] + public string? Icon { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("enabled")] + public bool? Enabled { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// + /// + /// + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public SignalCustomCategoryUpdateRequest( + string? name, + global::System.Collections.Generic.IList? scenarios, + string? description, + string? icon, + bool? enabled) + { + this.Name = name; + this.Scenarios = scenarios; + this.Description = description; + this.Icon = icon; + this.Enabled = enabled; + } + + /// + /// Initializes a new instance of the class. + /// + public SignalCustomCategoryUpdateRequest() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalError.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalError.Json.g.cs new file mode 100644 index 0000000..d29b037 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalError.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class SignalError + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.SignalError? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.SignalError), + jsonSerializerContext) as global::ResembleAI.SignalError; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.SignalError? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.SignalError? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.SignalError), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.SignalError; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalError.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalError.g.cs new file mode 100644 index 0000000..28fd8bf --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalError.g.cs @@ -0,0 +1,64 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class SignalError + { + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("success")] + public bool? Success { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("message")] + public string? Message { get; set; } + + /// + /// Present on 413 responses. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("max_bytes")] + public long? MaxBytes { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// + /// + /// Present on 413 responses. + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public SignalError( + bool? success, + string? message, + long? maxBytes) + { + this.Success = success; + this.Message = message; + this.MaxBytes = maxBytes; + } + + /// + /// Initializes a new instance of the class. + /// + public SignalError() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalScenario.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalScenario.Json.g.cs new file mode 100644 index 0000000..b9408ac --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalScenario.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class SignalScenario + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.SignalScenario? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.SignalScenario), + jsonSerializerContext) as global::ResembleAI.SignalScenario; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.SignalScenario? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.SignalScenario? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.SignalScenario), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.SignalScenario; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalScenario.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalScenario.g.cs new file mode 100644 index 0000000..9a2efe7 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalScenario.g.cs @@ -0,0 +1,64 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class SignalScenario + { + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("id")] + public int? Id { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("text")] + public string? Text { get; set; } + + /// + /// Whether this example has finished embedding. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("embedded")] + public bool? Embedded { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// + /// + /// Whether this example has finished embedding. + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public SignalScenario( + int? id, + string? text, + bool? embedded) + { + this.Id = id; + this.Text = text; + this.Embedded = embedded; + } + + /// + /// Initializes a new instance of the class. + /// + public SignalScenario() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalScoreItem.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalScoreItem.Json.g.cs new file mode 100644 index 0000000..5d789d3 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalScoreItem.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class SignalScoreItem + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.SignalScoreItem? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.SignalScoreItem), + jsonSerializerContext) as global::ResembleAI.SignalScoreItem; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.SignalScoreItem? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.SignalScoreItem? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.SignalScoreItem), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.SignalScoreItem; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalScoreItem.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalScoreItem.g.cs new file mode 100644 index 0000000..5e2cf0d --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalScoreItem.g.cs @@ -0,0 +1,150 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class SignalScoreItem + { + /// + /// Submission identifier, used with `DELETE /signal/{id}`. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("id")] + public int? Id { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("input_modality")] + [global::System.Text.Json.Serialization.JsonConverter(typeof(global::ResembleAI.JsonConverters.SignalScoreItemInputModalityJsonConverter))] + [global::System.Text.Json.Serialization.JsonRequired] + public required global::ResembleAI.SignalScoreItemInputModality InputModality { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("verdict")] + [global::System.Text.Json.Serialization.JsonConverter(typeof(global::ResembleAI.JsonConverters.SignalScoreItemVerdictJsonConverter))] + [global::System.Text.Json.Serialization.JsonRequired] + public required global::ResembleAI.SignalScoreItemVerdict Verdict { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("top_category")] + public global::ResembleAI.SignalCategoryScore? TopCategory { get; set; } + + /// + /// Highest-scoring categories, including the top category. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("category_scores")] + public global::System.Collections.Generic.IList? CategoryScores { get; set; } + + /// + /// How strongly the content matched benign, non-fraud content. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("benign_score")] + public double? BenignScore { get; set; } + + /// + /// Gap between the top category score and the runner-up. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("margin_over_second")] + public double? MarginOverSecond { get; set; } + + /// + /// Sample phrases from the top category, useful for explaining the verdict. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("examples")] + public global::System.Collections.Generic.IList? Examples { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("top_matches")] + public global::System.Collections.Generic.IList? TopMatches { get; set; } + + /// + /// Media duration for audio and video. Null for text and image. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("duration_seconds")] + public double? DurationSeconds { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("created_at")] + public global::System.DateTime? CreatedAt { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// + /// + /// Submission identifier, used with `DELETE /signal/{id}`. + /// + /// + /// + /// Highest-scoring categories, including the top category. + /// + /// + /// How strongly the content matched benign, non-fraud content. + /// + /// + /// Gap between the top category score and the runner-up. + /// + /// + /// Sample phrases from the top category, useful for explaining the verdict. + /// + /// + /// + /// Media duration for audio and video. Null for text and image. + /// + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public SignalScoreItem( + global::ResembleAI.SignalScoreItemInputModality inputModality, + global::ResembleAI.SignalScoreItemVerdict verdict, + int? id, + global::ResembleAI.SignalCategoryScore? topCategory, + global::System.Collections.Generic.IList? categoryScores, + double? benignScore, + double? marginOverSecond, + global::System.Collections.Generic.IList? examples, + global::System.Collections.Generic.IList? topMatches, + double? durationSeconds, + global::System.DateTime? createdAt) + { + this.Id = id; + this.InputModality = inputModality; + this.Verdict = verdict; + this.TopCategory = topCategory; + this.CategoryScores = categoryScores; + this.BenignScore = benignScore; + this.MarginOverSecond = marginOverSecond; + this.Examples = examples; + this.TopMatches = topMatches; + this.DurationSeconds = durationSeconds; + this.CreatedAt = createdAt; + } + + /// + /// Initializes a new instance of the class. + /// + public SignalScoreItem() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalScoreItemInputModality.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalScoreItemInputModality.g.cs new file mode 100644 index 0000000..1936084 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalScoreItemInputModality.g.cs @@ -0,0 +1,63 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public enum SignalScoreItemInputModality + { + /// + /// + /// + Audio, + /// + /// + /// + Image, + /// + /// + /// + Text, + /// + /// + /// + Video, + } + + /// + /// Enum extensions to do fast conversions without the reflection. + /// + public static class SignalScoreItemInputModalityExtensions + { + /// + /// Converts an enum to a string. + /// + public static string ToValueString(this SignalScoreItemInputModality value) + { + return value switch + { + SignalScoreItemInputModality.Audio => "audio", + SignalScoreItemInputModality.Image => "image", + SignalScoreItemInputModality.Text => "text", + SignalScoreItemInputModality.Video => "video", + _ => throw new global::System.ArgumentOutOfRangeException(nameof(value), value, null), + }; + } + /// + /// Converts an string to a enum. + /// + public static SignalScoreItemInputModality? ToEnum(string value) + { + return value switch + { + "audio" => SignalScoreItemInputModality.Audio, + "image" => SignalScoreItemInputModality.Image, + "text" => SignalScoreItemInputModality.Text, + "video" => SignalScoreItemInputModality.Video, + _ => null, + }; + } + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalScoreItemVerdict.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalScoreItemVerdict.g.cs new file mode 100644 index 0000000..71177ab --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalScoreItemVerdict.g.cs @@ -0,0 +1,57 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public enum SignalScoreItemVerdict + { + /// + /// + /// + Fraud, + /// + /// + /// + Safe, + /// + /// + /// + Suspicious, + } + + /// + /// Enum extensions to do fast conversions without the reflection. + /// + public static class SignalScoreItemVerdictExtensions + { + /// + /// Converts an enum to a string. + /// + public static string ToValueString(this SignalScoreItemVerdict value) + { + return value switch + { + SignalScoreItemVerdict.Fraud => "fraud", + SignalScoreItemVerdict.Safe => "safe", + SignalScoreItemVerdict.Suspicious => "suspicious", + _ => throw new global::System.ArgumentOutOfRangeException(nameof(value), value, null), + }; + } + /// + /// Converts an string to a enum. + /// + public static SignalScoreItemVerdict? ToEnum(string value) + { + return value switch + { + "fraud" => SignalScoreItemVerdict.Fraud, + "safe" => SignalScoreItemVerdict.Safe, + "suspicious" => SignalScoreItemVerdict.Suspicious, + _ => null, + }; + } + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalScoreResponse.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalScoreResponse.Json.g.cs new file mode 100644 index 0000000..c66741a --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalScoreResponse.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class SignalScoreResponse + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.SignalScoreResponse? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.SignalScoreResponse), + jsonSerializerContext) as global::ResembleAI.SignalScoreResponse; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.SignalScoreResponse? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.SignalScoreResponse? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.SignalScoreResponse), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.SignalScoreResponse; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalScoreResponse.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalScoreResponse.g.cs new file mode 100644 index 0000000..a868408 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalScoreResponse.g.cs @@ -0,0 +1,55 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class SignalScoreResponse + { + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("success")] + [global::System.Text.Json.Serialization.JsonRequired] + public required bool Success { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("item")] + [global::System.Text.Json.Serialization.JsonRequired] + public required global::ResembleAI.SignalScoreItem Item { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public SignalScoreResponse( + bool success, + global::ResembleAI.SignalScoreItem item) + { + this.Success = success; + this.Item = item ?? throw new global::System.ArgumentNullException(nameof(item)); + } + + /// + /// Initializes a new instance of the class. + /// + public SignalScoreResponse() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSettings.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSettings.Json.g.cs new file mode 100644 index 0000000..4ecd6fa --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSettings.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class SignalSettings + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.SignalSettings? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.SignalSettings), + jsonSerializerContext) as global::ResembleAI.SignalSettings; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.SignalSettings? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.SignalSettings? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.SignalSettings), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.SignalSettings; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSettings.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSettings.g.cs new file mode 100644 index 0000000..644a830 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSettings.g.cs @@ -0,0 +1,46 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class SignalSettings + { + /// + /// When false, scoring uses only the team's custom categories. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("use_builtin_categories")] + public bool? UseBuiltinCategories { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// When false, scoring uses only the team's custom categories. + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public SignalSettings( + bool? useBuiltinCategories) + { + this.UseBuiltinCategories = useBuiltinCategories; + } + + /// + /// Initializes a new instance of the class. + /// + public SignalSettings() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSettingsResponse.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSettingsResponse.Json.g.cs new file mode 100644 index 0000000..f31bb1c --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSettingsResponse.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class SignalSettingsResponse + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.SignalSettingsResponse? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.SignalSettingsResponse), + jsonSerializerContext) as global::ResembleAI.SignalSettingsResponse; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.SignalSettingsResponse? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.SignalSettingsResponse? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.SignalSettingsResponse), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.SignalSettingsResponse; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSettingsResponse.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSettingsResponse.g.cs new file mode 100644 index 0000000..d044741 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSettingsResponse.g.cs @@ -0,0 +1,55 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class SignalSettingsResponse + { + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("success")] + [global::System.Text.Json.Serialization.JsonRequired] + public required bool Success { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("settings")] + [global::System.Text.Json.Serialization.JsonRequired] + public required global::ResembleAI.SignalSettings Settings { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public SignalSettingsResponse( + bool success, + global::ResembleAI.SignalSettings settings) + { + this.Success = success; + this.Settings = settings ?? throw new global::System.ArgumentNullException(nameof(settings)); + } + + /// + /// Initializes a new instance of the class. + /// + public SignalSettingsResponse() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSettingsUpdateRequest.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSettingsUpdateRequest.Json.g.cs new file mode 100644 index 0000000..b969102 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSettingsUpdateRequest.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class SignalSettingsUpdateRequest + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.SignalSettingsUpdateRequest? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.SignalSettingsUpdateRequest), + jsonSerializerContext) as global::ResembleAI.SignalSettingsUpdateRequest; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.SignalSettingsUpdateRequest? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.SignalSettingsUpdateRequest? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.SignalSettingsUpdateRequest), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.SignalSettingsUpdateRequest; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSettingsUpdateRequest.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSettingsUpdateRequest.g.cs new file mode 100644 index 0000000..383528b --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSettingsUpdateRequest.g.cs @@ -0,0 +1,46 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class SignalSettingsUpdateRequest + { + /// + /// When false, scoring uses only the team's custom categories. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("use_builtin_categories")] + public bool? UseBuiltinCategories { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// When false, scoring uses only the team's custom categories. + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public SignalSettingsUpdateRequest( + bool? useBuiltinCategories) + { + this.UseBuiltinCategories = useBuiltinCategories; + } + + /// + /// Initializes a new instance of the class. + /// + public SignalSettingsUpdateRequest() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSubmission.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSubmission.Json.g.cs new file mode 100644 index 0000000..c266bd0 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSubmission.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class SignalSubmission + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.SignalSubmission? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.SignalSubmission), + jsonSerializerContext) as global::ResembleAI.SignalSubmission; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.SignalSubmission? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.SignalSubmission? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.SignalSubmission), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.SignalSubmission; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSubmission.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSubmission.g.cs new file mode 100644 index 0000000..3308bc3 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSubmission.g.cs @@ -0,0 +1,142 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class SignalSubmission + { + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("id")] + public int? Id { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("input_modality")] + [global::System.Text.Json.Serialization.JsonConverter(typeof(global::ResembleAI.JsonConverters.SignalSubmissionInputModalityJsonConverter))] + public global::ResembleAI.SignalSubmissionInputModality? InputModality { get; set; } + + /// + /// Original filename for file submissions. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("filename")] + public string? Filename { get; set; } + + /// + /// MIME type for file submissions. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("content_type")] + public string? ContentType { get; set; } + + /// + /// Truncated copy of the submitted text. Null for file submissions. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("text_preview")] + public string? TextPreview { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("verdict")] + [global::System.Text.Json.Serialization.JsonConverter(typeof(global::ResembleAI.JsonConverters.SignalSubmissionVerdictJsonConverter))] + public global::ResembleAI.SignalSubmissionVerdict? Verdict { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("top_category")] + public global::ResembleAI.SignalCategoryScore? TopCategory { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("benign_score")] + public double? BenignScore { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("margin_over_second")] + public double? MarginOverSecond { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("response")] + public global::ResembleAI.SignalScoreItem? Response { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("created_at")] + public global::System.DateTime? CreatedAt { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// + /// + /// Original filename for file submissions. + /// + /// + /// MIME type for file submissions. + /// + /// + /// Truncated copy of the submitted text. Null for file submissions. + /// + /// + /// + /// + /// + /// + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public SignalSubmission( + int? id, + global::ResembleAI.SignalSubmissionInputModality? inputModality, + string? filename, + string? contentType, + string? textPreview, + global::ResembleAI.SignalSubmissionVerdict? verdict, + global::ResembleAI.SignalCategoryScore? topCategory, + double? benignScore, + double? marginOverSecond, + global::ResembleAI.SignalScoreItem? response, + global::System.DateTime? createdAt) + { + this.Id = id; + this.InputModality = inputModality; + this.Filename = filename; + this.ContentType = contentType; + this.TextPreview = textPreview; + this.Verdict = verdict; + this.TopCategory = topCategory; + this.BenignScore = benignScore; + this.MarginOverSecond = marginOverSecond; + this.Response = response; + this.CreatedAt = createdAt; + } + + /// + /// Initializes a new instance of the class. + /// + public SignalSubmission() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSubmissionInputModality.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSubmissionInputModality.g.cs new file mode 100644 index 0000000..1e65959 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSubmissionInputModality.g.cs @@ -0,0 +1,63 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public enum SignalSubmissionInputModality + { + /// + /// + /// + Audio, + /// + /// + /// + Image, + /// + /// + /// + Text, + /// + /// + /// + Video, + } + + /// + /// Enum extensions to do fast conversions without the reflection. + /// + public static class SignalSubmissionInputModalityExtensions + { + /// + /// Converts an enum to a string. + /// + public static string ToValueString(this SignalSubmissionInputModality value) + { + return value switch + { + SignalSubmissionInputModality.Audio => "audio", + SignalSubmissionInputModality.Image => "image", + SignalSubmissionInputModality.Text => "text", + SignalSubmissionInputModality.Video => "video", + _ => throw new global::System.ArgumentOutOfRangeException(nameof(value), value, null), + }; + } + /// + /// Converts an string to a enum. + /// + public static SignalSubmissionInputModality? ToEnum(string value) + { + return value switch + { + "audio" => SignalSubmissionInputModality.Audio, + "image" => SignalSubmissionInputModality.Image, + "text" => SignalSubmissionInputModality.Text, + "video" => SignalSubmissionInputModality.Video, + _ => null, + }; + } + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSubmissionListResponse.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSubmissionListResponse.Json.g.cs new file mode 100644 index 0000000..5df44cb --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSubmissionListResponse.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class SignalSubmissionListResponse + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.SignalSubmissionListResponse? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.SignalSubmissionListResponse), + jsonSerializerContext) as global::ResembleAI.SignalSubmissionListResponse; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.SignalSubmissionListResponse? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.SignalSubmissionListResponse? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.SignalSubmissionListResponse), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.SignalSubmissionListResponse; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSubmissionListResponse.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSubmissionListResponse.g.cs new file mode 100644 index 0000000..3fbf5c9 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSubmissionListResponse.g.cs @@ -0,0 +1,91 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class SignalSubmissionListResponse + { + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("success")] + [global::System.Text.Json.Serialization.JsonRequired] + public required bool Success { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("items")] + [global::System.Text.Json.Serialization.JsonRequired] + public required global::System.Collections.Generic.IList Items { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("page")] + public int? Page { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("per_page")] + public int? PerPage { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("total_count")] + public int? TotalCount { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("total_pages")] + public int? TotalPages { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// + /// + /// + /// + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public SignalSubmissionListResponse( + bool success, + global::System.Collections.Generic.IList items, + int? page, + int? perPage, + int? totalCount, + int? totalPages) + { + this.Success = success; + this.Items = items ?? throw new global::System.ArgumentNullException(nameof(items)); + this.Page = page; + this.PerPage = perPage; + this.TotalCount = totalCount; + this.TotalPages = totalPages; + } + + /// + /// Initializes a new instance of the class. + /// + public SignalSubmissionListResponse() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSubmissionVerdict.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSubmissionVerdict.g.cs new file mode 100644 index 0000000..a07b854 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSubmissionVerdict.g.cs @@ -0,0 +1,57 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public enum SignalSubmissionVerdict + { + /// + /// + /// + Fraud, + /// + /// + /// + Safe, + /// + /// + /// + Suspicious, + } + + /// + /// Enum extensions to do fast conversions without the reflection. + /// + public static class SignalSubmissionVerdictExtensions + { + /// + /// Converts an enum to a string. + /// + public static string ToValueString(this SignalSubmissionVerdict value) + { + return value switch + { + SignalSubmissionVerdict.Fraud => "fraud", + SignalSubmissionVerdict.Safe => "safe", + SignalSubmissionVerdict.Suspicious => "suspicious", + _ => throw new global::System.ArgumentOutOfRangeException(nameof(value), value, null), + }; + } + /// + /// Converts an string to a enum. + /// + public static SignalSubmissionVerdict? ToEnum(string value) + { + return value switch + { + "fraud" => SignalSubmissionVerdict.Fraud, + "safe" => SignalSubmissionVerdict.Safe, + "suspicious" => SignalSubmissionVerdict.Suspicious, + _ => null, + }; + } + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSuccessResponse.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSuccessResponse.Json.g.cs new file mode 100644 index 0000000..fd51e82 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSuccessResponse.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class SignalSuccessResponse + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.SignalSuccessResponse? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.SignalSuccessResponse), + jsonSerializerContext) as global::ResembleAI.SignalSuccessResponse; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.SignalSuccessResponse? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.SignalSuccessResponse? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.SignalSuccessResponse), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.SignalSuccessResponse; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSuccessResponse.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSuccessResponse.g.cs new file mode 100644 index 0000000..d6f2d54 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalSuccessResponse.g.cs @@ -0,0 +1,45 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class SignalSuccessResponse + { + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("success")] + [global::System.Text.Json.Serialization.JsonRequired] + public required bool Success { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public SignalSuccessResponse( + bool success) + { + this.Success = success; + } + + /// + /// Initializes a new instance of the class. + /// + public SignalSuccessResponse() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalTopMatch.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalTopMatch.Json.g.cs new file mode 100644 index 0000000..3faefae --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalTopMatch.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public sealed partial class SignalTopMatch + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.SignalTopMatch? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.SignalTopMatch), + jsonSerializerContext) as global::ResembleAI.SignalTopMatch; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.SignalTopMatch? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.SignalTopMatch? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.SignalTopMatch), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.SignalTopMatch; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalTopMatch.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalTopMatch.g.cs new file mode 100644 index 0000000..5a1e0fd --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.SignalTopMatch.g.cs @@ -0,0 +1,66 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public sealed partial class SignalTopMatch + { + /// + /// Category the matched example belongs to. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("category")] + public string? Category { get; set; } + + /// + /// The individual training example that matched. + /// + [global::System.Text.Json.Serialization.JsonPropertyName("text")] + public string? Text { get; set; } + + /// + /// + /// + [global::System.Text.Json.Serialization.JsonPropertyName("score")] + public double? Score { get; set; } + + /// + /// Additional properties that are not explicitly defined in the schema + /// + [global::System.Text.Json.Serialization.JsonExtensionData] + public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary(); + + /// + /// Initializes a new instance of the class. + /// + /// + /// Category the matched example belongs to. + /// + /// + /// The individual training example that matched. + /// + /// +#if NET7_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers] +#endif + public SignalTopMatch( + string? category, + string? text, + double? score) + { + this.Category = category; + this.Text = text; + this.Score = score; + } + + /// + /// Initializes a new instance of the class. + /// + public SignalTopMatch() + { + } + + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.UpdateBillingAutoReloadRequestUnprocessableEntityError.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.UpdateBillingAutoReloadRequestUnprocessableEntityError.Json.g.cs new file mode 100644 index 0000000..507acc4 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.UpdateBillingAutoReloadRequestUnprocessableEntityError.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public readonly partial struct UpdateBillingAutoReloadRequestUnprocessableEntityError + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.UpdateBillingAutoReloadRequestUnprocessableEntityError? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.UpdateBillingAutoReloadRequestUnprocessableEntityError), + jsonSerializerContext) as global::ResembleAI.UpdateBillingAutoReloadRequestUnprocessableEntityError?; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.UpdateBillingAutoReloadRequestUnprocessableEntityError? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.UpdateBillingAutoReloadRequestUnprocessableEntityError? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.UpdateBillingAutoReloadRequestUnprocessableEntityError), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.UpdateBillingAutoReloadRequestUnprocessableEntityError?; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.UpdateBillingAutoReloadRequestUnprocessableEntityError.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.UpdateBillingAutoReloadRequestUnprocessableEntityError.g.cs new file mode 100644 index 0000000..4a4d07b --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.UpdateBillingAutoReloadRequestUnprocessableEntityError.g.cs @@ -0,0 +1,295 @@ +#pragma warning disable CS0618 // Type or member is obsolete + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public readonly partial struct UpdateBillingAutoReloadRequestUnprocessableEntityError : global::System.IEquatable + { + /// + /// + /// +#if NET6_0_OR_GREATER + public global::ResembleAI.BillingError? BillingError { get; init; } +#else + public global::ResembleAI.BillingError? BillingError { get; } +#endif + + /// + /// + /// +#if NET6_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.MemberNotNullWhen(true, nameof(BillingError))] +#endif + public bool IsBillingError => BillingError != null; + + /// + /// + /// + public bool TryPickBillingError( +#if NET6_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.NotNullWhen(true)] +#endif + out global::ResembleAI.BillingError? value) + { + value = BillingError; + return IsBillingError; + } + + /// + /// + /// + public global::ResembleAI.BillingError PickBillingError() => IsBillingError + ? BillingError! + : throw new global::System.InvalidOperationException($"Expected union variant 'BillingError' but the value was {ToString()}."); + + /// + /// + /// +#if NET6_0_OR_GREATER + public global::ResembleAI.BillingValidationErrors? BillingValidationErrors { get; init; } +#else + public global::ResembleAI.BillingValidationErrors? BillingValidationErrors { get; } +#endif + + /// + /// + /// +#if NET6_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.MemberNotNullWhen(true, nameof(BillingValidationErrors))] +#endif + public bool IsBillingValidationErrors => BillingValidationErrors != null; + + /// + /// + /// + public bool TryPickBillingValidationErrors( +#if NET6_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.NotNullWhen(true)] +#endif + out global::ResembleAI.BillingValidationErrors? value) + { + value = BillingValidationErrors; + return IsBillingValidationErrors; + } + + /// + /// + /// + public global::ResembleAI.BillingValidationErrors PickBillingValidationErrors() => IsBillingValidationErrors + ? BillingValidationErrors! + : throw new global::System.InvalidOperationException($"Expected union variant 'BillingValidationErrors' but the value was {ToString()}."); + /// + /// + /// + public static implicit operator UpdateBillingAutoReloadRequestUnprocessableEntityError(global::ResembleAI.BillingError value) => new UpdateBillingAutoReloadRequestUnprocessableEntityError((global::ResembleAI.BillingError?)value); + + /// + /// + /// + public static implicit operator global::ResembleAI.BillingError?(UpdateBillingAutoReloadRequestUnprocessableEntityError @this) => @this.BillingError; + + /// + /// + /// + public UpdateBillingAutoReloadRequestUnprocessableEntityError(global::ResembleAI.BillingError? value) + { + BillingError = value; + } + + /// + /// + /// + public static UpdateBillingAutoReloadRequestUnprocessableEntityError FromBillingError(global::ResembleAI.BillingError? value) => new UpdateBillingAutoReloadRequestUnprocessableEntityError(value); + + /// + /// + /// + public static implicit operator UpdateBillingAutoReloadRequestUnprocessableEntityError(global::ResembleAI.BillingValidationErrors value) => new UpdateBillingAutoReloadRequestUnprocessableEntityError((global::ResembleAI.BillingValidationErrors?)value); + + /// + /// + /// + public static implicit operator global::ResembleAI.BillingValidationErrors?(UpdateBillingAutoReloadRequestUnprocessableEntityError @this) => @this.BillingValidationErrors; + + /// + /// + /// + public UpdateBillingAutoReloadRequestUnprocessableEntityError(global::ResembleAI.BillingValidationErrors? value) + { + BillingValidationErrors = value; + } + + /// + /// + /// + public static UpdateBillingAutoReloadRequestUnprocessableEntityError FromBillingValidationErrors(global::ResembleAI.BillingValidationErrors? value) => new UpdateBillingAutoReloadRequestUnprocessableEntityError(value); + + /// + /// + /// + public UpdateBillingAutoReloadRequestUnprocessableEntityError( + global::ResembleAI.BillingError? billingError, + global::ResembleAI.BillingValidationErrors? billingValidationErrors + ) + { + BillingError = billingError; + BillingValidationErrors = billingValidationErrors; + } + + /// + /// + /// + public object? Object => + BillingValidationErrors as object ?? + BillingError as object + ; + + /// + /// + /// + public override string? ToString() => + BillingError?.ToString() ?? + BillingValidationErrors?.ToString() + ; + + /// + /// + /// + public bool Validate() + { + return IsBillingError && !IsBillingValidationErrors || !IsBillingError && IsBillingValidationErrors; + } + + /// + /// + /// + public TResult? Match( + global::System.Func? billingError = null, + global::System.Func? billingValidationErrors = null, + bool validate = true) + { + if (validate) + { + Validate(); + } + + if (IsBillingError && billingError != null) + { + return billingError(BillingError!); + } + else if (IsBillingValidationErrors && billingValidationErrors != null) + { + return billingValidationErrors(BillingValidationErrors!); + } + + return default(TResult); + } + + /// + /// + /// + public void Match( + global::System.Action? billingError = null, + + global::System.Action? billingValidationErrors = null, + bool validate = true) + { + if (validate) + { + Validate(); + } + + if (IsBillingError) + { + billingError?.Invoke(BillingError!); + } + else if (IsBillingValidationErrors) + { + billingValidationErrors?.Invoke(BillingValidationErrors!); + } + } + + /// + /// + /// + public void Switch( + global::System.Action? billingError = null, + global::System.Action? billingValidationErrors = null, + bool validate = true) + { + if (validate) + { + Validate(); + } + + if (IsBillingError) + { + billingError?.Invoke(BillingError!); + } + else if (IsBillingValidationErrors) + { + billingValidationErrors?.Invoke(BillingValidationErrors!); + } + } + + /// + /// + /// + public override int GetHashCode() + { + var fields = new object?[] + { + BillingError, + typeof(global::ResembleAI.BillingError), + BillingValidationErrors, + typeof(global::ResembleAI.BillingValidationErrors), + }; + const int offset = unchecked((int)2166136261); + const int prime = 16777619; + static int HashCodeAggregator(int hashCode, object? value) => value == null + ? (hashCode ^ 0) * prime + : (hashCode ^ value.GetHashCode()) * prime; + + return global::System.Linq.Enumerable.Aggregate(fields, offset, HashCodeAggregator); + } + + /// + /// + /// + public bool Equals(UpdateBillingAutoReloadRequestUnprocessableEntityError other) + { + return + global::System.Collections.Generic.EqualityComparer.Default.Equals(BillingError, other.BillingError) && + global::System.Collections.Generic.EqualityComparer.Default.Equals(BillingValidationErrors, other.BillingValidationErrors) + ; + } + + /// + /// + /// + public static bool operator ==(UpdateBillingAutoReloadRequestUnprocessableEntityError obj1, UpdateBillingAutoReloadRequestUnprocessableEntityError obj2) + { + return global::System.Collections.Generic.EqualityComparer.Default.Equals(obj1, obj2); + } + + /// + /// + /// + public static bool operator !=(UpdateBillingAutoReloadRequestUnprocessableEntityError obj1, UpdateBillingAutoReloadRequestUnprocessableEntityError obj2) + { + return !(obj1 == obj2); + } + + /// + /// + /// + public override bool Equals(object? obj) + { + return obj is UpdateBillingAutoReloadRequestUnprocessableEntityError o && Equals(o); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.UpdateBillingSubscriptionProductsRequestUnprocessableEntityError.Json.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.UpdateBillingSubscriptionProductsRequestUnprocessableEntityError.Json.g.cs new file mode 100644 index 0000000..75a3e5c --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.UpdateBillingSubscriptionProductsRequestUnprocessableEntityError.Json.g.cs @@ -0,0 +1,141 @@ +#nullable enable + +namespace ResembleAI +{ + public readonly partial struct UpdateBillingSubscriptionProductsRequestUnprocessableEntityError + { + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerContext. + /// + public string ToJson( + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Serialize( + this, + this.GetType(), + jsonSerializerContext); + } + + /// + /// Serializes the current instance to a JSON string using the generated default JsonSerializerContext. + /// + public string ToJson() + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public string ToJson( + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return ToJson(global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Serialize( + this, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerContext. + /// + public static global::ResembleAI.UpdateBillingSubscriptionProductsRequestUnprocessableEntityError? FromJson( + string json, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + typeof(global::ResembleAI.UpdateBillingSubscriptionProductsRequestUnprocessableEntityError), + jsonSerializerContext) as global::ResembleAI.UpdateBillingSubscriptionProductsRequestUnprocessableEntityError?; + } + + /// + /// Deserializes a JSON string using the generated default JsonSerializerContext. + /// + public static global::ResembleAI.UpdateBillingSubscriptionProductsRequestUnprocessableEntityError? FromJson( + string json) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON string using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::ResembleAI.UpdateBillingSubscriptionProductsRequestUnprocessableEntityError? FromJson( + string json, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJson( + json, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.Deserialize( + json, + jsonSerializerOptions); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerContext. + /// + public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext) + { + return (await global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + typeof(global::ResembleAI.UpdateBillingSubscriptionProductsRequestUnprocessableEntityError), + jsonSerializerContext).ConfigureAwait(false)) as global::ResembleAI.UpdateBillingSubscriptionProductsRequestUnprocessableEntityError?; + } + + /// + /// Deserializes a JSON stream using the generated default JsonSerializerContext. + /// + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + /// + /// Deserializes a JSON stream using the provided JsonSerializerOptions. + /// +#if NET8_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")] + [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")] +#endif + public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync( + global::System.IO.Stream jsonStream, + global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null) + { + if (jsonSerializerOptions is null) + { + return FromJsonStreamAsync( + jsonStream, + global::ResembleAI.SourceGenerationContext.Default); + } + + return global::System.Text.Json.JsonSerializer.DeserializeAsync( + jsonStream, + jsonSerializerOptions); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.Models.UpdateBillingSubscriptionProductsRequestUnprocessableEntityError.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.Models.UpdateBillingSubscriptionProductsRequestUnprocessableEntityError.g.cs new file mode 100644 index 0000000..621fef0 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.Models.UpdateBillingSubscriptionProductsRequestUnprocessableEntityError.g.cs @@ -0,0 +1,295 @@ +#pragma warning disable CS0618 // Type or member is obsolete + +#nullable enable + +namespace ResembleAI +{ + /// + /// + /// + public readonly partial struct UpdateBillingSubscriptionProductsRequestUnprocessableEntityError : global::System.IEquatable + { + /// + /// + /// +#if NET6_0_OR_GREATER + public global::ResembleAI.BillingError? BillingError { get; init; } +#else + public global::ResembleAI.BillingError? BillingError { get; } +#endif + + /// + /// + /// +#if NET6_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.MemberNotNullWhen(true, nameof(BillingError))] +#endif + public bool IsBillingError => BillingError != null; + + /// + /// + /// + public bool TryPickBillingError( +#if NET6_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.NotNullWhen(true)] +#endif + out global::ResembleAI.BillingError? value) + { + value = BillingError; + return IsBillingError; + } + + /// + /// + /// + public global::ResembleAI.BillingError PickBillingError() => IsBillingError + ? BillingError! + : throw new global::System.InvalidOperationException($"Expected union variant 'BillingError' but the value was {ToString()}."); + + /// + /// + /// +#if NET6_0_OR_GREATER + public global::ResembleAI.BillingValidationErrors? BillingValidationErrors { get; init; } +#else + public global::ResembleAI.BillingValidationErrors? BillingValidationErrors { get; } +#endif + + /// + /// + /// +#if NET6_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.MemberNotNullWhen(true, nameof(BillingValidationErrors))] +#endif + public bool IsBillingValidationErrors => BillingValidationErrors != null; + + /// + /// + /// + public bool TryPickBillingValidationErrors( +#if NET6_0_OR_GREATER + [global::System.Diagnostics.CodeAnalysis.NotNullWhen(true)] +#endif + out global::ResembleAI.BillingValidationErrors? value) + { + value = BillingValidationErrors; + return IsBillingValidationErrors; + } + + /// + /// + /// + public global::ResembleAI.BillingValidationErrors PickBillingValidationErrors() => IsBillingValidationErrors + ? BillingValidationErrors! + : throw new global::System.InvalidOperationException($"Expected union variant 'BillingValidationErrors' but the value was {ToString()}."); + /// + /// + /// + public static implicit operator UpdateBillingSubscriptionProductsRequestUnprocessableEntityError(global::ResembleAI.BillingError value) => new UpdateBillingSubscriptionProductsRequestUnprocessableEntityError((global::ResembleAI.BillingError?)value); + + /// + /// + /// + public static implicit operator global::ResembleAI.BillingError?(UpdateBillingSubscriptionProductsRequestUnprocessableEntityError @this) => @this.BillingError; + + /// + /// + /// + public UpdateBillingSubscriptionProductsRequestUnprocessableEntityError(global::ResembleAI.BillingError? value) + { + BillingError = value; + } + + /// + /// + /// + public static UpdateBillingSubscriptionProductsRequestUnprocessableEntityError FromBillingError(global::ResembleAI.BillingError? value) => new UpdateBillingSubscriptionProductsRequestUnprocessableEntityError(value); + + /// + /// + /// + public static implicit operator UpdateBillingSubscriptionProductsRequestUnprocessableEntityError(global::ResembleAI.BillingValidationErrors value) => new UpdateBillingSubscriptionProductsRequestUnprocessableEntityError((global::ResembleAI.BillingValidationErrors?)value); + + /// + /// + /// + public static implicit operator global::ResembleAI.BillingValidationErrors?(UpdateBillingSubscriptionProductsRequestUnprocessableEntityError @this) => @this.BillingValidationErrors; + + /// + /// + /// + public UpdateBillingSubscriptionProductsRequestUnprocessableEntityError(global::ResembleAI.BillingValidationErrors? value) + { + BillingValidationErrors = value; + } + + /// + /// + /// + public static UpdateBillingSubscriptionProductsRequestUnprocessableEntityError FromBillingValidationErrors(global::ResembleAI.BillingValidationErrors? value) => new UpdateBillingSubscriptionProductsRequestUnprocessableEntityError(value); + + /// + /// + /// + public UpdateBillingSubscriptionProductsRequestUnprocessableEntityError( + global::ResembleAI.BillingError? billingError, + global::ResembleAI.BillingValidationErrors? billingValidationErrors + ) + { + BillingError = billingError; + BillingValidationErrors = billingValidationErrors; + } + + /// + /// + /// + public object? Object => + BillingValidationErrors as object ?? + BillingError as object + ; + + /// + /// + /// + public override string? ToString() => + BillingError?.ToString() ?? + BillingValidationErrors?.ToString() + ; + + /// + /// + /// + public bool Validate() + { + return IsBillingError && !IsBillingValidationErrors || !IsBillingError && IsBillingValidationErrors; + } + + /// + /// + /// + public TResult? Match( + global::System.Func? billingError = null, + global::System.Func? billingValidationErrors = null, + bool validate = true) + { + if (validate) + { + Validate(); + } + + if (IsBillingError && billingError != null) + { + return billingError(BillingError!); + } + else if (IsBillingValidationErrors && billingValidationErrors != null) + { + return billingValidationErrors(BillingValidationErrors!); + } + + return default(TResult); + } + + /// + /// + /// + public void Match( + global::System.Action? billingError = null, + + global::System.Action? billingValidationErrors = null, + bool validate = true) + { + if (validate) + { + Validate(); + } + + if (IsBillingError) + { + billingError?.Invoke(BillingError!); + } + else if (IsBillingValidationErrors) + { + billingValidationErrors?.Invoke(BillingValidationErrors!); + } + } + + /// + /// + /// + public void Switch( + global::System.Action? billingError = null, + global::System.Action? billingValidationErrors = null, + bool validate = true) + { + if (validate) + { + Validate(); + } + + if (IsBillingError) + { + billingError?.Invoke(BillingError!); + } + else if (IsBillingValidationErrors) + { + billingValidationErrors?.Invoke(BillingValidationErrors!); + } + } + + /// + /// + /// + public override int GetHashCode() + { + var fields = new object?[] + { + BillingError, + typeof(global::ResembleAI.BillingError), + BillingValidationErrors, + typeof(global::ResembleAI.BillingValidationErrors), + }; + const int offset = unchecked((int)2166136261); + const int prime = 16777619; + static int HashCodeAggregator(int hashCode, object? value) => value == null + ? (hashCode ^ 0) * prime + : (hashCode ^ value.GetHashCode()) * prime; + + return global::System.Linq.Enumerable.Aggregate(fields, offset, HashCodeAggregator); + } + + /// + /// + /// + public bool Equals(UpdateBillingSubscriptionProductsRequestUnprocessableEntityError other) + { + return + global::System.Collections.Generic.EqualityComparer.Default.Equals(BillingError, other.BillingError) && + global::System.Collections.Generic.EqualityComparer.Default.Equals(BillingValidationErrors, other.BillingValidationErrors) + ; + } + + /// + /// + /// + public static bool operator ==(UpdateBillingSubscriptionProductsRequestUnprocessableEntityError obj1, UpdateBillingSubscriptionProductsRequestUnprocessableEntityError obj2) + { + return global::System.Collections.Generic.EqualityComparer.Default.Equals(obj1, obj2); + } + + /// + /// + /// + public static bool operator !=(UpdateBillingSubscriptionProductsRequestUnprocessableEntityError obj1, UpdateBillingSubscriptionProductsRequestUnprocessableEntityError obj2) + { + return !(obj1 == obj2); + } + + /// + /// + /// + public override bool Equals(object? obj) + { + return obj is UpdateBillingSubscriptionProductsRequestUnprocessableEntityError o && Equals(o); + } + } +} diff --git a/src/libs/ResembleAI/Generated/ResembleAI.ResembleAIClient.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.ResembleAIClient.g.cs index 93030a8..691b8e9 100644 --- a/src/libs/ResembleAI/Generated/ResembleAI.ResembleAIClient.g.cs +++ b/src/libs/ResembleAI/Generated/ResembleAI.ResembleAIClient.g.cs @@ -72,6 +72,36 @@ public sealed partial class ResembleAIClient : global::ResembleAI.IResembleAICli AutoSDKServerConfiguration = AutoSDKServerConfiguration, }; + /// + /// + /// + public BillingPlansClient BillingPlans => new BillingPlansClient(HttpClient, baseUri: null, authorizations: Authorizations, options: Options) + { + ReadResponseAsString = ReadResponseAsString, + JsonSerializerContext = JsonSerializerContext, + AutoSDKServerConfiguration = AutoSDKServerConfiguration, + }; + + /// + /// + /// + public BillingSubscriptionsClient BillingSubscriptions => new BillingSubscriptionsClient(HttpClient, baseUri: null, authorizations: Authorizations, options: Options) + { + ReadResponseAsString = ReadResponseAsString, + JsonSerializerContext = JsonSerializerContext, + AutoSDKServerConfiguration = AutoSDKServerConfiguration, + }; + + /// + /// + /// + public BillingWalletClient BillingWallet => new BillingWalletClient(HttpClient, baseUri: null, authorizations: Authorizations, options: Options) + { + ReadResponseAsString = ReadResponseAsString, + JsonSerializerContext = JsonSerializerContext, + AutoSDKServerConfiguration = AutoSDKServerConfiguration, + }; + /// /// /// @@ -182,6 +212,16 @@ public sealed partial class ResembleAIClient : global::ResembleAI.IResembleAICli AutoSDKServerConfiguration = AutoSDKServerConfiguration, }; + /// + /// + /// + public SignalClient Signal => new SignalClient(HttpClient, baseUri: null, authorizations: Authorizations, options: Options) + { + ReadResponseAsString = ReadResponseAsString, + JsonSerializerContext = JsonSerializerContext, + AutoSDKServerConfiguration = AutoSDKServerConfiguration, + }; + /// /// /// @@ -264,6 +304,11 @@ public sealed partial class ResembleAIClient : global::ResembleAI.IResembleAICli name: "synthesis", url: "https://f.cluster.resemble.ai/", description: "synthesis"), + new global::ResembleAI.AutoSDKServer( + id: "https-app-resemble-ai-billing-api-v1", + name: "billing", + url: "https://app.resemble.ai/billing/api/v1", + description: "billing"), }; /// diff --git a/src/libs/ResembleAI/Generated/ResembleAI.SignalClient.CreateSignalCustomCategory.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.SignalClient.CreateSignalCustomCategory.g.cs new file mode 100644 index 0000000..f423857 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.SignalClient.CreateSignalCustomCategory.g.cs @@ -0,0 +1,533 @@ + +#nullable enable + +namespace ResembleAI +{ + public partial class SignalClient + { + + private static readonly global::ResembleAI.AutoSDKServer[] s_CreateSignalCustomCategoryServers = new global::ResembleAI.AutoSDKServer[] + { new global::ResembleAI.AutoSDKServer( + id: "https-app-resemble-ai-api-v2", + name: "app.resemble.ai api v2", + url: "https://app.resemble.ai/api/v2", + description: ""), + }; + + + private static readonly global::ResembleAI.EndPointSecurityRequirement s_CreateSignalCustomCategorySecurityRequirement0 = + new global::ResembleAI.EndPointSecurityRequirement + { + Authorizations = new global::ResembleAI.EndPointAuthorizationRequirement[] + { new global::ResembleAI.EndPointAuthorizationRequirement + { + Type = "Http", + SchemeId = "HttpBearer", + Location = "Header", + Name = "Bearer", + FriendlyName = "Bearer", + }, + }, + }; + private static readonly global::ResembleAI.EndPointSecurityRequirement[] s_CreateSignalCustomCategorySecurityRequirements = + new global::ResembleAI.EndPointSecurityRequirement[] + { s_CreateSignalCustomCategorySecurityRequirement0, + }; + partial void PrepareCreateSignalCustomCategoryArguments( + global::System.Net.Http.HttpClient httpClient, + global::ResembleAI.SignalCustomCategoryCreateRequest request); + partial void PrepareCreateSignalCustomCategoryRequest( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpRequestMessage httpRequestMessage, + global::ResembleAI.SignalCustomCategoryCreateRequest request); + partial void ProcessCreateSignalCustomCategoryResponse( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpResponseMessage httpResponseMessage); + + partial void ProcessCreateSignalCustomCategoryResponseContent( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpResponseMessage httpResponseMessage, + ref string content); + + /// + /// Create custom category
+ /// Create a custom fraud category from example phrases. Categories embed asynchronously:
+ /// a new category starts at `pending`, moves to `embedding`, and becomes usable for
+ /// scoring once its status is `ready`. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task CreateSignalCustomCategoryAsync( + + global::ResembleAI.SignalCustomCategoryCreateRequest request, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + var __response = await CreateSignalCustomCategoryAsResponseAsync( + + request: request, + requestOptions: requestOptions, + cancellationToken: cancellationToken + ).ConfigureAwait(false); + + return __response.Body; + } + /// + /// Create custom category
+ /// Create a custom fraud category from example phrases. Categories embed asynchronously:
+ /// a new category starts at `pending`, moves to `embedding`, and becomes usable for
+ /// scoring once its status is `ready`. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task> CreateSignalCustomCategoryAsResponseAsync( + + global::ResembleAI.SignalCustomCategoryCreateRequest request, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + request = request ?? throw new global::System.ArgumentNullException(nameof(request)); + + PrepareArguments( + client: HttpClient); + PrepareCreateSignalCustomCategoryArguments( + httpClient: HttpClient, + request: request); + + + var __authorizations = global::ResembleAI.EndPointSecurityResolver.ResolveAuthorizations( + availableAuthorizations: Authorizations, + securityRequirements: s_CreateSignalCustomCategorySecurityRequirements, + operationName: "CreateSignalCustomCategoryAsync"); + + using var __timeoutCancellationTokenSource = global::ResembleAI.AutoSDKRequestOptionsSupport.CreateTimeoutCancellationTokenSource( + clientOptions: Options, + requestOptions: requestOptions, + cancellationToken: cancellationToken); + var __effectiveCancellationToken = __timeoutCancellationTokenSource?.Token ?? cancellationToken; + var __effectiveReadResponseAsString = global::ResembleAI.AutoSDKRequestOptionsSupport.GetReadResponseAsString( + clientOptions: Options, + requestOptions: requestOptions, + fallbackValue: ReadResponseAsString); + var __maxAttempts = global::ResembleAI.AutoSDKRequestOptionsSupport.GetMaxAttempts( + clientOptions: Options, + requestOptions: requestOptions, + supportsRetry: true); + + global::System.Net.Http.HttpRequestMessage __CreateHttpRequest() + { + + var __pathBuilder = new global::ResembleAI.PathBuilder( + path: "/signal/custom_categories", + baseUri: ResolveBaseUri( + servers: s_CreateSignalCustomCategoryServers, + defaultBaseUrl: "https://app.resemble.ai/api/v2")); + var __path = __pathBuilder.ToString(); + __path = global::ResembleAI.AutoSDKRequestOptionsSupport.AppendQueryParameters( + path: __path, + clientParameters: Options.QueryParameters, + requestParameters: requestOptions?.QueryParameters); + var __httpRequest = new global::System.Net.Http.HttpRequestMessage( + method: global::System.Net.Http.HttpMethod.Post, + requestUri: new global::System.Uri(__path, global::System.UriKind.RelativeOrAbsolute)); +#if NET6_0_OR_GREATER + __httpRequest.Version = global::System.Net.HttpVersion.Version11; + __httpRequest.VersionPolicy = global::System.Net.Http.HttpVersionPolicy.RequestVersionOrHigher; +#endif + + foreach (var __authorization in __authorizations) + { + if (__authorization.Type == "Http" || + __authorization.Type == "OAuth2" || + __authorization.Type == "OpenIdConnect") + { + __httpRequest.Headers.Authorization = new global::System.Net.Http.Headers.AuthenticationHeaderValue( + scheme: __authorization.Name, + parameter: __authorization.Value); + } + else if (__authorization.Type == "ApiKey" && + __authorization.Location == "Header") + { + __httpRequest.Headers.Add(__authorization.Name, __authorization.Value); + } + } + var __httpRequestContentBody = request.ToJson(JsonSerializerContext); + var __httpRequestContent = new global::System.Net.Http.StringContent( + content: __httpRequestContentBody, + encoding: global::System.Text.Encoding.UTF8, + mediaType: "application/json"); + __httpRequest.Content = __httpRequestContent; + global::ResembleAI.AutoSDKRequestOptionsSupport.ApplyHeaders( + request: __httpRequest, + clientHeaders: Options.Headers, + requestHeaders: requestOptions?.Headers); + + PrepareRequest( + client: HttpClient, + request: __httpRequest); + PrepareCreateSignalCustomCategoryRequest( + httpClient: HttpClient, + httpRequestMessage: __httpRequest, + request: request); + + return __httpRequest; + } + + global::System.Net.Http.HttpRequestMessage? __httpRequest = null; + global::System.Net.Http.HttpResponseMessage? __response = null; + var __attemptNumber = 0; + try + { + for (var __attempt = 1; __attempt <= __maxAttempts; __attempt++) + { + __attemptNumber = __attempt; + __httpRequest = __CreateHttpRequest(); + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnBeforeRequestAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "CreateSignalCustomCategory", + methodName: "CreateSignalCustomCategoryAsync", + pathTemplate: "\"/signal/custom_categories\"", + httpMethod: "POST", + baseUri: BaseUri, + request: __httpRequest!, + response: null, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + try + { + __response = await HttpClient.SendAsync( + request: __httpRequest, + completionOption: global::System.Net.Http.HttpCompletionOption.ResponseContentRead, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + } + catch (global::System.Net.Http.HttpRequestException __exception) + { + var __retryDelay = global::ResembleAI.AutoSDKRequestOptionsSupport.GetRetryDelay( + clientOptions: Options, + requestOptions: requestOptions, + response: null, + attempt: __attempt); + var __willRetry = __attempt < __maxAttempts && !__effectiveCancellationToken.IsCancellationRequested; + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "CreateSignalCustomCategory", + methodName: "CreateSignalCustomCategoryAsync", + pathTemplate: "\"/signal/custom_categories\"", + httpMethod: "POST", + baseUri: BaseUri, + request: __httpRequest!, + response: null, + exception: __exception, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: __willRetry, + retryDelay: __willRetry ? __retryDelay : (global::System.TimeSpan?)null, + retryReason: "exception", + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + if (!__willRetry) + { + throw; + } + + __httpRequest.Dispose(); + __httpRequest = null; + await global::ResembleAI.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync( + retryDelay: __retryDelay, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + continue; + } + + if (__response != null && + __attempt < __maxAttempts && + global::ResembleAI.AutoSDKRequestOptionsSupport.ShouldRetryStatusCode(__response.StatusCode)) + { + var __retryDelay = global::ResembleAI.AutoSDKRequestOptionsSupport.GetRetryDelay( + clientOptions: Options, + requestOptions: requestOptions, + response: __response, + attempt: __attempt); + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "CreateSignalCustomCategory", + methodName: "CreateSignalCustomCategoryAsync", + pathTemplate: "\"/signal/custom_categories\"", + httpMethod: "POST", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: true, + retryDelay: __retryDelay, + retryReason: "status:" + ((int)__response.StatusCode).ToString(global::System.Globalization.CultureInfo.InvariantCulture), + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + __response.Dispose(); + __response = null; + __httpRequest.Dispose(); + __httpRequest = null; + await global::ResembleAI.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync( + retryDelay: __retryDelay, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + continue; + } + + break; + } + + if (__response == null) + { + throw new global::System.InvalidOperationException("No response received."); + } + + using (__response) + { + + ProcessResponse( + client: HttpClient, + response: __response); + ProcessCreateSignalCustomCategoryResponse( + httpClient: HttpClient, + httpResponseMessage: __response); + if (__response.IsSuccessStatusCode) + { + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterSuccessAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "CreateSignalCustomCategory", + methodName: "CreateSignalCustomCategoryAsync", + pathTemplate: "\"/signal/custom_categories\"", + httpMethod: "POST", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attemptNumber, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + } + else + { + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "CreateSignalCustomCategory", + methodName: "CreateSignalCustomCategoryAsync", + pathTemplate: "\"/signal/custom_categories\"", + httpMethod: "POST", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attemptNumber, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + } + // Validation error + if ((int)__response.StatusCode == 422) + { + string? __content_422 = null; + global::System.Exception? __exception_422 = null; + global::ResembleAI.SignalError? __value_422 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_422 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_422 = global::ResembleAI.SignalError.FromJson(__content_422, JsonSerializerContext); + } + else + { + __content_422 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_422 = global::ResembleAI.SignalError.FromJson(__content_422, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_422 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_422 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_422, + responseBody: __content_422, + responseObject: __value_422, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + + if (__effectiveReadResponseAsString) + { + var __content = await __response.Content.ReadAsStringAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + + ProcessResponseContent( + client: HttpClient, + response: __response, + content: ref __content); + ProcessCreateSignalCustomCategoryResponseContent( + httpClient: HttpClient, + httpResponseMessage: __response, + content: ref __content); + + try + { + __response.EnsureSuccessStatusCode(); + + var __value = global::ResembleAI.SignalCustomCategoryResponse.FromJson(__content, JsonSerializerContext) ?? + throw new global::System.InvalidOperationException($"Response deserialization failed for \"{__content}\" "); + return new global::ResembleAI.AutoSDKHttpResponse( + statusCode: __response.StatusCode, + headers: global::ResembleAI.AutoSDKHttpResponse.CreateHeaders(__response), + requestUri: __response.RequestMessage?.RequestUri, + body: __value); + } + catch (global::System.Exception __ex) + { + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content ?? __response.ReasonPhrase ?? string.Empty, + innerException: __ex, + responseBody: __content, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + } + else + { + try + { + __response.EnsureSuccessStatusCode(); + using var __content = await __response.Content.ReadAsStreamAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + + var __value = await global::ResembleAI.SignalCustomCategoryResponse.FromJsonStreamAsync(__content, JsonSerializerContext).ConfigureAwait(false) ?? + throw new global::System.InvalidOperationException("Response deserialization failed."); + return new global::ResembleAI.AutoSDKHttpResponse( + statusCode: __response.StatusCode, + headers: global::ResembleAI.AutoSDKHttpResponse.CreateHeaders(__response), + requestUri: __response.RequestMessage?.RequestUri, + body: __value); + } + catch (global::System.Exception __ex) + { + string? __content = null; + try + { + __content = await __response.Content.ReadAsStringAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + } + catch (global::System.Exception) + { + } + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content ?? __response.ReasonPhrase ?? string.Empty, + innerException: __ex, + responseBody: __content, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + } + + } + } + finally + { + __httpRequest?.Dispose(); + } + } + /// + /// Create custom category
+ /// Create a custom fraud category from example phrases. Categories embed asynchronously:
+ /// a new category starts at `pending`, moves to `embedding`, and becomes usable for
+ /// scoring once its status is `ready`. + ///
+ /// + /// Category name. Must be unique within the team. + /// + /// + /// Example phrases that define the pattern. Maximum 50 entries, each up to 2000 characters. A newline-separated string is also accepted. + /// + /// + /// + /// Single emoji. + /// + /// + /// Default Value: true + /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task CreateSignalCustomCategoryAsync( + string name, + global::System.Collections.Generic.IList scenarios, + string? description = default, + string? icon = default, + bool? enabled = default, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + var __request = new global::ResembleAI.SignalCustomCategoryCreateRequest + { + Name = name, + Scenarios = scenarios, + Description = description, + Icon = icon, + Enabled = enabled, + }; + + return await CreateSignalCustomCategoryAsync( + request: __request, + requestOptions: requestOptions, + cancellationToken: cancellationToken).ConfigureAwait(false); + } + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.SignalClient.CreateSignalSubmission.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.SignalClient.CreateSignalSubmission.g.cs new file mode 100644 index 0000000..044e564 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.SignalClient.CreateSignalSubmission.g.cs @@ -0,0 +1,601 @@ + +#nullable enable + +namespace ResembleAI +{ + public partial class SignalClient + { + + private static readonly global::ResembleAI.AutoSDKServer[] s_CreateSignalSubmissionServers = new global::ResembleAI.AutoSDKServer[] + { new global::ResembleAI.AutoSDKServer( + id: "https-app-resemble-ai-api-v2", + name: "app.resemble.ai api v2", + url: "https://app.resemble.ai/api/v2", + description: ""), + }; + + + private static readonly global::ResembleAI.EndPointSecurityRequirement s_CreateSignalSubmissionSecurityRequirement0 = + new global::ResembleAI.EndPointSecurityRequirement + { + Authorizations = new global::ResembleAI.EndPointAuthorizationRequirement[] + { new global::ResembleAI.EndPointAuthorizationRequirement + { + Type = "Http", + SchemeId = "HttpBearer", + Location = "Header", + Name = "Bearer", + FriendlyName = "Bearer", + }, + }, + }; + private static readonly global::ResembleAI.EndPointSecurityRequirement[] s_CreateSignalSubmissionSecurityRequirements = + new global::ResembleAI.EndPointSecurityRequirement[] + { s_CreateSignalSubmissionSecurityRequirement0, + }; + partial void PrepareCreateSignalSubmissionArguments( + global::System.Net.Http.HttpClient httpClient, + global::ResembleAI.CreateSignalSubmissionRequest request); + partial void PrepareCreateSignalSubmissionRequest( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpRequestMessage httpRequestMessage, + global::ResembleAI.CreateSignalSubmissionRequest request); + partial void ProcessCreateSignalSubmissionResponse( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpResponseMessage httpResponseMessage); + + partial void ProcessCreateSignalSubmissionResponseContent( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpResponseMessage httpResponseMessage, + ref string content); + + /// + /// Score content
+ /// Score a piece of content against the fraud and scam categories available to your team
+ /// and return a verdict with the best-matching categories.
+ /// Supply exactly one of:
+ /// - **Text** — `application/json` with a `text` field.
+ /// - **File** — `multipart/form-data` with the media attached as `file`. Audio, image, and
+ /// video are supported, up to 15 MB. The media type is detected from the file's MIME type
+ /// unless `media_type` is supplied. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task CreateSignalSubmissionAsync( + + global::ResembleAI.CreateSignalSubmissionRequest request, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + var __response = await CreateSignalSubmissionAsResponseAsync( + + request: request, + requestOptions: requestOptions, + cancellationToken: cancellationToken + ).ConfigureAwait(false); + + return __response.Body; + } + /// + /// Score content
+ /// Score a piece of content against the fraud and scam categories available to your team
+ /// and return a verdict with the best-matching categories.
+ /// Supply exactly one of:
+ /// - **Text** — `application/json` with a `text` field.
+ /// - **File** — `multipart/form-data` with the media attached as `file`. Audio, image, and
+ /// video are supported, up to 15 MB. The media type is detected from the file's MIME type
+ /// unless `media_type` is supplied. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task> CreateSignalSubmissionAsResponseAsync( + + global::ResembleAI.CreateSignalSubmissionRequest request, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + request = request ?? throw new global::System.ArgumentNullException(nameof(request)); + + PrepareArguments( + client: HttpClient); + PrepareCreateSignalSubmissionArguments( + httpClient: HttpClient, + request: request); + + + var __authorizations = global::ResembleAI.EndPointSecurityResolver.ResolveAuthorizations( + availableAuthorizations: Authorizations, + securityRequirements: s_CreateSignalSubmissionSecurityRequirements, + operationName: "CreateSignalSubmissionAsync"); + + using var __timeoutCancellationTokenSource = global::ResembleAI.AutoSDKRequestOptionsSupport.CreateTimeoutCancellationTokenSource( + clientOptions: Options, + requestOptions: requestOptions, + cancellationToken: cancellationToken); + var __effectiveCancellationToken = __timeoutCancellationTokenSource?.Token ?? cancellationToken; + var __effectiveReadResponseAsString = global::ResembleAI.AutoSDKRequestOptionsSupport.GetReadResponseAsString( + clientOptions: Options, + requestOptions: requestOptions, + fallbackValue: ReadResponseAsString); + var __maxAttempts = global::ResembleAI.AutoSDKRequestOptionsSupport.GetMaxAttempts( + clientOptions: Options, + requestOptions: requestOptions, + supportsRetry: true); + + global::System.Net.Http.HttpRequestMessage __CreateHttpRequest() + { + + var __pathBuilder = new global::ResembleAI.PathBuilder( + path: "/signal", + baseUri: ResolveBaseUri( + servers: s_CreateSignalSubmissionServers, + defaultBaseUrl: "https://app.resemble.ai/api/v2")); + var __path = __pathBuilder.ToString(); + __path = global::ResembleAI.AutoSDKRequestOptionsSupport.AppendQueryParameters( + path: __path, + clientParameters: Options.QueryParameters, + requestParameters: requestOptions?.QueryParameters); + var __httpRequest = new global::System.Net.Http.HttpRequestMessage( + method: global::System.Net.Http.HttpMethod.Post, + requestUri: new global::System.Uri(__path, global::System.UriKind.RelativeOrAbsolute)); +#if NET6_0_OR_GREATER + __httpRequest.Version = global::System.Net.HttpVersion.Version11; + __httpRequest.VersionPolicy = global::System.Net.Http.HttpVersionPolicy.RequestVersionOrHigher; +#endif + + foreach (var __authorization in __authorizations) + { + if (__authorization.Type == "Http" || + __authorization.Type == "OAuth2" || + __authorization.Type == "OpenIdConnect") + { + __httpRequest.Headers.Authorization = new global::System.Net.Http.Headers.AuthenticationHeaderValue( + scheme: __authorization.Name, + parameter: __authorization.Value); + } + else if (__authorization.Type == "ApiKey" && + __authorization.Location == "Header") + { + __httpRequest.Headers.Add(__authorization.Name, __authorization.Value); + } + } + var __httpRequestContentBody = request.ToJson(JsonSerializerContext); + var __httpRequestContent = new global::System.Net.Http.StringContent( + content: __httpRequestContentBody, + encoding: global::System.Text.Encoding.UTF8, + mediaType: "application/json"); + __httpRequest.Content = __httpRequestContent; + global::ResembleAI.AutoSDKRequestOptionsSupport.ApplyHeaders( + request: __httpRequest, + clientHeaders: Options.Headers, + requestHeaders: requestOptions?.Headers); + + PrepareRequest( + client: HttpClient, + request: __httpRequest); + PrepareCreateSignalSubmissionRequest( + httpClient: HttpClient, + httpRequestMessage: __httpRequest, + request: request); + + return __httpRequest; + } + + global::System.Net.Http.HttpRequestMessage? __httpRequest = null; + global::System.Net.Http.HttpResponseMessage? __response = null; + var __attemptNumber = 0; + try + { + for (var __attempt = 1; __attempt <= __maxAttempts; __attempt++) + { + __attemptNumber = __attempt; + __httpRequest = __CreateHttpRequest(); + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnBeforeRequestAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "CreateSignalSubmission", + methodName: "CreateSignalSubmissionAsync", + pathTemplate: "\"/signal\"", + httpMethod: "POST", + baseUri: BaseUri, + request: __httpRequest!, + response: null, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + try + { + __response = await HttpClient.SendAsync( + request: __httpRequest, + completionOption: global::System.Net.Http.HttpCompletionOption.ResponseContentRead, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + } + catch (global::System.Net.Http.HttpRequestException __exception) + { + var __retryDelay = global::ResembleAI.AutoSDKRequestOptionsSupport.GetRetryDelay( + clientOptions: Options, + requestOptions: requestOptions, + response: null, + attempt: __attempt); + var __willRetry = __attempt < __maxAttempts && !__effectiveCancellationToken.IsCancellationRequested; + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "CreateSignalSubmission", + methodName: "CreateSignalSubmissionAsync", + pathTemplate: "\"/signal\"", + httpMethod: "POST", + baseUri: BaseUri, + request: __httpRequest!, + response: null, + exception: __exception, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: __willRetry, + retryDelay: __willRetry ? __retryDelay : (global::System.TimeSpan?)null, + retryReason: "exception", + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + if (!__willRetry) + { + throw; + } + + __httpRequest.Dispose(); + __httpRequest = null; + await global::ResembleAI.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync( + retryDelay: __retryDelay, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + continue; + } + + if (__response != null && + __attempt < __maxAttempts && + global::ResembleAI.AutoSDKRequestOptionsSupport.ShouldRetryStatusCode(__response.StatusCode)) + { + var __retryDelay = global::ResembleAI.AutoSDKRequestOptionsSupport.GetRetryDelay( + clientOptions: Options, + requestOptions: requestOptions, + response: __response, + attempt: __attempt); + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "CreateSignalSubmission", + methodName: "CreateSignalSubmissionAsync", + pathTemplate: "\"/signal\"", + httpMethod: "POST", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: true, + retryDelay: __retryDelay, + retryReason: "status:" + ((int)__response.StatusCode).ToString(global::System.Globalization.CultureInfo.InvariantCulture), + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + __response.Dispose(); + __response = null; + __httpRequest.Dispose(); + __httpRequest = null; + await global::ResembleAI.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync( + retryDelay: __retryDelay, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + continue; + } + + break; + } + + if (__response == null) + { + throw new global::System.InvalidOperationException("No response received."); + } + + using (__response) + { + + ProcessResponse( + client: HttpClient, + response: __response); + ProcessCreateSignalSubmissionResponse( + httpClient: HttpClient, + httpResponseMessage: __response); + if (__response.IsSuccessStatusCode) + { + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterSuccessAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "CreateSignalSubmission", + methodName: "CreateSignalSubmissionAsync", + pathTemplate: "\"/signal\"", + httpMethod: "POST", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attemptNumber, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + } + else + { + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "CreateSignalSubmission", + methodName: "CreateSignalSubmissionAsync", + pathTemplate: "\"/signal\"", + httpMethod: "POST", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attemptNumber, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + } + // Neither text nor file was provided, or `media_type` is invalid + if ((int)__response.StatusCode == 400) + { + string? __content_400 = null; + global::System.Exception? __exception_400 = null; + global::ResembleAI.SignalError? __value_400 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_400 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_400 = global::ResembleAI.SignalError.FromJson(__content_400, JsonSerializerContext); + } + else + { + __content_400 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_400 = global::ResembleAI.SignalError.FromJson(__content_400, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_400 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_400 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_400, + responseBody: __content_400, + responseObject: __value_400, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + // The account does not have Signal access + if ((int)__response.StatusCode == 403) + { + string? __content_403 = null; + global::System.Exception? __exception_403 = null; + global::ResembleAI.SignalError? __value_403 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_403 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_403 = global::ResembleAI.SignalError.FromJson(__content_403, JsonSerializerContext); + } + else + { + __content_403 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_403 = global::ResembleAI.SignalError.FromJson(__content_403, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_403 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_403 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_403, + responseBody: __content_403, + responseObject: __value_403, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + // File exceeds the 15 MB limit + if ((int)__response.StatusCode == 413) + { + string? __content_413 = null; + global::System.Exception? __exception_413 = null; + global::ResembleAI.SignalError? __value_413 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_413 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_413 = global::ResembleAI.SignalError.FromJson(__content_413, JsonSerializerContext); + } + else + { + __content_413 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_413 = global::ResembleAI.SignalError.FromJson(__content_413, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_413 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_413 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_413, + responseBody: __content_413, + responseObject: __value_413, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + + if (__effectiveReadResponseAsString) + { + var __content = await __response.Content.ReadAsStringAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + + ProcessResponseContent( + client: HttpClient, + response: __response, + content: ref __content); + ProcessCreateSignalSubmissionResponseContent( + httpClient: HttpClient, + httpResponseMessage: __response, + content: ref __content); + + try + { + __response.EnsureSuccessStatusCode(); + + var __value = global::ResembleAI.SignalScoreResponse.FromJson(__content, JsonSerializerContext) ?? + throw new global::System.InvalidOperationException($"Response deserialization failed for \"{__content}\" "); + return new global::ResembleAI.AutoSDKHttpResponse( + statusCode: __response.StatusCode, + headers: global::ResembleAI.AutoSDKHttpResponse.CreateHeaders(__response), + requestUri: __response.RequestMessage?.RequestUri, + body: __value); + } + catch (global::System.Exception __ex) + { + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content ?? __response.ReasonPhrase ?? string.Empty, + innerException: __ex, + responseBody: __content, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + } + else + { + try + { + __response.EnsureSuccessStatusCode(); + using var __content = await __response.Content.ReadAsStreamAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + + var __value = await global::ResembleAI.SignalScoreResponse.FromJsonStreamAsync(__content, JsonSerializerContext).ConfigureAwait(false) ?? + throw new global::System.InvalidOperationException("Response deserialization failed."); + return new global::ResembleAI.AutoSDKHttpResponse( + statusCode: __response.StatusCode, + headers: global::ResembleAI.AutoSDKHttpResponse.CreateHeaders(__response), + requestUri: __response.RequestMessage?.RequestUri, + body: __value); + } + catch (global::System.Exception __ex) + { + string? __content = null; + try + { + __content = await __response.Content.ReadAsStringAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + } + catch (global::System.Exception) + { + } + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content ?? __response.ReasonPhrase ?? string.Empty, + innerException: __ex, + responseBody: __content, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + } + + } + } + finally + { + __httpRequest?.Dispose(); + } + } + /// + /// Score content
+ /// Score a piece of content against the fraud and scam categories available to your team
+ /// and return a verdict with the best-matching categories.
+ /// Supply exactly one of:
+ /// - **Text** — `application/json` with a `text` field.
+ /// - **File** — `multipart/form-data` with the media attached as `file`. Audio, image, and
+ /// video are supported, up to 15 MB. The media type is detected from the file's MIME type
+ /// unless `media_type` is supplied. + ///
+ /// + /// Text to analyze. + /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task CreateSignalSubmissionAsync( + string text, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + var __request = new global::ResembleAI.CreateSignalSubmissionRequest + { + Text = text, + }; + + return await CreateSignalSubmissionAsync( + request: __request, + requestOptions: requestOptions, + cancellationToken: cancellationToken).ConfigureAwait(false); + } + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.SignalClient.DeleteSignalCustomCategory.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.SignalClient.DeleteSignalCustomCategory.g.cs new file mode 100644 index 0000000..70d895b --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.SignalClient.DeleteSignalCustomCategory.g.cs @@ -0,0 +1,473 @@ + +#nullable enable + +namespace ResembleAI +{ + public partial class SignalClient + { + + private static readonly global::ResembleAI.AutoSDKServer[] s_DeleteSignalCustomCategoryServers = new global::ResembleAI.AutoSDKServer[] + { new global::ResembleAI.AutoSDKServer( + id: "https-app-resemble-ai-api-v2", + name: "app.resemble.ai api v2", + url: "https://app.resemble.ai/api/v2", + description: ""), + }; + + + private static readonly global::ResembleAI.EndPointSecurityRequirement s_DeleteSignalCustomCategorySecurityRequirement0 = + new global::ResembleAI.EndPointSecurityRequirement + { + Authorizations = new global::ResembleAI.EndPointAuthorizationRequirement[] + { new global::ResembleAI.EndPointAuthorizationRequirement + { + Type = "Http", + SchemeId = "HttpBearer", + Location = "Header", + Name = "Bearer", + FriendlyName = "Bearer", + }, + }, + }; + private static readonly global::ResembleAI.EndPointSecurityRequirement[] s_DeleteSignalCustomCategorySecurityRequirements = + new global::ResembleAI.EndPointSecurityRequirement[] + { s_DeleteSignalCustomCategorySecurityRequirement0, + }; + partial void PrepareDeleteSignalCustomCategoryArguments( + global::System.Net.Http.HttpClient httpClient, + ref int id); + partial void PrepareDeleteSignalCustomCategoryRequest( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpRequestMessage httpRequestMessage, + int id); + partial void ProcessDeleteSignalCustomCategoryResponse( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpResponseMessage httpResponseMessage); + + partial void ProcessDeleteSignalCustomCategoryResponseContent( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpResponseMessage httpResponseMessage, + ref string content); + + /// + /// Delete custom category
+ /// Delete a custom category and its example phrases. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task DeleteSignalCustomCategoryAsync( + int id, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + var __response = await DeleteSignalCustomCategoryAsResponseAsync( + id: id, + requestOptions: requestOptions, + cancellationToken: cancellationToken + ).ConfigureAwait(false); + + return __response.Body; + } + /// + /// Delete custom category
+ /// Delete a custom category and its example phrases. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task> DeleteSignalCustomCategoryAsResponseAsync( + int id, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + PrepareArguments( + client: HttpClient); + PrepareDeleteSignalCustomCategoryArguments( + httpClient: HttpClient, + id: ref id); + + + var __authorizations = global::ResembleAI.EndPointSecurityResolver.ResolveAuthorizations( + availableAuthorizations: Authorizations, + securityRequirements: s_DeleteSignalCustomCategorySecurityRequirements, + operationName: "DeleteSignalCustomCategoryAsync"); + + using var __timeoutCancellationTokenSource = global::ResembleAI.AutoSDKRequestOptionsSupport.CreateTimeoutCancellationTokenSource( + clientOptions: Options, + requestOptions: requestOptions, + cancellationToken: cancellationToken); + var __effectiveCancellationToken = __timeoutCancellationTokenSource?.Token ?? cancellationToken; + var __effectiveReadResponseAsString = global::ResembleAI.AutoSDKRequestOptionsSupport.GetReadResponseAsString( + clientOptions: Options, + requestOptions: requestOptions, + fallbackValue: ReadResponseAsString); + var __maxAttempts = global::ResembleAI.AutoSDKRequestOptionsSupport.GetMaxAttempts( + clientOptions: Options, + requestOptions: requestOptions, + supportsRetry: true); + + global::System.Net.Http.HttpRequestMessage __CreateHttpRequest() + { + + var __pathBuilder = new global::ResembleAI.PathBuilder( + path: $"/signal/custom_categories/{id}", + baseUri: ResolveBaseUri( + servers: s_DeleteSignalCustomCategoryServers, + defaultBaseUrl: "https://app.resemble.ai/api/v2")); + var __path = __pathBuilder.ToString(); + __path = global::ResembleAI.AutoSDKRequestOptionsSupport.AppendQueryParameters( + path: __path, + clientParameters: Options.QueryParameters, + requestParameters: requestOptions?.QueryParameters); + var __httpRequest = new global::System.Net.Http.HttpRequestMessage( + method: global::System.Net.Http.HttpMethod.Delete, + requestUri: new global::System.Uri(__path, global::System.UriKind.RelativeOrAbsolute)); +#if NET6_0_OR_GREATER + __httpRequest.Version = global::System.Net.HttpVersion.Version11; + __httpRequest.VersionPolicy = global::System.Net.Http.HttpVersionPolicy.RequestVersionOrHigher; +#endif + + foreach (var __authorization in __authorizations) + { + if (__authorization.Type == "Http" || + __authorization.Type == "OAuth2" || + __authorization.Type == "OpenIdConnect") + { + __httpRequest.Headers.Authorization = new global::System.Net.Http.Headers.AuthenticationHeaderValue( + scheme: __authorization.Name, + parameter: __authorization.Value); + } + else if (__authorization.Type == "ApiKey" && + __authorization.Location == "Header") + { + __httpRequest.Headers.Add(__authorization.Name, __authorization.Value); + } + } + global::ResembleAI.AutoSDKRequestOptionsSupport.ApplyHeaders( + request: __httpRequest, + clientHeaders: Options.Headers, + requestHeaders: requestOptions?.Headers); + + PrepareRequest( + client: HttpClient, + request: __httpRequest); + PrepareDeleteSignalCustomCategoryRequest( + httpClient: HttpClient, + httpRequestMessage: __httpRequest, + id: id!); + + return __httpRequest; + } + + global::System.Net.Http.HttpRequestMessage? __httpRequest = null; + global::System.Net.Http.HttpResponseMessage? __response = null; + var __attemptNumber = 0; + try + { + for (var __attempt = 1; __attempt <= __maxAttempts; __attempt++) + { + __attemptNumber = __attempt; + __httpRequest = __CreateHttpRequest(); + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnBeforeRequestAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "DeleteSignalCustomCategory", + methodName: "DeleteSignalCustomCategoryAsync", + pathTemplate: "$\"/signal/custom_categories/{id}\"", + httpMethod: "DELETE", + baseUri: BaseUri, + request: __httpRequest!, + response: null, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + try + { + __response = await HttpClient.SendAsync( + request: __httpRequest, + completionOption: global::System.Net.Http.HttpCompletionOption.ResponseContentRead, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + } + catch (global::System.Net.Http.HttpRequestException __exception) + { + var __retryDelay = global::ResembleAI.AutoSDKRequestOptionsSupport.GetRetryDelay( + clientOptions: Options, + requestOptions: requestOptions, + response: null, + attempt: __attempt); + var __willRetry = __attempt < __maxAttempts && !__effectiveCancellationToken.IsCancellationRequested; + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "DeleteSignalCustomCategory", + methodName: "DeleteSignalCustomCategoryAsync", + pathTemplate: "$\"/signal/custom_categories/{id}\"", + httpMethod: "DELETE", + baseUri: BaseUri, + request: __httpRequest!, + response: null, + exception: __exception, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: __willRetry, + retryDelay: __willRetry ? __retryDelay : (global::System.TimeSpan?)null, + retryReason: "exception", + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + if (!__willRetry) + { + throw; + } + + __httpRequest.Dispose(); + __httpRequest = null; + await global::ResembleAI.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync( + retryDelay: __retryDelay, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + continue; + } + + if (__response != null && + __attempt < __maxAttempts && + global::ResembleAI.AutoSDKRequestOptionsSupport.ShouldRetryStatusCode(__response.StatusCode)) + { + var __retryDelay = global::ResembleAI.AutoSDKRequestOptionsSupport.GetRetryDelay( + clientOptions: Options, + requestOptions: requestOptions, + response: __response, + attempt: __attempt); + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "DeleteSignalCustomCategory", + methodName: "DeleteSignalCustomCategoryAsync", + pathTemplate: "$\"/signal/custom_categories/{id}\"", + httpMethod: "DELETE", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: true, + retryDelay: __retryDelay, + retryReason: "status:" + ((int)__response.StatusCode).ToString(global::System.Globalization.CultureInfo.InvariantCulture), + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + __response.Dispose(); + __response = null; + __httpRequest.Dispose(); + __httpRequest = null; + await global::ResembleAI.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync( + retryDelay: __retryDelay, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + continue; + } + + break; + } + + if (__response == null) + { + throw new global::System.InvalidOperationException("No response received."); + } + + using (__response) + { + + ProcessResponse( + client: HttpClient, + response: __response); + ProcessDeleteSignalCustomCategoryResponse( + httpClient: HttpClient, + httpResponseMessage: __response); + if (__response.IsSuccessStatusCode) + { + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterSuccessAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "DeleteSignalCustomCategory", + methodName: "DeleteSignalCustomCategoryAsync", + pathTemplate: "$\"/signal/custom_categories/{id}\"", + httpMethod: "DELETE", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attemptNumber, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + } + else + { + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "DeleteSignalCustomCategory", + methodName: "DeleteSignalCustomCategoryAsync", + pathTemplate: "$\"/signal/custom_categories/{id}\"", + httpMethod: "DELETE", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attemptNumber, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + } + // Category not found + if ((int)__response.StatusCode == 404) + { + string? __content_404 = null; + global::System.Exception? __exception_404 = null; + global::ResembleAI.SignalError? __value_404 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_404 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_404 = global::ResembleAI.SignalError.FromJson(__content_404, JsonSerializerContext); + } + else + { + __content_404 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_404 = global::ResembleAI.SignalError.FromJson(__content_404, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_404 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_404 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_404, + responseBody: __content_404, + responseObject: __value_404, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + + if (__effectiveReadResponseAsString) + { + var __content = await __response.Content.ReadAsStringAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + + ProcessResponseContent( + client: HttpClient, + response: __response, + content: ref __content); + ProcessDeleteSignalCustomCategoryResponseContent( + httpClient: HttpClient, + httpResponseMessage: __response, + content: ref __content); + + try + { + __response.EnsureSuccessStatusCode(); + + var __value = global::ResembleAI.SignalSuccessResponse.FromJson(__content, JsonSerializerContext) ?? + throw new global::System.InvalidOperationException($"Response deserialization failed for \"{__content}\" "); + return new global::ResembleAI.AutoSDKHttpResponse( + statusCode: __response.StatusCode, + headers: global::ResembleAI.AutoSDKHttpResponse.CreateHeaders(__response), + requestUri: __response.RequestMessage?.RequestUri, + body: __value); + } + catch (global::System.Exception __ex) + { + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content ?? __response.ReasonPhrase ?? string.Empty, + innerException: __ex, + responseBody: __content, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + } + else + { + try + { + __response.EnsureSuccessStatusCode(); + using var __content = await __response.Content.ReadAsStreamAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + + var __value = await global::ResembleAI.SignalSuccessResponse.FromJsonStreamAsync(__content, JsonSerializerContext).ConfigureAwait(false) ?? + throw new global::System.InvalidOperationException("Response deserialization failed."); + return new global::ResembleAI.AutoSDKHttpResponse( + statusCode: __response.StatusCode, + headers: global::ResembleAI.AutoSDKHttpResponse.CreateHeaders(__response), + requestUri: __response.RequestMessage?.RequestUri, + body: __value); + } + catch (global::System.Exception __ex) + { + string? __content = null; + try + { + __content = await __response.Content.ReadAsStringAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + } + catch (global::System.Exception) + { + } + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content ?? __response.ReasonPhrase ?? string.Empty, + innerException: __ex, + responseBody: __content, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + } + + } + } + finally + { + __httpRequest?.Dispose(); + } + } + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.SignalClient.DeleteSignalSubmission.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.SignalClient.DeleteSignalSubmission.g.cs new file mode 100644 index 0000000..681dd40 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.SignalClient.DeleteSignalSubmission.g.cs @@ -0,0 +1,473 @@ + +#nullable enable + +namespace ResembleAI +{ + public partial class SignalClient + { + + private static readonly global::ResembleAI.AutoSDKServer[] s_DeleteSignalSubmissionServers = new global::ResembleAI.AutoSDKServer[] + { new global::ResembleAI.AutoSDKServer( + id: "https-app-resemble-ai-api-v2", + name: "app.resemble.ai api v2", + url: "https://app.resemble.ai/api/v2", + description: ""), + }; + + + private static readonly global::ResembleAI.EndPointSecurityRequirement s_DeleteSignalSubmissionSecurityRequirement0 = + new global::ResembleAI.EndPointSecurityRequirement + { + Authorizations = new global::ResembleAI.EndPointAuthorizationRequirement[] + { new global::ResembleAI.EndPointAuthorizationRequirement + { + Type = "Http", + SchemeId = "HttpBearer", + Location = "Header", + Name = "Bearer", + FriendlyName = "Bearer", + }, + }, + }; + private static readonly global::ResembleAI.EndPointSecurityRequirement[] s_DeleteSignalSubmissionSecurityRequirements = + new global::ResembleAI.EndPointSecurityRequirement[] + { s_DeleteSignalSubmissionSecurityRequirement0, + }; + partial void PrepareDeleteSignalSubmissionArguments( + global::System.Net.Http.HttpClient httpClient, + ref int id); + partial void PrepareDeleteSignalSubmissionRequest( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpRequestMessage httpRequestMessage, + int id); + partial void ProcessDeleteSignalSubmissionResponse( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpResponseMessage httpResponseMessage); + + partial void ProcessDeleteSignalSubmissionResponseContent( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpResponseMessage httpResponseMessage, + ref string content); + + /// + /// Delete submission
+ /// Permanently delete a Signal submission belonging to your team. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task DeleteSignalSubmissionAsync( + int id, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + var __response = await DeleteSignalSubmissionAsResponseAsync( + id: id, + requestOptions: requestOptions, + cancellationToken: cancellationToken + ).ConfigureAwait(false); + + return __response.Body; + } + /// + /// Delete submission
+ /// Permanently delete a Signal submission belonging to your team. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task> DeleteSignalSubmissionAsResponseAsync( + int id, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + PrepareArguments( + client: HttpClient); + PrepareDeleteSignalSubmissionArguments( + httpClient: HttpClient, + id: ref id); + + + var __authorizations = global::ResembleAI.EndPointSecurityResolver.ResolveAuthorizations( + availableAuthorizations: Authorizations, + securityRequirements: s_DeleteSignalSubmissionSecurityRequirements, + operationName: "DeleteSignalSubmissionAsync"); + + using var __timeoutCancellationTokenSource = global::ResembleAI.AutoSDKRequestOptionsSupport.CreateTimeoutCancellationTokenSource( + clientOptions: Options, + requestOptions: requestOptions, + cancellationToken: cancellationToken); + var __effectiveCancellationToken = __timeoutCancellationTokenSource?.Token ?? cancellationToken; + var __effectiveReadResponseAsString = global::ResembleAI.AutoSDKRequestOptionsSupport.GetReadResponseAsString( + clientOptions: Options, + requestOptions: requestOptions, + fallbackValue: ReadResponseAsString); + var __maxAttempts = global::ResembleAI.AutoSDKRequestOptionsSupport.GetMaxAttempts( + clientOptions: Options, + requestOptions: requestOptions, + supportsRetry: true); + + global::System.Net.Http.HttpRequestMessage __CreateHttpRequest() + { + + var __pathBuilder = new global::ResembleAI.PathBuilder( + path: $"/signal/{id}", + baseUri: ResolveBaseUri( + servers: s_DeleteSignalSubmissionServers, + defaultBaseUrl: "https://app.resemble.ai/api/v2")); + var __path = __pathBuilder.ToString(); + __path = global::ResembleAI.AutoSDKRequestOptionsSupport.AppendQueryParameters( + path: __path, + clientParameters: Options.QueryParameters, + requestParameters: requestOptions?.QueryParameters); + var __httpRequest = new global::System.Net.Http.HttpRequestMessage( + method: global::System.Net.Http.HttpMethod.Delete, + requestUri: new global::System.Uri(__path, global::System.UriKind.RelativeOrAbsolute)); +#if NET6_0_OR_GREATER + __httpRequest.Version = global::System.Net.HttpVersion.Version11; + __httpRequest.VersionPolicy = global::System.Net.Http.HttpVersionPolicy.RequestVersionOrHigher; +#endif + + foreach (var __authorization in __authorizations) + { + if (__authorization.Type == "Http" || + __authorization.Type == "OAuth2" || + __authorization.Type == "OpenIdConnect") + { + __httpRequest.Headers.Authorization = new global::System.Net.Http.Headers.AuthenticationHeaderValue( + scheme: __authorization.Name, + parameter: __authorization.Value); + } + else if (__authorization.Type == "ApiKey" && + __authorization.Location == "Header") + { + __httpRequest.Headers.Add(__authorization.Name, __authorization.Value); + } + } + global::ResembleAI.AutoSDKRequestOptionsSupport.ApplyHeaders( + request: __httpRequest, + clientHeaders: Options.Headers, + requestHeaders: requestOptions?.Headers); + + PrepareRequest( + client: HttpClient, + request: __httpRequest); + PrepareDeleteSignalSubmissionRequest( + httpClient: HttpClient, + httpRequestMessage: __httpRequest, + id: id!); + + return __httpRequest; + } + + global::System.Net.Http.HttpRequestMessage? __httpRequest = null; + global::System.Net.Http.HttpResponseMessage? __response = null; + var __attemptNumber = 0; + try + { + for (var __attempt = 1; __attempt <= __maxAttempts; __attempt++) + { + __attemptNumber = __attempt; + __httpRequest = __CreateHttpRequest(); + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnBeforeRequestAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "DeleteSignalSubmission", + methodName: "DeleteSignalSubmissionAsync", + pathTemplate: "$\"/signal/{id}\"", + httpMethod: "DELETE", + baseUri: BaseUri, + request: __httpRequest!, + response: null, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + try + { + __response = await HttpClient.SendAsync( + request: __httpRequest, + completionOption: global::System.Net.Http.HttpCompletionOption.ResponseContentRead, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + } + catch (global::System.Net.Http.HttpRequestException __exception) + { + var __retryDelay = global::ResembleAI.AutoSDKRequestOptionsSupport.GetRetryDelay( + clientOptions: Options, + requestOptions: requestOptions, + response: null, + attempt: __attempt); + var __willRetry = __attempt < __maxAttempts && !__effectiveCancellationToken.IsCancellationRequested; + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "DeleteSignalSubmission", + methodName: "DeleteSignalSubmissionAsync", + pathTemplate: "$\"/signal/{id}\"", + httpMethod: "DELETE", + baseUri: BaseUri, + request: __httpRequest!, + response: null, + exception: __exception, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: __willRetry, + retryDelay: __willRetry ? __retryDelay : (global::System.TimeSpan?)null, + retryReason: "exception", + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + if (!__willRetry) + { + throw; + } + + __httpRequest.Dispose(); + __httpRequest = null; + await global::ResembleAI.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync( + retryDelay: __retryDelay, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + continue; + } + + if (__response != null && + __attempt < __maxAttempts && + global::ResembleAI.AutoSDKRequestOptionsSupport.ShouldRetryStatusCode(__response.StatusCode)) + { + var __retryDelay = global::ResembleAI.AutoSDKRequestOptionsSupport.GetRetryDelay( + clientOptions: Options, + requestOptions: requestOptions, + response: __response, + attempt: __attempt); + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "DeleteSignalSubmission", + methodName: "DeleteSignalSubmissionAsync", + pathTemplate: "$\"/signal/{id}\"", + httpMethod: "DELETE", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: true, + retryDelay: __retryDelay, + retryReason: "status:" + ((int)__response.StatusCode).ToString(global::System.Globalization.CultureInfo.InvariantCulture), + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + __response.Dispose(); + __response = null; + __httpRequest.Dispose(); + __httpRequest = null; + await global::ResembleAI.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync( + retryDelay: __retryDelay, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + continue; + } + + break; + } + + if (__response == null) + { + throw new global::System.InvalidOperationException("No response received."); + } + + using (__response) + { + + ProcessResponse( + client: HttpClient, + response: __response); + ProcessDeleteSignalSubmissionResponse( + httpClient: HttpClient, + httpResponseMessage: __response); + if (__response.IsSuccessStatusCode) + { + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterSuccessAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "DeleteSignalSubmission", + methodName: "DeleteSignalSubmissionAsync", + pathTemplate: "$\"/signal/{id}\"", + httpMethod: "DELETE", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attemptNumber, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + } + else + { + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "DeleteSignalSubmission", + methodName: "DeleteSignalSubmissionAsync", + pathTemplate: "$\"/signal/{id}\"", + httpMethod: "DELETE", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attemptNumber, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + } + // Submission not found + if ((int)__response.StatusCode == 404) + { + string? __content_404 = null; + global::System.Exception? __exception_404 = null; + global::ResembleAI.SignalError? __value_404 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_404 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_404 = global::ResembleAI.SignalError.FromJson(__content_404, JsonSerializerContext); + } + else + { + __content_404 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_404 = global::ResembleAI.SignalError.FromJson(__content_404, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_404 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_404 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_404, + responseBody: __content_404, + responseObject: __value_404, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + + if (__effectiveReadResponseAsString) + { + var __content = await __response.Content.ReadAsStringAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + + ProcessResponseContent( + client: HttpClient, + response: __response, + content: ref __content); + ProcessDeleteSignalSubmissionResponseContent( + httpClient: HttpClient, + httpResponseMessage: __response, + content: ref __content); + + try + { + __response.EnsureSuccessStatusCode(); + + var __value = global::ResembleAI.SignalSuccessResponse.FromJson(__content, JsonSerializerContext) ?? + throw new global::System.InvalidOperationException($"Response deserialization failed for \"{__content}\" "); + return new global::ResembleAI.AutoSDKHttpResponse( + statusCode: __response.StatusCode, + headers: global::ResembleAI.AutoSDKHttpResponse.CreateHeaders(__response), + requestUri: __response.RequestMessage?.RequestUri, + body: __value); + } + catch (global::System.Exception __ex) + { + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content ?? __response.ReasonPhrase ?? string.Empty, + innerException: __ex, + responseBody: __content, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + } + else + { + try + { + __response.EnsureSuccessStatusCode(); + using var __content = await __response.Content.ReadAsStreamAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + + var __value = await global::ResembleAI.SignalSuccessResponse.FromJsonStreamAsync(__content, JsonSerializerContext).ConfigureAwait(false) ?? + throw new global::System.InvalidOperationException("Response deserialization failed."); + return new global::ResembleAI.AutoSDKHttpResponse( + statusCode: __response.StatusCode, + headers: global::ResembleAI.AutoSDKHttpResponse.CreateHeaders(__response), + requestUri: __response.RequestMessage?.RequestUri, + body: __value); + } + catch (global::System.Exception __ex) + { + string? __content = null; + try + { + __content = await __response.Content.ReadAsStringAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + } + catch (global::System.Exception) + { + } + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content ?? __response.ReasonPhrase ?? string.Empty, + innerException: __ex, + responseBody: __content, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + } + + } + } + finally + { + __httpRequest?.Dispose(); + } + } + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.SignalClient.GetSignalCustomCategory.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.SignalClient.GetSignalCustomCategory.g.cs new file mode 100644 index 0000000..cebaf16 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.SignalClient.GetSignalCustomCategory.g.cs @@ -0,0 +1,473 @@ + +#nullable enable + +namespace ResembleAI +{ + public partial class SignalClient + { + + private static readonly global::ResembleAI.AutoSDKServer[] s_GetSignalCustomCategoryServers = new global::ResembleAI.AutoSDKServer[] + { new global::ResembleAI.AutoSDKServer( + id: "https-app-resemble-ai-api-v2", + name: "app.resemble.ai api v2", + url: "https://app.resemble.ai/api/v2", + description: ""), + }; + + + private static readonly global::ResembleAI.EndPointSecurityRequirement s_GetSignalCustomCategorySecurityRequirement0 = + new global::ResembleAI.EndPointSecurityRequirement + { + Authorizations = new global::ResembleAI.EndPointAuthorizationRequirement[] + { new global::ResembleAI.EndPointAuthorizationRequirement + { + Type = "Http", + SchemeId = "HttpBearer", + Location = "Header", + Name = "Bearer", + FriendlyName = "Bearer", + }, + }, + }; + private static readonly global::ResembleAI.EndPointSecurityRequirement[] s_GetSignalCustomCategorySecurityRequirements = + new global::ResembleAI.EndPointSecurityRequirement[] + { s_GetSignalCustomCategorySecurityRequirement0, + }; + partial void PrepareGetSignalCustomCategoryArguments( + global::System.Net.Http.HttpClient httpClient, + ref int id); + partial void PrepareGetSignalCustomCategoryRequest( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpRequestMessage httpRequestMessage, + int id); + partial void ProcessGetSignalCustomCategoryResponse( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpResponseMessage httpResponseMessage); + + partial void ProcessGetSignalCustomCategoryResponseContent( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpResponseMessage httpResponseMessage, + ref string content); + + /// + /// Get custom category
+ /// Retrieve a single custom category with its example phrases. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task GetSignalCustomCategoryAsync( + int id, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + var __response = await GetSignalCustomCategoryAsResponseAsync( + id: id, + requestOptions: requestOptions, + cancellationToken: cancellationToken + ).ConfigureAwait(false); + + return __response.Body; + } + /// + /// Get custom category
+ /// Retrieve a single custom category with its example phrases. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task> GetSignalCustomCategoryAsResponseAsync( + int id, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + PrepareArguments( + client: HttpClient); + PrepareGetSignalCustomCategoryArguments( + httpClient: HttpClient, + id: ref id); + + + var __authorizations = global::ResembleAI.EndPointSecurityResolver.ResolveAuthorizations( + availableAuthorizations: Authorizations, + securityRequirements: s_GetSignalCustomCategorySecurityRequirements, + operationName: "GetSignalCustomCategoryAsync"); + + using var __timeoutCancellationTokenSource = global::ResembleAI.AutoSDKRequestOptionsSupport.CreateTimeoutCancellationTokenSource( + clientOptions: Options, + requestOptions: requestOptions, + cancellationToken: cancellationToken); + var __effectiveCancellationToken = __timeoutCancellationTokenSource?.Token ?? cancellationToken; + var __effectiveReadResponseAsString = global::ResembleAI.AutoSDKRequestOptionsSupport.GetReadResponseAsString( + clientOptions: Options, + requestOptions: requestOptions, + fallbackValue: ReadResponseAsString); + var __maxAttempts = global::ResembleAI.AutoSDKRequestOptionsSupport.GetMaxAttempts( + clientOptions: Options, + requestOptions: requestOptions, + supportsRetry: true); + + global::System.Net.Http.HttpRequestMessage __CreateHttpRequest() + { + + var __pathBuilder = new global::ResembleAI.PathBuilder( + path: $"/signal/custom_categories/{id}", + baseUri: ResolveBaseUri( + servers: s_GetSignalCustomCategoryServers, + defaultBaseUrl: "https://app.resemble.ai/api/v2")); + var __path = __pathBuilder.ToString(); + __path = global::ResembleAI.AutoSDKRequestOptionsSupport.AppendQueryParameters( + path: __path, + clientParameters: Options.QueryParameters, + requestParameters: requestOptions?.QueryParameters); + var __httpRequest = new global::System.Net.Http.HttpRequestMessage( + method: global::System.Net.Http.HttpMethod.Get, + requestUri: new global::System.Uri(__path, global::System.UriKind.RelativeOrAbsolute)); +#if NET6_0_OR_GREATER + __httpRequest.Version = global::System.Net.HttpVersion.Version11; + __httpRequest.VersionPolicy = global::System.Net.Http.HttpVersionPolicy.RequestVersionOrHigher; +#endif + + foreach (var __authorization in __authorizations) + { + if (__authorization.Type == "Http" || + __authorization.Type == "OAuth2" || + __authorization.Type == "OpenIdConnect") + { + __httpRequest.Headers.Authorization = new global::System.Net.Http.Headers.AuthenticationHeaderValue( + scheme: __authorization.Name, + parameter: __authorization.Value); + } + else if (__authorization.Type == "ApiKey" && + __authorization.Location == "Header") + { + __httpRequest.Headers.Add(__authorization.Name, __authorization.Value); + } + } + global::ResembleAI.AutoSDKRequestOptionsSupport.ApplyHeaders( + request: __httpRequest, + clientHeaders: Options.Headers, + requestHeaders: requestOptions?.Headers); + + PrepareRequest( + client: HttpClient, + request: __httpRequest); + PrepareGetSignalCustomCategoryRequest( + httpClient: HttpClient, + httpRequestMessage: __httpRequest, + id: id!); + + return __httpRequest; + } + + global::System.Net.Http.HttpRequestMessage? __httpRequest = null; + global::System.Net.Http.HttpResponseMessage? __response = null; + var __attemptNumber = 0; + try + { + for (var __attempt = 1; __attempt <= __maxAttempts; __attempt++) + { + __attemptNumber = __attempt; + __httpRequest = __CreateHttpRequest(); + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnBeforeRequestAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "GetSignalCustomCategory", + methodName: "GetSignalCustomCategoryAsync", + pathTemplate: "$\"/signal/custom_categories/{id}\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: null, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + try + { + __response = await HttpClient.SendAsync( + request: __httpRequest, + completionOption: global::System.Net.Http.HttpCompletionOption.ResponseContentRead, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + } + catch (global::System.Net.Http.HttpRequestException __exception) + { + var __retryDelay = global::ResembleAI.AutoSDKRequestOptionsSupport.GetRetryDelay( + clientOptions: Options, + requestOptions: requestOptions, + response: null, + attempt: __attempt); + var __willRetry = __attempt < __maxAttempts && !__effectiveCancellationToken.IsCancellationRequested; + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "GetSignalCustomCategory", + methodName: "GetSignalCustomCategoryAsync", + pathTemplate: "$\"/signal/custom_categories/{id}\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: null, + exception: __exception, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: __willRetry, + retryDelay: __willRetry ? __retryDelay : (global::System.TimeSpan?)null, + retryReason: "exception", + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + if (!__willRetry) + { + throw; + } + + __httpRequest.Dispose(); + __httpRequest = null; + await global::ResembleAI.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync( + retryDelay: __retryDelay, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + continue; + } + + if (__response != null && + __attempt < __maxAttempts && + global::ResembleAI.AutoSDKRequestOptionsSupport.ShouldRetryStatusCode(__response.StatusCode)) + { + var __retryDelay = global::ResembleAI.AutoSDKRequestOptionsSupport.GetRetryDelay( + clientOptions: Options, + requestOptions: requestOptions, + response: __response, + attempt: __attempt); + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "GetSignalCustomCategory", + methodName: "GetSignalCustomCategoryAsync", + pathTemplate: "$\"/signal/custom_categories/{id}\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: true, + retryDelay: __retryDelay, + retryReason: "status:" + ((int)__response.StatusCode).ToString(global::System.Globalization.CultureInfo.InvariantCulture), + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + __response.Dispose(); + __response = null; + __httpRequest.Dispose(); + __httpRequest = null; + await global::ResembleAI.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync( + retryDelay: __retryDelay, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + continue; + } + + break; + } + + if (__response == null) + { + throw new global::System.InvalidOperationException("No response received."); + } + + using (__response) + { + + ProcessResponse( + client: HttpClient, + response: __response); + ProcessGetSignalCustomCategoryResponse( + httpClient: HttpClient, + httpResponseMessage: __response); + if (__response.IsSuccessStatusCode) + { + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterSuccessAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "GetSignalCustomCategory", + methodName: "GetSignalCustomCategoryAsync", + pathTemplate: "$\"/signal/custom_categories/{id}\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attemptNumber, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + } + else + { + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "GetSignalCustomCategory", + methodName: "GetSignalCustomCategoryAsync", + pathTemplate: "$\"/signal/custom_categories/{id}\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attemptNumber, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + } + // Category not found + if ((int)__response.StatusCode == 404) + { + string? __content_404 = null; + global::System.Exception? __exception_404 = null; + global::ResembleAI.SignalError? __value_404 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_404 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_404 = global::ResembleAI.SignalError.FromJson(__content_404, JsonSerializerContext); + } + else + { + __content_404 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_404 = global::ResembleAI.SignalError.FromJson(__content_404, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_404 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_404 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_404, + responseBody: __content_404, + responseObject: __value_404, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + + if (__effectiveReadResponseAsString) + { + var __content = await __response.Content.ReadAsStringAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + + ProcessResponseContent( + client: HttpClient, + response: __response, + content: ref __content); + ProcessGetSignalCustomCategoryResponseContent( + httpClient: HttpClient, + httpResponseMessage: __response, + content: ref __content); + + try + { + __response.EnsureSuccessStatusCode(); + + var __value = global::ResembleAI.SignalCustomCategoryResponse.FromJson(__content, JsonSerializerContext) ?? + throw new global::System.InvalidOperationException($"Response deserialization failed for \"{__content}\" "); + return new global::ResembleAI.AutoSDKHttpResponse( + statusCode: __response.StatusCode, + headers: global::ResembleAI.AutoSDKHttpResponse.CreateHeaders(__response), + requestUri: __response.RequestMessage?.RequestUri, + body: __value); + } + catch (global::System.Exception __ex) + { + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content ?? __response.ReasonPhrase ?? string.Empty, + innerException: __ex, + responseBody: __content, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + } + else + { + try + { + __response.EnsureSuccessStatusCode(); + using var __content = await __response.Content.ReadAsStreamAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + + var __value = await global::ResembleAI.SignalCustomCategoryResponse.FromJsonStreamAsync(__content, JsonSerializerContext).ConfigureAwait(false) ?? + throw new global::System.InvalidOperationException("Response deserialization failed."); + return new global::ResembleAI.AutoSDKHttpResponse( + statusCode: __response.StatusCode, + headers: global::ResembleAI.AutoSDKHttpResponse.CreateHeaders(__response), + requestUri: __response.RequestMessage?.RequestUri, + body: __value); + } + catch (global::System.Exception __ex) + { + string? __content = null; + try + { + __content = await __response.Content.ReadAsStringAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + } + catch (global::System.Exception) + { + } + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content ?? __response.ReasonPhrase ?? string.Empty, + innerException: __ex, + responseBody: __content, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + } + + } + } + finally + { + __httpRequest?.Dispose(); + } + } + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.SignalClient.ListSignalCustomCategories.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.SignalClient.ListSignalCustomCategories.g.cs new file mode 100644 index 0000000..30bd925 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.SignalClient.ListSignalCustomCategories.g.cs @@ -0,0 +1,464 @@ + +#nullable enable + +namespace ResembleAI +{ + public partial class SignalClient + { + + private static readonly global::ResembleAI.AutoSDKServer[] s_ListSignalCustomCategoriesServers = new global::ResembleAI.AutoSDKServer[] + { new global::ResembleAI.AutoSDKServer( + id: "https-app-resemble-ai-api-v2", + name: "app.resemble.ai api v2", + url: "https://app.resemble.ai/api/v2", + description: ""), + }; + + + private static readonly global::ResembleAI.EndPointSecurityRequirement s_ListSignalCustomCategoriesSecurityRequirement0 = + new global::ResembleAI.EndPointSecurityRequirement + { + Authorizations = new global::ResembleAI.EndPointAuthorizationRequirement[] + { new global::ResembleAI.EndPointAuthorizationRequirement + { + Type = "Http", + SchemeId = "HttpBearer", + Location = "Header", + Name = "Bearer", + FriendlyName = "Bearer", + }, + }, + }; + private static readonly global::ResembleAI.EndPointSecurityRequirement[] s_ListSignalCustomCategoriesSecurityRequirements = + new global::ResembleAI.EndPointSecurityRequirement[] + { s_ListSignalCustomCategoriesSecurityRequirement0, + }; + partial void PrepareListSignalCustomCategoriesArguments( + global::System.Net.Http.HttpClient httpClient); + partial void PrepareListSignalCustomCategoriesRequest( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpRequestMessage httpRequestMessage); + partial void ProcessListSignalCustomCategoriesResponse( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpResponseMessage httpResponseMessage); + + partial void ProcessListSignalCustomCategoriesResponseContent( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpResponseMessage httpResponseMessage, + ref string content); + + /// + /// List custom categories
+ /// Retrieve the team's Signal settings, the built-in categories, the team's custom categories with their example phrases, and calibration status. + ///
+ /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task ListSignalCustomCategoriesAsync( + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + var __response = await ListSignalCustomCategoriesAsResponseAsync( + requestOptions: requestOptions, + cancellationToken: cancellationToken + ).ConfigureAwait(false); + + return __response.Body; + } + /// + /// List custom categories
+ /// Retrieve the team's Signal settings, the built-in categories, the team's custom categories with their example phrases, and calibration status. + ///
+ /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task> ListSignalCustomCategoriesAsResponseAsync( + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + PrepareArguments( + client: HttpClient); + PrepareListSignalCustomCategoriesArguments( + httpClient: HttpClient); + + + var __authorizations = global::ResembleAI.EndPointSecurityResolver.ResolveAuthorizations( + availableAuthorizations: Authorizations, + securityRequirements: s_ListSignalCustomCategoriesSecurityRequirements, + operationName: "ListSignalCustomCategoriesAsync"); + + using var __timeoutCancellationTokenSource = global::ResembleAI.AutoSDKRequestOptionsSupport.CreateTimeoutCancellationTokenSource( + clientOptions: Options, + requestOptions: requestOptions, + cancellationToken: cancellationToken); + var __effectiveCancellationToken = __timeoutCancellationTokenSource?.Token ?? cancellationToken; + var __effectiveReadResponseAsString = global::ResembleAI.AutoSDKRequestOptionsSupport.GetReadResponseAsString( + clientOptions: Options, + requestOptions: requestOptions, + fallbackValue: ReadResponseAsString); + var __maxAttempts = global::ResembleAI.AutoSDKRequestOptionsSupport.GetMaxAttempts( + clientOptions: Options, + requestOptions: requestOptions, + supportsRetry: true); + + global::System.Net.Http.HttpRequestMessage __CreateHttpRequest() + { + + var __pathBuilder = new global::ResembleAI.PathBuilder( + path: "/signal/custom_categories", + baseUri: ResolveBaseUri( + servers: s_ListSignalCustomCategoriesServers, + defaultBaseUrl: "https://app.resemble.ai/api/v2")); + var __path = __pathBuilder.ToString(); + __path = global::ResembleAI.AutoSDKRequestOptionsSupport.AppendQueryParameters( + path: __path, + clientParameters: Options.QueryParameters, + requestParameters: requestOptions?.QueryParameters); + var __httpRequest = new global::System.Net.Http.HttpRequestMessage( + method: global::System.Net.Http.HttpMethod.Get, + requestUri: new global::System.Uri(__path, global::System.UriKind.RelativeOrAbsolute)); +#if NET6_0_OR_GREATER + __httpRequest.Version = global::System.Net.HttpVersion.Version11; + __httpRequest.VersionPolicy = global::System.Net.Http.HttpVersionPolicy.RequestVersionOrHigher; +#endif + + foreach (var __authorization in __authorizations) + { + if (__authorization.Type == "Http" || + __authorization.Type == "OAuth2" || + __authorization.Type == "OpenIdConnect") + { + __httpRequest.Headers.Authorization = new global::System.Net.Http.Headers.AuthenticationHeaderValue( + scheme: __authorization.Name, + parameter: __authorization.Value); + } + else if (__authorization.Type == "ApiKey" && + __authorization.Location == "Header") + { + __httpRequest.Headers.Add(__authorization.Name, __authorization.Value); + } + } + global::ResembleAI.AutoSDKRequestOptionsSupport.ApplyHeaders( + request: __httpRequest, + clientHeaders: Options.Headers, + requestHeaders: requestOptions?.Headers); + + PrepareRequest( + client: HttpClient, + request: __httpRequest); + PrepareListSignalCustomCategoriesRequest( + httpClient: HttpClient, + httpRequestMessage: __httpRequest); + + return __httpRequest; + } + + global::System.Net.Http.HttpRequestMessage? __httpRequest = null; + global::System.Net.Http.HttpResponseMessage? __response = null; + var __attemptNumber = 0; + try + { + for (var __attempt = 1; __attempt <= __maxAttempts; __attempt++) + { + __attemptNumber = __attempt; + __httpRequest = __CreateHttpRequest(); + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnBeforeRequestAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "ListSignalCustomCategories", + methodName: "ListSignalCustomCategoriesAsync", + pathTemplate: "\"/signal/custom_categories\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: null, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + try + { + __response = await HttpClient.SendAsync( + request: __httpRequest, + completionOption: global::System.Net.Http.HttpCompletionOption.ResponseContentRead, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + } + catch (global::System.Net.Http.HttpRequestException __exception) + { + var __retryDelay = global::ResembleAI.AutoSDKRequestOptionsSupport.GetRetryDelay( + clientOptions: Options, + requestOptions: requestOptions, + response: null, + attempt: __attempt); + var __willRetry = __attempt < __maxAttempts && !__effectiveCancellationToken.IsCancellationRequested; + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "ListSignalCustomCategories", + methodName: "ListSignalCustomCategoriesAsync", + pathTemplate: "\"/signal/custom_categories\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: null, + exception: __exception, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: __willRetry, + retryDelay: __willRetry ? __retryDelay : (global::System.TimeSpan?)null, + retryReason: "exception", + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + if (!__willRetry) + { + throw; + } + + __httpRequest.Dispose(); + __httpRequest = null; + await global::ResembleAI.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync( + retryDelay: __retryDelay, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + continue; + } + + if (__response != null && + __attempt < __maxAttempts && + global::ResembleAI.AutoSDKRequestOptionsSupport.ShouldRetryStatusCode(__response.StatusCode)) + { + var __retryDelay = global::ResembleAI.AutoSDKRequestOptionsSupport.GetRetryDelay( + clientOptions: Options, + requestOptions: requestOptions, + response: __response, + attempt: __attempt); + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "ListSignalCustomCategories", + methodName: "ListSignalCustomCategoriesAsync", + pathTemplate: "\"/signal/custom_categories\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: true, + retryDelay: __retryDelay, + retryReason: "status:" + ((int)__response.StatusCode).ToString(global::System.Globalization.CultureInfo.InvariantCulture), + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + __response.Dispose(); + __response = null; + __httpRequest.Dispose(); + __httpRequest = null; + await global::ResembleAI.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync( + retryDelay: __retryDelay, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + continue; + } + + break; + } + + if (__response == null) + { + throw new global::System.InvalidOperationException("No response received."); + } + + using (__response) + { + + ProcessResponse( + client: HttpClient, + response: __response); + ProcessListSignalCustomCategoriesResponse( + httpClient: HttpClient, + httpResponseMessage: __response); + if (__response.IsSuccessStatusCode) + { + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterSuccessAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "ListSignalCustomCategories", + methodName: "ListSignalCustomCategoriesAsync", + pathTemplate: "\"/signal/custom_categories\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attemptNumber, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + } + else + { + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "ListSignalCustomCategories", + methodName: "ListSignalCustomCategoriesAsync", + pathTemplate: "\"/signal/custom_categories\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attemptNumber, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + } + // The account does not have Signal access + if ((int)__response.StatusCode == 403) + { + string? __content_403 = null; + global::System.Exception? __exception_403 = null; + global::ResembleAI.SignalError? __value_403 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_403 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_403 = global::ResembleAI.SignalError.FromJson(__content_403, JsonSerializerContext); + } + else + { + __content_403 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_403 = global::ResembleAI.SignalError.FromJson(__content_403, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_403 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_403 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_403, + responseBody: __content_403, + responseObject: __value_403, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + + if (__effectiveReadResponseAsString) + { + var __content = await __response.Content.ReadAsStringAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + + ProcessResponseContent( + client: HttpClient, + response: __response, + content: ref __content); + ProcessListSignalCustomCategoriesResponseContent( + httpClient: HttpClient, + httpResponseMessage: __response, + content: ref __content); + + try + { + __response.EnsureSuccessStatusCode(); + + var __value = global::ResembleAI.SignalCustomCategoryListResponse.FromJson(__content, JsonSerializerContext) ?? + throw new global::System.InvalidOperationException($"Response deserialization failed for \"{__content}\" "); + return new global::ResembleAI.AutoSDKHttpResponse( + statusCode: __response.StatusCode, + headers: global::ResembleAI.AutoSDKHttpResponse.CreateHeaders(__response), + requestUri: __response.RequestMessage?.RequestUri, + body: __value); + } + catch (global::System.Exception __ex) + { + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content ?? __response.ReasonPhrase ?? string.Empty, + innerException: __ex, + responseBody: __content, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + } + else + { + try + { + __response.EnsureSuccessStatusCode(); + using var __content = await __response.Content.ReadAsStreamAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + + var __value = await global::ResembleAI.SignalCustomCategoryListResponse.FromJsonStreamAsync(__content, JsonSerializerContext).ConfigureAwait(false) ?? + throw new global::System.InvalidOperationException("Response deserialization failed."); + return new global::ResembleAI.AutoSDKHttpResponse( + statusCode: __response.StatusCode, + headers: global::ResembleAI.AutoSDKHttpResponse.CreateHeaders(__response), + requestUri: __response.RequestMessage?.RequestUri, + body: __value); + } + catch (global::System.Exception __ex) + { + string? __content = null; + try + { + __content = await __response.Content.ReadAsStringAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + } + catch (global::System.Exception) + { + } + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content ?? __response.ReasonPhrase ?? string.Empty, + innerException: __ex, + responseBody: __content, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + } + + } + } + finally + { + __httpRequest?.Dispose(); + } + } + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.SignalClient.ListSignalSubmissions.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.SignalClient.ListSignalSubmissions.g.cs new file mode 100644 index 0000000..3221e78 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.SignalClient.ListSignalSubmissions.g.cs @@ -0,0 +1,494 @@ + +#nullable enable + +namespace ResembleAI +{ + public partial class SignalClient + { + + private static readonly global::ResembleAI.AutoSDKServer[] s_ListSignalSubmissionsServers = new global::ResembleAI.AutoSDKServer[] + { new global::ResembleAI.AutoSDKServer( + id: "https-app-resemble-ai-api-v2", + name: "app.resemble.ai api v2", + url: "https://app.resemble.ai/api/v2", + description: ""), + }; + + + private static readonly global::ResembleAI.EndPointSecurityRequirement s_ListSignalSubmissionsSecurityRequirement0 = + new global::ResembleAI.EndPointSecurityRequirement + { + Authorizations = new global::ResembleAI.EndPointAuthorizationRequirement[] + { new global::ResembleAI.EndPointAuthorizationRequirement + { + Type = "Http", + SchemeId = "HttpBearer", + Location = "Header", + Name = "Bearer", + FriendlyName = "Bearer", + }, + }, + }; + private static readonly global::ResembleAI.EndPointSecurityRequirement[] s_ListSignalSubmissionsSecurityRequirements = + new global::ResembleAI.EndPointSecurityRequirement[] + { s_ListSignalSubmissionsSecurityRequirement0, + }; + partial void PrepareListSignalSubmissionsArguments( + global::System.Net.Http.HttpClient httpClient, + ref int? page, + ref int? perPage); + partial void PrepareListSignalSubmissionsRequest( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpRequestMessage httpRequestMessage, + int? page, + int? perPage); + partial void ProcessListSignalSubmissionsResponse( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpResponseMessage httpResponseMessage); + + partial void ProcessListSignalSubmissionsResponseContent( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpResponseMessage httpResponseMessage, + ref string content); + + /// + /// List submissions
+ /// Retrieve past Signal submissions for your team, newest first. + ///
+ /// + /// Default Value: 1 + /// + /// + /// Default Value: 10 + /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task ListSignalSubmissionsAsync( + int? page = default, + int? perPage = default, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + var __response = await ListSignalSubmissionsAsResponseAsync( + page: page, + perPage: perPage, + requestOptions: requestOptions, + cancellationToken: cancellationToken + ).ConfigureAwait(false); + + return __response.Body; + } + /// + /// List submissions
+ /// Retrieve past Signal submissions for your team, newest first. + ///
+ /// + /// Default Value: 1 + /// + /// + /// Default Value: 10 + /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task> ListSignalSubmissionsAsResponseAsync( + int? page = default, + int? perPage = default, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + PrepareArguments( + client: HttpClient); + PrepareListSignalSubmissionsArguments( + httpClient: HttpClient, + page: ref page, + perPage: ref perPage); + + + var __authorizations = global::ResembleAI.EndPointSecurityResolver.ResolveAuthorizations( + availableAuthorizations: Authorizations, + securityRequirements: s_ListSignalSubmissionsSecurityRequirements, + operationName: "ListSignalSubmissionsAsync"); + + using var __timeoutCancellationTokenSource = global::ResembleAI.AutoSDKRequestOptionsSupport.CreateTimeoutCancellationTokenSource( + clientOptions: Options, + requestOptions: requestOptions, + cancellationToken: cancellationToken); + var __effectiveCancellationToken = __timeoutCancellationTokenSource?.Token ?? cancellationToken; + var __effectiveReadResponseAsString = global::ResembleAI.AutoSDKRequestOptionsSupport.GetReadResponseAsString( + clientOptions: Options, + requestOptions: requestOptions, + fallbackValue: ReadResponseAsString); + var __maxAttempts = global::ResembleAI.AutoSDKRequestOptionsSupport.GetMaxAttempts( + clientOptions: Options, + requestOptions: requestOptions, + supportsRetry: true); + + global::System.Net.Http.HttpRequestMessage __CreateHttpRequest() + { + + var __pathBuilder = new global::ResembleAI.PathBuilder( + path: "/signal", + baseUri: ResolveBaseUri( + servers: s_ListSignalSubmissionsServers, + defaultBaseUrl: "https://app.resemble.ai/api/v2")); + __pathBuilder + .AddOptionalParameter("page", page?.ToString()) + .AddOptionalParameter("per_page", perPage?.ToString()) + ; + var __path = __pathBuilder.ToString(); + __path = global::ResembleAI.AutoSDKRequestOptionsSupport.AppendQueryParameters( + path: __path, + clientParameters: Options.QueryParameters, + requestParameters: requestOptions?.QueryParameters); + var __httpRequest = new global::System.Net.Http.HttpRequestMessage( + method: global::System.Net.Http.HttpMethod.Get, + requestUri: new global::System.Uri(__path, global::System.UriKind.RelativeOrAbsolute)); +#if NET6_0_OR_GREATER + __httpRequest.Version = global::System.Net.HttpVersion.Version11; + __httpRequest.VersionPolicy = global::System.Net.Http.HttpVersionPolicy.RequestVersionOrHigher; +#endif + + foreach (var __authorization in __authorizations) + { + if (__authorization.Type == "Http" || + __authorization.Type == "OAuth2" || + __authorization.Type == "OpenIdConnect") + { + __httpRequest.Headers.Authorization = new global::System.Net.Http.Headers.AuthenticationHeaderValue( + scheme: __authorization.Name, + parameter: __authorization.Value); + } + else if (__authorization.Type == "ApiKey" && + __authorization.Location == "Header") + { + __httpRequest.Headers.Add(__authorization.Name, __authorization.Value); + } + } + global::ResembleAI.AutoSDKRequestOptionsSupport.ApplyHeaders( + request: __httpRequest, + clientHeaders: Options.Headers, + requestHeaders: requestOptions?.Headers); + + PrepareRequest( + client: HttpClient, + request: __httpRequest); + PrepareListSignalSubmissionsRequest( + httpClient: HttpClient, + httpRequestMessage: __httpRequest, + page: page, + perPage: perPage); + + return __httpRequest; + } + + global::System.Net.Http.HttpRequestMessage? __httpRequest = null; + global::System.Net.Http.HttpResponseMessage? __response = null; + var __attemptNumber = 0; + try + { + for (var __attempt = 1; __attempt <= __maxAttempts; __attempt++) + { + __attemptNumber = __attempt; + __httpRequest = __CreateHttpRequest(); + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnBeforeRequestAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "ListSignalSubmissions", + methodName: "ListSignalSubmissionsAsync", + pathTemplate: "\"/signal\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: null, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + try + { + __response = await HttpClient.SendAsync( + request: __httpRequest, + completionOption: global::System.Net.Http.HttpCompletionOption.ResponseContentRead, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + } + catch (global::System.Net.Http.HttpRequestException __exception) + { + var __retryDelay = global::ResembleAI.AutoSDKRequestOptionsSupport.GetRetryDelay( + clientOptions: Options, + requestOptions: requestOptions, + response: null, + attempt: __attempt); + var __willRetry = __attempt < __maxAttempts && !__effectiveCancellationToken.IsCancellationRequested; + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "ListSignalSubmissions", + methodName: "ListSignalSubmissionsAsync", + pathTemplate: "\"/signal\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: null, + exception: __exception, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: __willRetry, + retryDelay: __willRetry ? __retryDelay : (global::System.TimeSpan?)null, + retryReason: "exception", + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + if (!__willRetry) + { + throw; + } + + __httpRequest.Dispose(); + __httpRequest = null; + await global::ResembleAI.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync( + retryDelay: __retryDelay, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + continue; + } + + if (__response != null && + __attempt < __maxAttempts && + global::ResembleAI.AutoSDKRequestOptionsSupport.ShouldRetryStatusCode(__response.StatusCode)) + { + var __retryDelay = global::ResembleAI.AutoSDKRequestOptionsSupport.GetRetryDelay( + clientOptions: Options, + requestOptions: requestOptions, + response: __response, + attempt: __attempt); + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "ListSignalSubmissions", + methodName: "ListSignalSubmissionsAsync", + pathTemplate: "\"/signal\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: true, + retryDelay: __retryDelay, + retryReason: "status:" + ((int)__response.StatusCode).ToString(global::System.Globalization.CultureInfo.InvariantCulture), + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + __response.Dispose(); + __response = null; + __httpRequest.Dispose(); + __httpRequest = null; + await global::ResembleAI.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync( + retryDelay: __retryDelay, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + continue; + } + + break; + } + + if (__response == null) + { + throw new global::System.InvalidOperationException("No response received."); + } + + using (__response) + { + + ProcessResponse( + client: HttpClient, + response: __response); + ProcessListSignalSubmissionsResponse( + httpClient: HttpClient, + httpResponseMessage: __response); + if (__response.IsSuccessStatusCode) + { + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterSuccessAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "ListSignalSubmissions", + methodName: "ListSignalSubmissionsAsync", + pathTemplate: "\"/signal\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attemptNumber, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + } + else + { + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "ListSignalSubmissions", + methodName: "ListSignalSubmissionsAsync", + pathTemplate: "\"/signal\"", + httpMethod: "GET", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attemptNumber, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + } + // The account does not have Signal access + if ((int)__response.StatusCode == 403) + { + string? __content_403 = null; + global::System.Exception? __exception_403 = null; + global::ResembleAI.SignalError? __value_403 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_403 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_403 = global::ResembleAI.SignalError.FromJson(__content_403, JsonSerializerContext); + } + else + { + __content_403 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_403 = global::ResembleAI.SignalError.FromJson(__content_403, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_403 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_403 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_403, + responseBody: __content_403, + responseObject: __value_403, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + + if (__effectiveReadResponseAsString) + { + var __content = await __response.Content.ReadAsStringAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + + ProcessResponseContent( + client: HttpClient, + response: __response, + content: ref __content); + ProcessListSignalSubmissionsResponseContent( + httpClient: HttpClient, + httpResponseMessage: __response, + content: ref __content); + + try + { + __response.EnsureSuccessStatusCode(); + + var __value = global::ResembleAI.SignalSubmissionListResponse.FromJson(__content, JsonSerializerContext) ?? + throw new global::System.InvalidOperationException($"Response deserialization failed for \"{__content}\" "); + return new global::ResembleAI.AutoSDKHttpResponse( + statusCode: __response.StatusCode, + headers: global::ResembleAI.AutoSDKHttpResponse.CreateHeaders(__response), + requestUri: __response.RequestMessage?.RequestUri, + body: __value); + } + catch (global::System.Exception __ex) + { + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content ?? __response.ReasonPhrase ?? string.Empty, + innerException: __ex, + responseBody: __content, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + } + else + { + try + { + __response.EnsureSuccessStatusCode(); + using var __content = await __response.Content.ReadAsStreamAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + + var __value = await global::ResembleAI.SignalSubmissionListResponse.FromJsonStreamAsync(__content, JsonSerializerContext).ConfigureAwait(false) ?? + throw new global::System.InvalidOperationException("Response deserialization failed."); + return new global::ResembleAI.AutoSDKHttpResponse( + statusCode: __response.StatusCode, + headers: global::ResembleAI.AutoSDKHttpResponse.CreateHeaders(__response), + requestUri: __response.RequestMessage?.RequestUri, + body: __value); + } + catch (global::System.Exception __ex) + { + string? __content = null; + try + { + __content = await __response.Content.ReadAsStringAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + } + catch (global::System.Exception) + { + } + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content ?? __response.ReasonPhrase ?? string.Empty, + innerException: __ex, + responseBody: __content, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + } + + } + } + finally + { + __httpRequest?.Dispose(); + } + } + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.SignalClient.UpdateSignalCustomCategory.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.SignalClient.UpdateSignalCustomCategory.g.cs new file mode 100644 index 0000000..5b89b47 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.SignalClient.UpdateSignalCustomCategory.g.cs @@ -0,0 +1,568 @@ + +#nullable enable + +namespace ResembleAI +{ + public partial class SignalClient + { + + private static readonly global::ResembleAI.AutoSDKServer[] s_UpdateSignalCustomCategoryServers = new global::ResembleAI.AutoSDKServer[] + { new global::ResembleAI.AutoSDKServer( + id: "https-app-resemble-ai-api-v2", + name: "app.resemble.ai api v2", + url: "https://app.resemble.ai/api/v2", + description: ""), + }; + + + private static readonly global::ResembleAI.EndPointSecurityRequirement s_UpdateSignalCustomCategorySecurityRequirement0 = + new global::ResembleAI.EndPointSecurityRequirement + { + Authorizations = new global::ResembleAI.EndPointAuthorizationRequirement[] + { new global::ResembleAI.EndPointAuthorizationRequirement + { + Type = "Http", + SchemeId = "HttpBearer", + Location = "Header", + Name = "Bearer", + FriendlyName = "Bearer", + }, + }, + }; + private static readonly global::ResembleAI.EndPointSecurityRequirement[] s_UpdateSignalCustomCategorySecurityRequirements = + new global::ResembleAI.EndPointSecurityRequirement[] + { s_UpdateSignalCustomCategorySecurityRequirement0, + }; + partial void PrepareUpdateSignalCustomCategoryArguments( + global::System.Net.Http.HttpClient httpClient, + ref int id, + global::ResembleAI.SignalCustomCategoryUpdateRequest request); + partial void PrepareUpdateSignalCustomCategoryRequest( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpRequestMessage httpRequestMessage, + int id, + global::ResembleAI.SignalCustomCategoryUpdateRequest request); + partial void ProcessUpdateSignalCustomCategoryResponse( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpResponseMessage httpResponseMessage); + + partial void ProcessUpdateSignalCustomCategoryResponseContent( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpResponseMessage httpResponseMessage, + ref string content); + + /// + /// Update custom category
+ /// Update a custom category. Supplying `scenarios` replaces the existing example phrases and re-triggers embedding. + ///
+ /// + /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task UpdateSignalCustomCategoryAsync( + int id, + + global::ResembleAI.SignalCustomCategoryUpdateRequest request, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + var __response = await UpdateSignalCustomCategoryAsResponseAsync( + id: id, + + request: request, + requestOptions: requestOptions, + cancellationToken: cancellationToken + ).ConfigureAwait(false); + + return __response.Body; + } + /// + /// Update custom category
+ /// Update a custom category. Supplying `scenarios` replaces the existing example phrases and re-triggers embedding. + ///
+ /// + /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task> UpdateSignalCustomCategoryAsResponseAsync( + int id, + + global::ResembleAI.SignalCustomCategoryUpdateRequest request, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + request = request ?? throw new global::System.ArgumentNullException(nameof(request)); + + PrepareArguments( + client: HttpClient); + PrepareUpdateSignalCustomCategoryArguments( + httpClient: HttpClient, + id: ref id, + request: request); + + + var __authorizations = global::ResembleAI.EndPointSecurityResolver.ResolveAuthorizations( + availableAuthorizations: Authorizations, + securityRequirements: s_UpdateSignalCustomCategorySecurityRequirements, + operationName: "UpdateSignalCustomCategoryAsync"); + + using var __timeoutCancellationTokenSource = global::ResembleAI.AutoSDKRequestOptionsSupport.CreateTimeoutCancellationTokenSource( + clientOptions: Options, + requestOptions: requestOptions, + cancellationToken: cancellationToken); + var __effectiveCancellationToken = __timeoutCancellationTokenSource?.Token ?? cancellationToken; + var __effectiveReadResponseAsString = global::ResembleAI.AutoSDKRequestOptionsSupport.GetReadResponseAsString( + clientOptions: Options, + requestOptions: requestOptions, + fallbackValue: ReadResponseAsString); + var __maxAttempts = global::ResembleAI.AutoSDKRequestOptionsSupport.GetMaxAttempts( + clientOptions: Options, + requestOptions: requestOptions, + supportsRetry: true); + + global::System.Net.Http.HttpRequestMessage __CreateHttpRequest() + { + + var __pathBuilder = new global::ResembleAI.PathBuilder( + path: $"/signal/custom_categories/{id}", + baseUri: ResolveBaseUri( + servers: s_UpdateSignalCustomCategoryServers, + defaultBaseUrl: "https://app.resemble.ai/api/v2")); + var __path = __pathBuilder.ToString(); + __path = global::ResembleAI.AutoSDKRequestOptionsSupport.AppendQueryParameters( + path: __path, + clientParameters: Options.QueryParameters, + requestParameters: requestOptions?.QueryParameters); + var __httpRequest = new global::System.Net.Http.HttpRequestMessage( + method: new global::System.Net.Http.HttpMethod("PATCH"), + requestUri: new global::System.Uri(__path, global::System.UriKind.RelativeOrAbsolute)); +#if NET6_0_OR_GREATER + __httpRequest.Version = global::System.Net.HttpVersion.Version11; + __httpRequest.VersionPolicy = global::System.Net.Http.HttpVersionPolicy.RequestVersionOrHigher; +#endif + + foreach (var __authorization in __authorizations) + { + if (__authorization.Type == "Http" || + __authorization.Type == "OAuth2" || + __authorization.Type == "OpenIdConnect") + { + __httpRequest.Headers.Authorization = new global::System.Net.Http.Headers.AuthenticationHeaderValue( + scheme: __authorization.Name, + parameter: __authorization.Value); + } + else if (__authorization.Type == "ApiKey" && + __authorization.Location == "Header") + { + __httpRequest.Headers.Add(__authorization.Name, __authorization.Value); + } + } + var __httpRequestContentBody = request.ToJson(JsonSerializerContext); + var __httpRequestContent = new global::System.Net.Http.StringContent( + content: __httpRequestContentBody, + encoding: global::System.Text.Encoding.UTF8, + mediaType: "application/json"); + __httpRequest.Content = __httpRequestContent; + global::ResembleAI.AutoSDKRequestOptionsSupport.ApplyHeaders( + request: __httpRequest, + clientHeaders: Options.Headers, + requestHeaders: requestOptions?.Headers); + + PrepareRequest( + client: HttpClient, + request: __httpRequest); + PrepareUpdateSignalCustomCategoryRequest( + httpClient: HttpClient, + httpRequestMessage: __httpRequest, + id: id!, + request: request); + + return __httpRequest; + } + + global::System.Net.Http.HttpRequestMessage? __httpRequest = null; + global::System.Net.Http.HttpResponseMessage? __response = null; + var __attemptNumber = 0; + try + { + for (var __attempt = 1; __attempt <= __maxAttempts; __attempt++) + { + __attemptNumber = __attempt; + __httpRequest = __CreateHttpRequest(); + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnBeforeRequestAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "UpdateSignalCustomCategory", + methodName: "UpdateSignalCustomCategoryAsync", + pathTemplate: "$\"/signal/custom_categories/{id}\"", + httpMethod: "PATCH", + baseUri: BaseUri, + request: __httpRequest!, + response: null, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + try + { + __response = await HttpClient.SendAsync( + request: __httpRequest, + completionOption: global::System.Net.Http.HttpCompletionOption.ResponseContentRead, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + } + catch (global::System.Net.Http.HttpRequestException __exception) + { + var __retryDelay = global::ResembleAI.AutoSDKRequestOptionsSupport.GetRetryDelay( + clientOptions: Options, + requestOptions: requestOptions, + response: null, + attempt: __attempt); + var __willRetry = __attempt < __maxAttempts && !__effectiveCancellationToken.IsCancellationRequested; + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "UpdateSignalCustomCategory", + methodName: "UpdateSignalCustomCategoryAsync", + pathTemplate: "$\"/signal/custom_categories/{id}\"", + httpMethod: "PATCH", + baseUri: BaseUri, + request: __httpRequest!, + response: null, + exception: __exception, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: __willRetry, + retryDelay: __willRetry ? __retryDelay : (global::System.TimeSpan?)null, + retryReason: "exception", + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + if (!__willRetry) + { + throw; + } + + __httpRequest.Dispose(); + __httpRequest = null; + await global::ResembleAI.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync( + retryDelay: __retryDelay, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + continue; + } + + if (__response != null && + __attempt < __maxAttempts && + global::ResembleAI.AutoSDKRequestOptionsSupport.ShouldRetryStatusCode(__response.StatusCode)) + { + var __retryDelay = global::ResembleAI.AutoSDKRequestOptionsSupport.GetRetryDelay( + clientOptions: Options, + requestOptions: requestOptions, + response: __response, + attempt: __attempt); + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "UpdateSignalCustomCategory", + methodName: "UpdateSignalCustomCategoryAsync", + pathTemplate: "$\"/signal/custom_categories/{id}\"", + httpMethod: "PATCH", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: true, + retryDelay: __retryDelay, + retryReason: "status:" + ((int)__response.StatusCode).ToString(global::System.Globalization.CultureInfo.InvariantCulture), + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + __response.Dispose(); + __response = null; + __httpRequest.Dispose(); + __httpRequest = null; + await global::ResembleAI.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync( + retryDelay: __retryDelay, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + continue; + } + + break; + } + + if (__response == null) + { + throw new global::System.InvalidOperationException("No response received."); + } + + using (__response) + { + + ProcessResponse( + client: HttpClient, + response: __response); + ProcessUpdateSignalCustomCategoryResponse( + httpClient: HttpClient, + httpResponseMessage: __response); + if (__response.IsSuccessStatusCode) + { + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterSuccessAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "UpdateSignalCustomCategory", + methodName: "UpdateSignalCustomCategoryAsync", + pathTemplate: "$\"/signal/custom_categories/{id}\"", + httpMethod: "PATCH", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attemptNumber, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + } + else + { + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "UpdateSignalCustomCategory", + methodName: "UpdateSignalCustomCategoryAsync", + pathTemplate: "$\"/signal/custom_categories/{id}\"", + httpMethod: "PATCH", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attemptNumber, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + } + // Category not found + if ((int)__response.StatusCode == 404) + { + string? __content_404 = null; + global::System.Exception? __exception_404 = null; + global::ResembleAI.SignalError? __value_404 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_404 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_404 = global::ResembleAI.SignalError.FromJson(__content_404, JsonSerializerContext); + } + else + { + __content_404 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_404 = global::ResembleAI.SignalError.FromJson(__content_404, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_404 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_404 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_404, + responseBody: __content_404, + responseObject: __value_404, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + // Validation error + if ((int)__response.StatusCode == 422) + { + string? __content_422 = null; + global::System.Exception? __exception_422 = null; + global::ResembleAI.SignalError? __value_422 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_422 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_422 = global::ResembleAI.SignalError.FromJson(__content_422, JsonSerializerContext); + } + else + { + __content_422 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_422 = global::ResembleAI.SignalError.FromJson(__content_422, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_422 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_422 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_422, + responseBody: __content_422, + responseObject: __value_422, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + + if (__effectiveReadResponseAsString) + { + var __content = await __response.Content.ReadAsStringAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + + ProcessResponseContent( + client: HttpClient, + response: __response, + content: ref __content); + ProcessUpdateSignalCustomCategoryResponseContent( + httpClient: HttpClient, + httpResponseMessage: __response, + content: ref __content); + + try + { + __response.EnsureSuccessStatusCode(); + + var __value = global::ResembleAI.SignalCustomCategoryResponse.FromJson(__content, JsonSerializerContext) ?? + throw new global::System.InvalidOperationException($"Response deserialization failed for \"{__content}\" "); + return new global::ResembleAI.AutoSDKHttpResponse( + statusCode: __response.StatusCode, + headers: global::ResembleAI.AutoSDKHttpResponse.CreateHeaders(__response), + requestUri: __response.RequestMessage?.RequestUri, + body: __value); + } + catch (global::System.Exception __ex) + { + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content ?? __response.ReasonPhrase ?? string.Empty, + innerException: __ex, + responseBody: __content, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + } + else + { + try + { + __response.EnsureSuccessStatusCode(); + using var __content = await __response.Content.ReadAsStreamAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + + var __value = await global::ResembleAI.SignalCustomCategoryResponse.FromJsonStreamAsync(__content, JsonSerializerContext).ConfigureAwait(false) ?? + throw new global::System.InvalidOperationException("Response deserialization failed."); + return new global::ResembleAI.AutoSDKHttpResponse( + statusCode: __response.StatusCode, + headers: global::ResembleAI.AutoSDKHttpResponse.CreateHeaders(__response), + requestUri: __response.RequestMessage?.RequestUri, + body: __value); + } + catch (global::System.Exception __ex) + { + string? __content = null; + try + { + __content = await __response.Content.ReadAsStringAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + } + catch (global::System.Exception) + { + } + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content ?? __response.ReasonPhrase ?? string.Empty, + innerException: __ex, + responseBody: __content, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + } + + } + } + finally + { + __httpRequest?.Dispose(); + } + } + /// + /// Update custom category
+ /// Update a custom category. Supplying `scenarios` replaces the existing example phrases and re-triggers embedding. + ///
+ /// + /// + /// + /// + /// + /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task UpdateSignalCustomCategoryAsync( + int id, + string? name = default, + global::System.Collections.Generic.IList? scenarios = default, + string? description = default, + string? icon = default, + bool? enabled = default, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + var __request = new global::ResembleAI.SignalCustomCategoryUpdateRequest + { + Name = name, + Scenarios = scenarios, + Description = description, + Icon = icon, + Enabled = enabled, + }; + + return await UpdateSignalCustomCategoryAsync( + id: id, + request: __request, + requestOptions: requestOptions, + cancellationToken: cancellationToken).ConfigureAwait(false); + } + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.SignalClient.UpdateSignalSettings.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.SignalClient.UpdateSignalSettings.g.cs new file mode 100644 index 0000000..000c510 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.SignalClient.UpdateSignalSettings.g.cs @@ -0,0 +1,509 @@ + +#nullable enable + +namespace ResembleAI +{ + public partial class SignalClient + { + + private static readonly global::ResembleAI.AutoSDKServer[] s_UpdateSignalSettingsServers = new global::ResembleAI.AutoSDKServer[] + { new global::ResembleAI.AutoSDKServer( + id: "https-app-resemble-ai-api-v2", + name: "app.resemble.ai api v2", + url: "https://app.resemble.ai/api/v2", + description: ""), + }; + + + private static readonly global::ResembleAI.EndPointSecurityRequirement s_UpdateSignalSettingsSecurityRequirement0 = + new global::ResembleAI.EndPointSecurityRequirement + { + Authorizations = new global::ResembleAI.EndPointAuthorizationRequirement[] + { new global::ResembleAI.EndPointAuthorizationRequirement + { + Type = "Http", + SchemeId = "HttpBearer", + Location = "Header", + Name = "Bearer", + FriendlyName = "Bearer", + }, + }, + }; + private static readonly global::ResembleAI.EndPointSecurityRequirement[] s_UpdateSignalSettingsSecurityRequirements = + new global::ResembleAI.EndPointSecurityRequirement[] + { s_UpdateSignalSettingsSecurityRequirement0, + }; + partial void PrepareUpdateSignalSettingsArguments( + global::System.Net.Http.HttpClient httpClient, + global::ResembleAI.SignalSettingsUpdateRequest request); + partial void PrepareUpdateSignalSettingsRequest( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpRequestMessage httpRequestMessage, + global::ResembleAI.SignalSettingsUpdateRequest request); + partial void ProcessUpdateSignalSettingsResponse( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpResponseMessage httpResponseMessage); + + partial void ProcessUpdateSignalSettingsResponseContent( + global::System.Net.Http.HttpClient httpClient, + global::System.Net.Http.HttpResponseMessage httpResponseMessage, + ref string content); + + /// + /// Update team settings
+ /// Update team-level Signal preferences. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task UpdateSignalSettingsAsync( + + global::ResembleAI.SignalSettingsUpdateRequest request, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + var __response = await UpdateSignalSettingsAsResponseAsync( + + request: request, + requestOptions: requestOptions, + cancellationToken: cancellationToken + ).ConfigureAwait(false); + + return __response.Body; + } + /// + /// Update team settings
+ /// Update team-level Signal preferences. + ///
+ /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task> UpdateSignalSettingsAsResponseAsync( + + global::ResembleAI.SignalSettingsUpdateRequest request, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + request = request ?? throw new global::System.ArgumentNullException(nameof(request)); + + PrepareArguments( + client: HttpClient); + PrepareUpdateSignalSettingsArguments( + httpClient: HttpClient, + request: request); + + + var __authorizations = global::ResembleAI.EndPointSecurityResolver.ResolveAuthorizations( + availableAuthorizations: Authorizations, + securityRequirements: s_UpdateSignalSettingsSecurityRequirements, + operationName: "UpdateSignalSettingsAsync"); + + using var __timeoutCancellationTokenSource = global::ResembleAI.AutoSDKRequestOptionsSupport.CreateTimeoutCancellationTokenSource( + clientOptions: Options, + requestOptions: requestOptions, + cancellationToken: cancellationToken); + var __effectiveCancellationToken = __timeoutCancellationTokenSource?.Token ?? cancellationToken; + var __effectiveReadResponseAsString = global::ResembleAI.AutoSDKRequestOptionsSupport.GetReadResponseAsString( + clientOptions: Options, + requestOptions: requestOptions, + fallbackValue: ReadResponseAsString); + var __maxAttempts = global::ResembleAI.AutoSDKRequestOptionsSupport.GetMaxAttempts( + clientOptions: Options, + requestOptions: requestOptions, + supportsRetry: true); + + global::System.Net.Http.HttpRequestMessage __CreateHttpRequest() + { + + var __pathBuilder = new global::ResembleAI.PathBuilder( + path: "/signal/settings", + baseUri: ResolveBaseUri( + servers: s_UpdateSignalSettingsServers, + defaultBaseUrl: "https://app.resemble.ai/api/v2")); + var __path = __pathBuilder.ToString(); + __path = global::ResembleAI.AutoSDKRequestOptionsSupport.AppendQueryParameters( + path: __path, + clientParameters: Options.QueryParameters, + requestParameters: requestOptions?.QueryParameters); + var __httpRequest = new global::System.Net.Http.HttpRequestMessage( + method: new global::System.Net.Http.HttpMethod("PATCH"), + requestUri: new global::System.Uri(__path, global::System.UriKind.RelativeOrAbsolute)); +#if NET6_0_OR_GREATER + __httpRequest.Version = global::System.Net.HttpVersion.Version11; + __httpRequest.VersionPolicy = global::System.Net.Http.HttpVersionPolicy.RequestVersionOrHigher; +#endif + + foreach (var __authorization in __authorizations) + { + if (__authorization.Type == "Http" || + __authorization.Type == "OAuth2" || + __authorization.Type == "OpenIdConnect") + { + __httpRequest.Headers.Authorization = new global::System.Net.Http.Headers.AuthenticationHeaderValue( + scheme: __authorization.Name, + parameter: __authorization.Value); + } + else if (__authorization.Type == "ApiKey" && + __authorization.Location == "Header") + { + __httpRequest.Headers.Add(__authorization.Name, __authorization.Value); + } + } + var __httpRequestContentBody = request.ToJson(JsonSerializerContext); + var __httpRequestContent = new global::System.Net.Http.StringContent( + content: __httpRequestContentBody, + encoding: global::System.Text.Encoding.UTF8, + mediaType: "application/json"); + __httpRequest.Content = __httpRequestContent; + global::ResembleAI.AutoSDKRequestOptionsSupport.ApplyHeaders( + request: __httpRequest, + clientHeaders: Options.Headers, + requestHeaders: requestOptions?.Headers); + + PrepareRequest( + client: HttpClient, + request: __httpRequest); + PrepareUpdateSignalSettingsRequest( + httpClient: HttpClient, + httpRequestMessage: __httpRequest, + request: request); + + return __httpRequest; + } + + global::System.Net.Http.HttpRequestMessage? __httpRequest = null; + global::System.Net.Http.HttpResponseMessage? __response = null; + var __attemptNumber = 0; + try + { + for (var __attempt = 1; __attempt <= __maxAttempts; __attempt++) + { + __attemptNumber = __attempt; + __httpRequest = __CreateHttpRequest(); + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnBeforeRequestAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "UpdateSignalSettings", + methodName: "UpdateSignalSettingsAsync", + pathTemplate: "\"/signal/settings\"", + httpMethod: "PATCH", + baseUri: BaseUri, + request: __httpRequest!, + response: null, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + try + { + __response = await HttpClient.SendAsync( + request: __httpRequest, + completionOption: global::System.Net.Http.HttpCompletionOption.ResponseContentRead, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + } + catch (global::System.Net.Http.HttpRequestException __exception) + { + var __retryDelay = global::ResembleAI.AutoSDKRequestOptionsSupport.GetRetryDelay( + clientOptions: Options, + requestOptions: requestOptions, + response: null, + attempt: __attempt); + var __willRetry = __attempt < __maxAttempts && !__effectiveCancellationToken.IsCancellationRequested; + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "UpdateSignalSettings", + methodName: "UpdateSignalSettingsAsync", + pathTemplate: "\"/signal/settings\"", + httpMethod: "PATCH", + baseUri: BaseUri, + request: __httpRequest!, + response: null, + exception: __exception, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: __willRetry, + retryDelay: __willRetry ? __retryDelay : (global::System.TimeSpan?)null, + retryReason: "exception", + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + if (!__willRetry) + { + throw; + } + + __httpRequest.Dispose(); + __httpRequest = null; + await global::ResembleAI.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync( + retryDelay: __retryDelay, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + continue; + } + + if (__response != null && + __attempt < __maxAttempts && + global::ResembleAI.AutoSDKRequestOptionsSupport.ShouldRetryStatusCode(__response.StatusCode)) + { + var __retryDelay = global::ResembleAI.AutoSDKRequestOptionsSupport.GetRetryDelay( + clientOptions: Options, + requestOptions: requestOptions, + response: __response, + attempt: __attempt); + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "UpdateSignalSettings", + methodName: "UpdateSignalSettingsAsync", + pathTemplate: "\"/signal/settings\"", + httpMethod: "PATCH", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attempt, + maxAttempts: __maxAttempts, + willRetry: true, + retryDelay: __retryDelay, + retryReason: "status:" + ((int)__response.StatusCode).ToString(global::System.Globalization.CultureInfo.InvariantCulture), + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + __response.Dispose(); + __response = null; + __httpRequest.Dispose(); + __httpRequest = null; + await global::ResembleAI.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync( + retryDelay: __retryDelay, + cancellationToken: __effectiveCancellationToken).ConfigureAwait(false); + continue; + } + + break; + } + + if (__response == null) + { + throw new global::System.InvalidOperationException("No response received."); + } + + using (__response) + { + + ProcessResponse( + client: HttpClient, + response: __response); + ProcessUpdateSignalSettingsResponse( + httpClient: HttpClient, + httpResponseMessage: __response); + if (__response.IsSuccessStatusCode) + { + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterSuccessAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "UpdateSignalSettings", + methodName: "UpdateSignalSettingsAsync", + pathTemplate: "\"/signal/settings\"", + httpMethod: "PATCH", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attemptNumber, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + } + else + { + await global::ResembleAI.AutoSDKRequestOptionsSupport.OnAfterErrorAsync( + clientOptions: Options, + context: global::ResembleAI.AutoSDKRequestOptionsSupport.CreateHookContext( + operationId: "UpdateSignalSettings", + methodName: "UpdateSignalSettingsAsync", + pathTemplate: "\"/signal/settings\"", + httpMethod: "PATCH", + baseUri: BaseUri, + request: __httpRequest!, + response: __response, + exception: null, + clientOptions: Options, + requestOptions: requestOptions, + attempt: __attemptNumber, + maxAttempts: __maxAttempts, + willRetry: false, + retryDelay: null, + retryReason: global::System.String.Empty, + cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false); + } + // No team context + if ((int)__response.StatusCode == 422) + { + string? __content_422 = null; + global::System.Exception? __exception_422 = null; + global::ResembleAI.SignalError? __value_422 = null; + try + { + if (__effectiveReadResponseAsString) + { + __content_422 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + __value_422 = global::ResembleAI.SignalError.FromJson(__content_422, JsonSerializerContext); + } + else + { + __content_422 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false); + + __value_422 = global::ResembleAI.SignalError.FromJson(__content_422, JsonSerializerContext); + } + } + catch (global::System.Exception __ex) + { + __exception_422 = __ex; + } + + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content_422 ?? __response.ReasonPhrase ?? string.Empty, + innerException: __exception_422, + responseBody: __content_422, + responseObject: __value_422, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + + if (__effectiveReadResponseAsString) + { + var __content = await __response.Content.ReadAsStringAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + + ProcessResponseContent( + client: HttpClient, + response: __response, + content: ref __content); + ProcessUpdateSignalSettingsResponseContent( + httpClient: HttpClient, + httpResponseMessage: __response, + content: ref __content); + + try + { + __response.EnsureSuccessStatusCode(); + + var __value = global::ResembleAI.SignalSettingsResponse.FromJson(__content, JsonSerializerContext) ?? + throw new global::System.InvalidOperationException($"Response deserialization failed for \"{__content}\" "); + return new global::ResembleAI.AutoSDKHttpResponse( + statusCode: __response.StatusCode, + headers: global::ResembleAI.AutoSDKHttpResponse.CreateHeaders(__response), + requestUri: __response.RequestMessage?.RequestUri, + body: __value); + } + catch (global::System.Exception __ex) + { + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content ?? __response.ReasonPhrase ?? string.Empty, + innerException: __ex, + responseBody: __content, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + } + else + { + try + { + __response.EnsureSuccessStatusCode(); + using var __content = await __response.Content.ReadAsStreamAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + + var __value = await global::ResembleAI.SignalSettingsResponse.FromJsonStreamAsync(__content, JsonSerializerContext).ConfigureAwait(false) ?? + throw new global::System.InvalidOperationException("Response deserialization failed."); + return new global::ResembleAI.AutoSDKHttpResponse( + statusCode: __response.StatusCode, + headers: global::ResembleAI.AutoSDKHttpResponse.CreateHeaders(__response), + requestUri: __response.RequestMessage?.RequestUri, + body: __value); + } + catch (global::System.Exception __ex) + { + string? __content = null; + try + { + __content = await __response.Content.ReadAsStringAsync( + #if NET5_0_OR_GREATER + __effectiveCancellationToken + #endif + ).ConfigureAwait(false); + } + catch (global::System.Exception) + { + } + + throw global::ResembleAI.ApiException.Create( + statusCode: __response.StatusCode, + message: __content ?? __response.ReasonPhrase ?? string.Empty, + innerException: __ex, + responseBody: __content, + responseHeaders: global::System.Linq.Enumerable.ToDictionary( + __response.Headers, + h => h.Key, + h => h.Value)); + } + } + + } + } + finally + { + __httpRequest?.Dispose(); + } + } + /// + /// Update team settings
+ /// Update team-level Signal preferences. + ///
+ /// + /// When false, scoring uses only the team's custom categories. + /// + /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering. + /// The token to cancel the operation with + /// + public async global::System.Threading.Tasks.Task UpdateSignalSettingsAsync( + bool? useBuiltinCategories = default, + global::ResembleAI.AutoSDKRequestOptions? requestOptions = default, + global::System.Threading.CancellationToken cancellationToken = default) + { + var __request = new global::ResembleAI.SignalSettingsUpdateRequest + { + UseBuiltinCategories = useBuiltinCategories, + }; + + return await UpdateSignalSettingsAsync( + request: __request, + requestOptions: requestOptions, + cancellationToken: cancellationToken).ConfigureAwait(false); + } + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/Generated/ResembleAI.SignalClient.g.cs b/src/libs/ResembleAI/Generated/ResembleAI.SignalClient.g.cs new file mode 100644 index 0000000..c4d5905 --- /dev/null +++ b/src/libs/ResembleAI/Generated/ResembleAI.SignalClient.g.cs @@ -0,0 +1,175 @@ + +#nullable enable + +namespace ResembleAI +{ + /// + /// If no httpClient is provided, a new one will be created.
+ /// If no baseUri is provided, the default baseUri from OpenAPI spec will be used. + ///
+ public sealed partial class SignalClient : global::ResembleAI.ISignalClient, global::System.IDisposable + { + /// + /// + /// + public const string DefaultBaseUrl = "https://app.resemble.ai/api/v2"; + + private bool _disposeHttpClient = true; + + /// + public global::System.Net.Http.HttpClient HttpClient { get; } + + /// + public System.Uri? BaseUri => HttpClient.BaseAddress; + + /// + public global::System.Collections.Generic.List Authorizations { get; } + + /// + public bool ReadResponseAsString { get; set; } +#if DEBUG + = true; +#endif + + /// + public global::ResembleAI.AutoSDKClientOptions Options { get; } + + + internal global::ResembleAI.AutoSDKServerConfiguration AutoSDKServerConfiguration { get; set; } = new global::ResembleAI.AutoSDKServerConfiguration(); + /// + /// + /// + public global::System.Text.Json.Serialization.JsonSerializerContext JsonSerializerContext { get; set; } = global::ResembleAI.SourceGenerationContext.Default; + + + /// + /// Creates a new instance of the SignalClient. + /// If no httpClient is provided, a new one will be created. + /// If no baseUri is provided, the default baseUri from OpenAPI spec will be used. + /// + /// The HttpClient instance. If not provided, a new one will be created. + /// The base URL for the API. If not provided, the default baseUri from OpenAPI spec will be used. + /// The authorizations to use for the requests. + /// Dispose the HttpClient when the instance is disposed. True by default. + public SignalClient( + global::System.Net.Http.HttpClient? httpClient = null, + global::System.Uri? baseUri = null, + global::System.Collections.Generic.List? authorizations = null, + bool disposeHttpClient = true) : this( + httpClient, + baseUri, + authorizations, + options: null, + disposeHttpClient: disposeHttpClient) + { + } + + /// + /// Creates a new instance of the SignalClient with explicit options but no base URL override. + /// Skips passing baseUri so the default base URL from the OpenAPI spec applies. + /// + /// The HttpClient instance. If not provided, a new one will be created. + /// The authorizations to use for the requests. + /// Client-wide request defaults such as headers, query parameters, retries, and timeout. + /// Dispose the HttpClient when the instance is disposed. True by default. + public SignalClient( + global::System.Net.Http.HttpClient? httpClient, + global::System.Collections.Generic.List? authorizations, + global::ResembleAI.AutoSDKClientOptions? options, + bool disposeHttpClient = true) : this( + httpClient, + baseUri: null, + authorizations, + options, + disposeHttpClient: disposeHttpClient) + { + } + + /// + /// Creates a new instance of the SignalClient. + /// If no httpClient is provided, a new one will be created. + /// If no baseUri is provided, the default baseUri from OpenAPI spec will be used. + /// + /// The HttpClient instance. If not provided, a new one will be created. + /// The base URL for the API. If not provided, the default baseUri from OpenAPI spec will be used. + /// The authorizations to use for the requests. + /// Client-wide request defaults such as headers, query parameters, retries, and timeout. + /// Dispose the HttpClient when the instance is disposed. True by default. + public SignalClient( + global::System.Net.Http.HttpClient? httpClient, + global::System.Uri? baseUri, + global::System.Collections.Generic.List? authorizations, + global::ResembleAI.AutoSDKClientOptions? options, + bool disposeHttpClient = true) + { + + HttpClient = httpClient ?? new global::System.Net.Http.HttpClient(); + if (baseUri is not null) + { + HttpClient.BaseAddress ??= baseUri; + } + Authorizations = authorizations ?? new global::System.Collections.Generic.List(); + Options = options ?? new global::ResembleAI.AutoSDKClientOptions(); + _disposeHttpClient = disposeHttpClient; + + AutoSDKServerConfiguration.ExplicitBaseUri = baseUri ?? httpClient?.BaseAddress; + + Initialized(HttpClient); + } + + /// + public void Dispose() + { + if (_disposeHttpClient) + { + HttpClient.Dispose(); + } + } + + partial void Initialized( + global::System.Net.Http.HttpClient client); + partial void PrepareArguments( + global::System.Net.Http.HttpClient client); + partial void PrepareRequest( + global::System.Net.Http.HttpClient client, + global::System.Net.Http.HttpRequestMessage request); + partial void ProcessResponse( + global::System.Net.Http.HttpClient client, + global::System.Net.Http.HttpResponseMessage response); + partial void ProcessResponseContent( + global::System.Net.Http.HttpClient client, + global::System.Net.Http.HttpResponseMessage response, + ref string content); + + + private global::System.Uri? ResolveBaseUri( + global::ResembleAI.AutoSDKServer[] servers, + string defaultBaseUrl) + { + if (AutoSDKServerConfiguration.ExplicitBaseUri is global::System.Uri explicitBaseUri) + { + return explicitBaseUri; + } + + if (AutoSDKServerConfiguration.SelectedServer is global::ResembleAI.AutoSDKServer selectedServer) + { + foreach (var server in servers) + { + if (string.Equals(server.Id, selectedServer.Id, global::System.StringComparison.Ordinal)) + { + return server.Uri; + } + } + } + + if (servers.Length > 0) + { + return servers[0].Uri; + } + + return string.IsNullOrWhiteSpace(defaultBaseUrl) + ? HttpClient.BaseAddress + : new global::System.Uri(defaultBaseUrl, global::System.UriKind.RelativeOrAbsolute); + } + } +} \ No newline at end of file diff --git a/src/libs/ResembleAI/openapi.yaml b/src/libs/ResembleAI/openapi.yaml index c85119e..8887170 100644 --- a/src/libs/ResembleAI/openapi.yaml +++ b/src/libs/ResembleAI/openapi.yaml @@ -36,7 +36,7 @@ { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -67,7 +67,7 @@ { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -220,7 +220,7 @@ { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -268,7 +268,7 @@ { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -432,7 +432,7 @@ { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -480,7 +480,7 @@ { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -557,7 +557,7 @@ { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -702,7 +702,7 @@ { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -799,7 +799,7 @@ { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -877,7 +877,7 @@ { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -968,7 +968,7 @@ { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -1015,7 +1015,7 @@ { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -1072,7 +1072,7 @@ { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -1176,7 +1176,7 @@ { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -1243,7 +1243,7 @@ { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -1290,7 +1290,7 @@ { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -1365,7 +1365,7 @@ { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -1396,7 +1396,7 @@ { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -1461,7 +1461,7 @@ { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -1517,7 +1517,7 @@ { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -1625,7 +1625,7 @@ { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -1673,7 +1673,7 @@ { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -1759,7 +1759,7 @@ { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -1823,7 +1823,7 @@ { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -1861,7 +1861,7 @@ { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -1925,7 +1925,7 @@ { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -1951,19 +1951,37 @@ } ] }, - "/secure_uploads": { - "post": { - "operationId": "create-secure-upload", - "summary": "Upload media securely", - "description": "Upload a media file and receive a short-lived token that can be passed to\ndownstream endpoints (such as `/detect` and `/intelligence`) in place of a\npublic URL. The returned token is a JWT that expires 1 hour after issuance.\n\nKeeping uploads private avoids exposing source media on the open internet and\nmeans you do not need to host files yourself for jobs that only need the API\nto read them once.\n", + "/signal": { + "get": { + "operationId": "list-signal-submissions", + "summary": "List submissions", + "description": "Retrieve past Signal submissions for your team, newest first.", "tags": [ - "secureUploads" + "signal" ], "parameters": [ + { + "name": "page", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "default": 1 + } + }, + { + "name": "per_page", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "default": 10 + } + }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -1972,75 +1990,39 @@ ], "responses": { "200": { - "description": "Upload accepted", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Secure Uploads_createSecureUpload_Response_200" - } - } - } - }, - "400": { - "description": "Bad request", + "description": "Paginated submissions", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Error" + "$ref": "#/components/schemas/SignalSubmissionListResponse" } } } }, - "401": { - "description": "Unauthorized", + "403": { + "description": "The account does not have Signal access", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Error" + "$ref": "#/components/schemas/SignalError" } } } } - }, - "requestBody": { - "content": { - "multipart/form-data": { - "schema": { - "type": "object", - "properties": { - "file": { - "type": "string", - "format": "binary", - "description": "The media file to upload (audio, image, or video)." - } - }, - "required": [ - "file" - ] - } - } - } } }, - "servers": [ - { - "url": "https://app.resemble.ai/api/v2" - } - ] - }, - "/synthesize": { "post": { - "operationId": "synthesize", - "summary": "Synchronous text-to-speech synthesis", - "description": "Generate speech synchronously from text or SSML. Returns complete audio as base64. The model associated with the voice is selected automatically.", + "operationId": "create-signal-submission", + "summary": "Score content", + "description": "Score a piece of content against the fraud and scam categories available to your team\nand return a verdict with the best-matching categories.\n\nSupply exactly one of:\n\n- **Text** — `application/json` with a `text` field.\n- **File** — `multipart/form-data` with the media attached as `file`. Audio, image, and\n video are supported, up to 15 MB. The media type is detected from the file's MIME type\n unless `media_type` is supplied.\n", "tags": [ - "textToSpeech" + "signal" ], "parameters": [ { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -2049,31 +2031,41 @@ ], "responses": { "200": { - "description": "Successful synthesis", + "description": "Scored submission", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Text-to-Speech_synthesize_Response_200" + "$ref": "#/components/schemas/SignalScoreResponse" } } } }, "400": { - "description": "Bad request", + "description": "Neither text nor file was provided, or `media_type` is invalid", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Error" + "$ref": "#/components/schemas/SignalError" } } } }, - "401": { - "description": "Unauthorized", + "403": { + "description": "The account does not have Signal access", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Error" + "$ref": "#/components/schemas/SignalError" + } + } + } + }, + "413": { + "description": "File exceeds the 15 MB limit", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SignalError" } } } @@ -2085,48 +2077,13 @@ "schema": { "type": "object", "properties": { - "voice_uuid": { - "type": "string", - "description": "Voice UUID to use for synthesis" - }, - "project_uuid": { - "type": "string", - "description": "Optional project UUID to store the clip" - }, - "title": { - "type": "string", - "description": "Optional title for the generated clip" - }, - "data": { + "text": { "type": "string", - "description": "Text or SSML to synthesize (max 3,000 characters)" - }, - "precision": { - "$ref": "#/components/schemas/SynthesizePostRequestBodyContentApplicationJsonSchemaPrecision", - "description": "Audio precision for WAV output" - }, - "output_format": { - "$ref": "#/components/schemas/SynthesizePostRequestBodyContentApplicationJsonSchemaOutputFormat", - "description": "Audio output format" - }, - "sample_rate": { - "$ref": "#/components/schemas/SynthesizePostRequestBodyContentApplicationJsonSchemaSampleRate", - "description": "Audio sample rate in Hz" - }, - "use_hd": { - "type": "boolean", - "default": false, - "description": "Enable HD synthesis with small latency trade-off" - }, - "apply_custom_pronunciations": { - "type": "boolean", - "default": false, - "description": "When true, automatically applies your team's custom pronunciations to matching words in the input text. Defaults to false." + "description": "Text to analyze." } }, "required": [ - "voice_uuid", - "data" + "text" ] } } @@ -2135,23 +2092,31 @@ }, "servers": [ { - "url": "https://f.cluster.resemble.ai" + "url": "https://app.resemble.ai/api/v2" } ] }, - "/stream": { - "post": { - "operationId": "stream-synthesize", - "summary": "Streaming text-to-speech synthesis (HTTP)", - "description": "Stream audio as it's generated. Returns chunked WAV data for progressive playback. The model associated with the voice is selected automatically.", + "/signal/{id}": { + "delete": { + "operationId": "delete-signal-submission", + "summary": "Delete submission", + "description": "Permanently delete a Signal submission belonging to your team.", "tags": [ - "textToSpeech" + "signal" ], "parameters": [ + { + "name": "id", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -2160,110 +2125,46 @@ ], "responses": { "200": { - "description": "Streaming audio response (chunked WAV)", + "description": "Submission deleted", "content": { - "application/octet-stream": { + "application/json": { "schema": { - "type": "string", - "format": "binary" + "$ref": "#/components/schemas/SignalSuccessResponse" } } } }, - "400": { - "description": "Bad request", + "404": { + "description": "Submission not found", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Error" + "$ref": "#/components/schemas/SignalError" } } } } - }, - "requestBody": { - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "voice_uuid": { - "type": "string", - "description": "Voice UUID to use for synthesis" - }, - "data": { - "type": "string", - "description": "Text or SSML to synthesize (max 2000 characters)" - }, - "project_uuid": { - "type": "string", - "description": "Optional project UUID to store the clip" - }, - "precision": { - "$ref": "#/components/schemas/StreamPostRequestBodyContentApplicationJsonSchemaPrecision", - "description": "Audio precision" - }, - "sample_rate": { - "$ref": "#/components/schemas/StreamPostRequestBodyContentApplicationJsonSchemaSampleRate", - "description": "Audio sample rate in Hz" - }, - "use_hd": { - "type": "boolean", - "default": false, - "description": "Enable HD synthesis with small latency trade-off" - }, - "apply_custom_pronunciations": { - "type": "boolean", - "default": false, - "description": "When true, automatically applies your team's custom pronunciations to matching words in the input text. Defaults to false." - } - }, - "required": [ - "voice_uuid", - "data" - ] - } - } - } } }, "servers": [ { - "url": "https://f.cluster.resemble.ai" + "url": "https://app.resemble.ai/api/v2" } ] }, - "/speech-to-text": { + "/signal/custom_categories": { "get": { - "operationId": "list-transcripts", - "summary": "List transcripts", - "description": "Retrieve paginated list of transcript jobs", + "operationId": "list-signal-custom-categories", + "summary": "List custom categories", + "description": "Retrieve the team's Signal settings, the built-in categories, the team's custom categories with their example phrases, and calibration status.", "tags": [ - "speechToText" + "signal" ], "parameters": [ - { - "name": "page", - "in": "query", - "required": true, - "schema": { - "type": "integer", - "default": 1 - } - }, - { - "name": "per_page", - "in": "query", - "required": false, - "schema": { - "type": "integer", - "default": 25 - } - }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -2272,11 +2173,21 @@ ], "responses": { "200": { - "description": "List of transcripts", + "description": "Categories, settings, and calibration", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Speech-to-Text_listTranscripts_Response_200" + "$ref": "#/components/schemas/SignalCustomCategoryListResponse" + } + } + } + }, + "403": { + "description": "The account does not have Signal access", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SignalError" } } } @@ -2284,17 +2195,17 @@ } }, "post": { - "operationId": "create-transcript", - "summary": "Create transcript job", - "description": "Submit audio or video for transcription", + "operationId": "create-signal-custom-category", + "summary": "Create custom category", + "description": "Create a custom fraud category from example phrases. Categories embed asynchronously:\na new category starts at `pending`, moves to `embedding`, and becomes usable for\nscoring once its status is `ready`.\n", "tags": [ - "speechToText" + "signal" ], "parameters": [ { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -2303,31 +2214,21 @@ ], "responses": { "200": { - "description": "Transcript job created", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Speech-to-Text_createTranscript_Response_200" - } - } - } - }, - "400": { - "description": "Bad request (missing input, invalid callback_url, or zero retention requested without a callback_url)", + "description": "Category created", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Error" + "$ref": "#/components/schemas/SignalCustomCategoryResponse" } } } }, - "402": { - "description": "Zero retention is not included in the team's plan or subscription", + "422": { + "description": "Validation error", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Error" + "$ref": "#/components/schemas/SignalError" } } } @@ -2335,30 +2236,9 @@ }, "requestBody": { "content": { - "multipart/form-data": { + "application/json": { "schema": { - "type": "object", - "properties": { - "file": { - "type": "string", - "format": "binary", - "description": "Audio or video file (max 500 MB, 20 minutes)" - }, - "query": { - "type": "string", - "description": "Optional intelligence question to evaluate after transcription" - }, - "callback_url": { - "type": "string", - "format": "uri", - "description": "Public HTTPS URL that receives a POST with the result when processing finishes. Private, loopback, link-local, and non-HTTPS URLs are rejected. Required when zero_retention_mode is true." - }, - "zero_retention_mode": { - "type": "boolean", - "default": false, - "description": "Enable zero retention. The uploaded media and any temporary processing copies are permanently deleted after transcription, and the transcript content is purged after one delivery to callback_url (which is mandatory in this mode). privacy_mode is accepted as an alias. Plan feature — requests are rejected with 402 if not included in your plan." - } - } + "$ref": "#/components/schemas/SignalCustomCategoryCreateRequest" } } } @@ -2370,28 +2250,27 @@ } ] }, - "/speech-to-text/{uuid}": { + "/signal/custom_categories/{id}": { "get": { - "operationId": "get-transcript", - "summary": "Get transcript", - "description": "Retrieve transcript status, text, and timestamps", + "operationId": "get-signal-custom-category", + "summary": "Get custom category", + "description": "Retrieve a single custom category with its example phrases.", "tags": [ - "speechToText" + "signal" ], "parameters": [ { - "name": "uuid", + "name": "id", "in": "path", "required": true, "schema": { - "type": "string", - "format": "uuid" + "type": "integer" } }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -2400,45 +2279,47 @@ ], "responses": { "200": { - "description": "Transcript details", + "description": "Custom category", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Speech-to-Text_getTranscript_Response_200" + "$ref": "#/components/schemas/SignalCustomCategoryResponse" + } + } + } + }, + "404": { + "description": "Category not found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SignalError" } } } } } }, - "servers": [ - { - "url": "https://app.resemble.ai/api/v2" - } - ] - }, - "/speech-to-text/{uuid}/ask": { - "post": { - "operationId": "ask-transcript-question", - "summary": "Ask intelligence question", - "description": "Submit a question about a completed transcript", + "delete": { + "operationId": "delete-signal-custom-category", + "summary": "Delete custom category", + "description": "Delete a custom category and its example phrases.", "tags": [ - "speechToText" + "signal" ], "parameters": [ { - "name": "uuid", + "name": "id", "in": "path", "required": true, "schema": { - "type": "string", - "format": "uuid" + "type": "integer" } }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -2447,91 +2328,47 @@ ], "responses": { "200": { - "description": "Question submitted", + "description": "Category deleted", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Speech-to-Text_askTranscriptQuestion_Response_200" + "$ref": "#/components/schemas/SignalSuccessResponse" } } } }, - "400": { - "description": "Missing query, transcript not yet processed, or the transcript was created with zero retention and its content has been purged", + "404": { + "description": "Category not found", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Error" + "$ref": "#/components/schemas/SignalError" } } } } - }, - "requestBody": { - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "query": { - "type": "string", - "description": "Question to ask about the transcript" - } - }, - "required": [ - "query" - ] - } - } - } } }, - "servers": [ - { - "url": "https://app.resemble.ai/api/v2" - } - ] - }, - "/speech-to-text/{uuid}/questions": { - "get": { - "operationId": "list-transcript-questions", - "summary": "List intelligence questions", - "description": "List all questions asked about a transcript", + "patch": { + "operationId": "update-signal-custom-category", + "summary": "Update custom category", + "description": "Update a custom category. Supplying `scenarios` replaces the existing example phrases and re-triggers embedding.", "tags": [ - "speechToText" + "signal" ], "parameters": [ { - "name": "uuid", + "name": "id", "in": "path", "required": true, "schema": { - "type": "string", - "format": "uuid" - } - }, - { - "name": "page", - "in": "query", - "required": true, - "schema": { - "type": "integer", - "default": 1 - } - }, - { - "name": "per_page", - "in": "query", - "required": false, - "schema": { - "type": "integer", - "default": 25 + "type": "integer" } }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -2540,71 +2377,44 @@ ], "responses": { "200": { - "description": "List of questions", + "description": "Category updated", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Speech-to-Text_listTranscriptQuestions_Response_200" + "$ref": "#/components/schemas/SignalCustomCategoryResponse" } } } - } - } - }, - "servers": [ - { - "url": "https://app.resemble.ai/api/v2" - } - ] - }, - "/speech-to-text/{uuid}/questions/{question_uuid}": { - "get": { - "operationId": "get-transcript-question", - "summary": "Get intelligence question status", - "description": "Check the status of a specific question", - "tags": [ - "speechToText" - ], - "parameters": [ - { - "name": "uuid", - "in": "path", - "required": true, - "schema": { - "type": "string", - "format": "uuid" - } }, - { - "name": "question_uuid", - "in": "path", - "required": true, - "schema": { - "type": "string", - "format": "uuid" + "404": { + "description": "Category not found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SignalError" + } + } } }, - { - "name": "Authorization", - "in": "header", - "description": "API token from https://app.resemble.ai/account/api", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "Question details", + "422": { + "description": "Validation error", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Speech-to-Text_getTranscriptQuestion_Response_200" + "$ref": "#/components/schemas/SignalError" } } } } + }, + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SignalCustomCategoryUpdateRequest" + } + } + } } }, "servers": [ @@ -2613,38 +2423,19 @@ } ] }, - "/audio_enhancements": { - "get": { - "operationId": "list-audio-enhancements", - "summary": "List audio enhancements", - "description": "Returns a paginated list of all audio enhancements for your team, ordered by most recent first.", + "/signal/settings": { + "patch": { + "operationId": "update-signal-settings", + "summary": "Update team settings", + "description": "Update team-level Signal preferences.", "tags": [ - "audioEnhancement" + "signal" ], "parameters": [ - { - "name": "page", - "in": "query", - "description": "Page number (starting from 1).", - "required": true, - "schema": { - "type": "integer" - } - }, - { - "name": "page_size", - "in": "query", - "description": "Items per page (10 to 1000). Default 10.", - "required": false, - "schema": { - "type": "integer", - "default": 10 - } - }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -2653,39 +2444,55 @@ ], "responses": { "200": { - "description": "List of enhancements", + "description": "Updated settings", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Audio Enhancement_listAudioEnhancements_Response_200" + "$ref": "#/components/schemas/SignalSettingsResponse" } } } }, - "400": { - "description": "Bad request", + "422": { + "description": "No team context", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ListAudioEnhancementsRequestBadRequestError" + "$ref": "#/components/schemas/SignalError" } } } } + }, + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SignalSettingsUpdateRequest" + } + } + } } }, + "servers": [ + { + "url": "https://app.resemble.ai/api/v2" + } + ] + }, + "/secure_uploads": { "post": { - "operationId": "create-audio-enhancement", - "summary": "Create audio enhancement", - "description": "Submit an audio file for enhancement. Processing happens asynchronously in the background.\nThe API defaults to the v2 enhancement engine. The v1 engine is legacy and will be sunset in a future release.\n", + "operationId": "create-secure-upload", + "summary": "Upload media securely", + "description": "Upload a media file and receive a short-lived token that can be passed to\ndownstream endpoints (such as `/detect` and `/intelligence`) in place of a\npublic URL. The returned token is a JWT that expires 1 hour after issuance.\n\nKeeping uploads private avoids exposing source media on the open internet and\nmeans you do not need to host files yourself for jobs that only need the API\nto read them once.\n", "tags": [ - "audioEnhancement" + "secureUploads" ], "parameters": [ { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -2693,12 +2500,12 @@ } ], "responses": { - "202": { - "description": "Enhancement job created", + "200": { + "description": "Upload accepted", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Audio Enhancement_createAudioEnhancement_Response_202" + "$ref": "#/components/schemas/Secure Uploads_createSecureUpload_Response_200" } } } @@ -2708,17 +2515,17 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/CreateAudioEnhancementRequestBadRequestError" + "$ref": "#/components/schemas/Error" } } } }, - "403": { - "description": "Forbidden", + "401": { + "description": "Unauthorized", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/CreateAudioEnhancementRequestForbiddenError" + "$ref": "#/components/schemas/Error" } } } @@ -2730,48 +2537,14 @@ "schema": { "type": "object", "properties": { - "audio_file": { + "file": { "type": "string", "format": "binary", - "description": "Audio file to enhance (WAV, MP3, M4A, MP4, OGG, AAC, FLAC). Max 150 MB." - }, - "enhancement_engine": { - "$ref": "#/components/schemas/AudioEnhancementsPostRequestBodyContentMultipartFormDataSchemaEnhancementEngine", - "description": "Enhancement engine to use. Default is v2." - }, - "remove_noise": { - "type": "boolean", - "default": true, - "description": "Remove background noise. Engine v2 only." - }, - "normalize": { - "type": "boolean", - "default": true, - "description": "Normalize audio levels. Engine v2 only." - }, - "studio_sound": { - "type": "boolean", - "default": true, - "description": "Apply studio-quality enhancement. Engine v2 only." - }, - "enhancement_level": { - "type": "number", - "format": "double", - "description": "Enhancement intensity (0.0 to 1.0). Engine v1 only (legacy)." - }, - "loudness_target_level": { - "type": "integer", - "default": -14, - "description": "Target loudness in LUFS. Engine v1 only (legacy)." - }, - "loudness_peak_limit": { - "type": "integer", - "default": -1, - "description": "Peak limit in dBTP. Engine v1 only (legacy)." + "description": "The media file to upload (audio, image, or video)." } }, "required": [ - "audio_file" + "file" ] } } @@ -2784,28 +2557,130 @@ } ] }, - "/audio_enhancements/{enhancement_uuid}": { - "get": { - "operationId": "get-audio-enhancement", - "summary": "Get audio enhancement", - "description": "Poll this endpoint to check the status of an enhancement job and retrieve the download URL when complete.", + "/synthesize": { + "post": { + "operationId": "synthesize", + "summary": "Synchronous text-to-speech synthesis", + "description": "Generate speech synchronously from text or SSML. Returns complete audio as base64. The model associated with the voice is selected automatically.", "tags": [ - "audioEnhancement" + "textToSpeech" ], "parameters": [ { - "name": "enhancement_uuid", - "in": "path", - "description": "The UUID returned from the create endpoint.", + "name": "Authorization", + "in": "header", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" } + } + ], + "responses": { + "200": { + "description": "Successful synthesis", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Text-to-Speech_synthesize_Response_200" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, + "401": { + "description": "Unauthorized", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } + }, + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "voice_uuid": { + "type": "string", + "description": "Voice UUID to use for synthesis" + }, + "project_uuid": { + "type": "string", + "description": "Optional project UUID to store the clip" + }, + "title": { + "type": "string", + "description": "Optional title for the generated clip" + }, + "data": { + "type": "string", + "description": "Text or SSML to synthesize (max 3,000 characters)" + }, + "precision": { + "$ref": "#/components/schemas/SynthesizePostRequestBodyContentApplicationJsonSchemaPrecision", + "description": "Audio precision for WAV output" + }, + "output_format": { + "$ref": "#/components/schemas/SynthesizePostRequestBodyContentApplicationJsonSchemaOutputFormat", + "description": "Audio output format" + }, + "sample_rate": { + "$ref": "#/components/schemas/SynthesizePostRequestBodyContentApplicationJsonSchemaSampleRate", + "description": "Audio sample rate in Hz" + }, + "use_hd": { + "type": "boolean", + "default": false, + "description": "Enable HD synthesis with small latency trade-off" + }, + "apply_custom_pronunciations": { + "type": "boolean", + "default": false, + "description": "When true, automatically applies your team's custom pronunciations to matching words in the input text. Defaults to false." + } + }, + "required": [ + "voice_uuid", + "data" + ] + } + } + } + } + }, + "servers": [ + { + "url": "https://f.cluster.resemble.ai" + } + ] + }, + "/stream": { + "post": { + "operationId": "stream-synthesize", + "summary": "Streaming text-to-speech synthesis (HTTP)", + "description": "Stream audio as it's generated. Returns chunked WAV data for progressive playback. The model associated with the voice is selected automatically.", + "tags": [ + "textToSpeech" + ], + "parameters": [ { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -2814,40 +2689,86 @@ ], "responses": { "200": { - "description": "Enhancement details", + "description": "Streaming audio response (chunked WAV)", "content": { - "application/json": { + "application/octet-stream": { "schema": { - "$ref": "#/components/schemas/Audio Enhancement_getAudioEnhancement_Response_200" + "type": "string", + "format": "binary" } } } }, - "404": { - "description": "Not found", + "400": { + "description": "Bad request", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/GetAudioEnhancementRequestNotFoundError" + "$ref": "#/components/schemas/Error" } } } } + }, + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "voice_uuid": { + "type": "string", + "description": "Voice UUID to use for synthesis" + }, + "data": { + "type": "string", + "description": "Text or SSML to synthesize (max 2000 characters)" + }, + "project_uuid": { + "type": "string", + "description": "Optional project UUID to store the clip" + }, + "precision": { + "$ref": "#/components/schemas/StreamPostRequestBodyContentApplicationJsonSchemaPrecision", + "description": "Audio precision" + }, + "sample_rate": { + "$ref": "#/components/schemas/StreamPostRequestBodyContentApplicationJsonSchemaSampleRate", + "description": "Audio sample rate in Hz" + }, + "use_hd": { + "type": "boolean", + "default": false, + "description": "Enable HD synthesis with small latency trade-off" + }, + "apply_custom_pronunciations": { + "type": "boolean", + "default": false, + "description": "When true, automatically applies your team's custom pronunciations to matching words in the input text. Defaults to false." + } + }, + "required": [ + "voice_uuid", + "data" + ] + } + } + } } }, "servers": [ { - "url": "https://app.resemble.ai/api/v2" + "url": "https://f.cluster.resemble.ai" } ] }, - "/voices": { + "/speech-to-text": { "get": { - "operationId": "list-voices", - "summary": "List voices", - "description": "Retrieve voice metadata", + "operationId": "list-transcripts", + "summary": "List transcripts", + "description": "Retrieve paginated list of transcript jobs", "tags": [ - "voices" + "speechToText" ], "parameters": [ { @@ -2860,27 +2781,18 @@ } }, { - "name": "page_size", + "name": "per_page", "in": "query", "required": false, "schema": { "type": "integer", - "default": 10 - } - }, - { - "name": "advanced", - "in": "query", - "required": false, - "schema": { - "type": "boolean", - "default": false + "default": 25 } }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -2889,11 +2801,11 @@ ], "responses": { "200": { - "description": "List of voices", + "description": "List of transcripts", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Voices_listVoices_Response_200" + "$ref": "#/components/schemas/Speech-to-Text_listTranscripts_Response_200" } } } @@ -2901,17 +2813,17 @@ } }, "post": { - "operationId": "create-voice", - "summary": "Create voice", - "description": "Create a new voice", + "operationId": "create-transcript", + "summary": "Create transcript job", + "description": "Submit audio or video for transcription", "tags": [ - "voices" + "speechToText" ], "parameters": [ { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -2920,41 +2832,62 @@ ], "responses": { "200": { - "description": "Voice created", + "description": "Transcript job created", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Voices_createVoice_Response_200" + "$ref": "#/components/schemas/Speech-to-Text_createTranscript_Response_200" } } } - } - }, - "requestBody": { - "content": { - "application/json": { + }, + "400": { + "description": "Bad request (missing input, invalid callback_url, or zero retention requested without a callback_url)", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "402": { + "description": "Zero retention is not included in the team's plan or subscription", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } + }, + "requestBody": { + "content": { + "multipart/form-data": { "schema": { "type": "object", "properties": { - "name": { - "type": "string" - }, - "dataset_url": { + "file": { "type": "string", - "format": "uri" + "format": "binary", + "description": "Audio or video file (max 500 MB, 20 minutes)" }, - "callback_uri": { + "query": { "type": "string", - "format": "uri" + "description": "Optional intelligence question to evaluate after transcription" }, - "language": { + "callback_url": { "type": "string", - "default": "en-US" + "format": "uri", + "description": "Public HTTPS URL that receives a POST with the result when processing finishes. Private, loopback, link-local, and non-HTTPS URLs are rejected. Required when zero_retention_mode is true." + }, + "zero_retention_mode": { + "type": "boolean", + "default": false, + "description": "Enable zero retention. The uploaded media and any temporary processing copies are permanently deleted after transcription, and the transcript content is purged after one delivery to callback_url (which is mandatory in this mode). privacy_mode is accepted as an alias. Plan feature — requests are rejected with 402 if not included in your plan." } - }, - "required": [ - "name" - ] + } } } } @@ -2966,27 +2899,28 @@ } ] }, - "/voices/{voice_uuid}": { + "/speech-to-text/{uuid}": { "get": { - "operationId": "get-voice", - "summary": "Get voice", - "description": "Get voice details", + "operationId": "get-transcript", + "summary": "Get transcript", + "description": "Retrieve transcript status, text, and timestamps", "tags": [ - "voices" + "speechToText" ], "parameters": [ { - "name": "voice_uuid", + "name": "uuid", "in": "path", "required": true, "schema": { - "type": "string" + "type": "string", + "format": "uuid" } }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -2995,37 +2929,45 @@ ], "responses": { "200": { - "description": "Voice details", + "description": "Transcript details", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Voices_getVoice_Response_200" + "$ref": "#/components/schemas/Speech-to-Text_getTranscript_Response_200" } } } } } }, - "delete": { - "operationId": "delete-voice", - "summary": "Delete voice", - "description": "Delete a voice", + "servers": [ + { + "url": "https://app.resemble.ai/api/v2" + } + ] + }, + "/speech-to-text/{uuid}/ask": { + "post": { + "operationId": "ask-transcript-question", + "summary": "Ask intelligence question", + "description": "Submit a question about a completed transcript", "tags": [ - "voices" + "speechToText" ], "parameters": [ { - "name": "voice_uuid", + "name": "uuid", "in": "path", "required": true, "schema": { - "type": "string" + "type": "string", + "format": "uuid" } }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -3034,15 +2976,43 @@ ], "responses": { "200": { - "description": "Voice deleted", + "description": "Question submitted", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Voices_deleteVoice_Response_200" + "$ref": "#/components/schemas/Speech-to-Text_askTranscriptQuestion_Response_200" + } + } + } + }, + "400": { + "description": "Missing query, transcript not yet processed, or the transcript was created with zero retention and its content has been purged", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" } } } } + }, + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "query": { + "type": "string", + "description": "Question to ask about the transcript" + } + }, + "required": [ + "query" + ] + } + } + } } }, "servers": [ @@ -3051,27 +3021,46 @@ } ] }, - "/voices/{voice_uuid}/build": { - "post": { - "operationId": "build-voice", - "summary": "Build voice", - "description": "Start voice training", + "/speech-to-text/{uuid}/questions": { + "get": { + "operationId": "list-transcript-questions", + "summary": "List intelligence questions", + "description": "List all questions asked about a transcript", "tags": [ - "voices" + "speechToText" ], "parameters": [ { - "name": "voice_uuid", + "name": "uuid", "in": "path", "required": true, "schema": { - "type": "string" + "type": "string", + "format": "uuid" + } + }, + { + "name": "page", + "in": "query", + "required": true, + "schema": { + "type": "integer", + "default": 1 + } + }, + { + "name": "per_page", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "default": 25 } }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -3080,26 +3069,11 @@ ], "responses": { "200": { - "description": "Build started", + "description": "List of questions", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Voices_buildVoice_Response_200" - } - } - } - } - }, - "requestBody": { - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "fill": { - "type": "boolean", - "default": false - } + "$ref": "#/components/schemas/Speech-to-Text_listTranscriptQuestions_Response_200" } } } @@ -3112,19 +3086,37 @@ } ] }, - "/voice-design": { - "post": { - "operationId": "generate-voice-design", - "summary": "Generate voice candidates", - "description": "Generate three voice candidates from a text prompt", + "/speech-to-text/{uuid}/questions/{question_uuid}": { + "get": { + "operationId": "get-transcript-question", + "summary": "Get intelligence question status", + "description": "Check the status of a specific question", "tags": [ - "voiceDesign" + "speechToText" ], "parameters": [ + { + "name": "uuid", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid" + } + }, + { + "name": "question_uuid", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid" + } + }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -3133,33 +3125,15 @@ ], "responses": { "200": { - "description": "Voice candidates generated", + "description": "Question details", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Voice Design_generateVoiceDesign_Response_200" + "$ref": "#/components/schemas/Speech-to-Text_getTranscriptQuestion_Response_200" } } } } - }, - "requestBody": { - "content": { - "multipart/form-data": { - "schema": { - "type": "object", - "properties": { - "user_prompt": { - "type": "string", - "description": "Description of desired voice" - } - }, - "required": [ - "user_prompt" - ] - } - } - } } }, "servers": [ @@ -3168,98 +3142,28 @@ } ] }, - "/voice-design/create": { - "post": { - "operationId": "create-voice-from-candidate", - "summary": "Create voice from candidate", - "description": "Create a voice from a voice design candidate", + "/audio_enhancements": { + "get": { + "operationId": "list-audio-enhancements", + "summary": "List audio enhancements", + "description": "Returns a paginated list of all audio enhancements for your team, ordered by most recent first.", "tags": [ - "voiceDesign" + "audioEnhancement" ], "parameters": [ { - "name": "Authorization", - "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "name": "page", + "in": "query", + "description": "Page number (starting from 1).", "required": true, "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "Voice created", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Voice Design_createVoiceFromCandidate_Response_200" - } - } - } - } - }, - "requestBody": { - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "uuid": { - "type": "string" - }, - "voice_sample_index": { - "type": "integer" - }, - "name": { - "type": "string" - } - }, - "required": [ - "uuid", - "voice_sample_index", - "name" - ] - } - } - } - } - }, - "servers": [ - { - "url": "https://app.resemble.ai/api/v2" - } - ] - }, - "/voices/{voice_uuid}/recordings": { - "get": { - "operationId": "list-recordings", - "summary": "List recordings", - "description": "List all recordings for a voice", - "tags": [ - "recordings" - ], - "parameters": [ - { - "name": "voice_uuid", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "page", - "in": "query", - "required": true, - "schema": { - "type": "integer", - "default": 1 + "type": "integer" } }, { "name": "page_size", "in": "query", + "description": "Items per page (10 to 1000). Default 10.", "required": false, "schema": { "type": "integer", @@ -3269,7 +3173,7 @@ { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -3278,11 +3182,21 @@ ], "responses": { "200": { - "description": "List of recordings", + "description": "List of enhancements", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Recordings_listRecordings_Response_200" + "$ref": "#/components/schemas/Audio Enhancement_listAudioEnhancements_Response_200" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ListAudioEnhancementsRequestBadRequestError" } } } @@ -3290,25 +3204,17 @@ } }, "post": { - "operationId": "create-recording", - "summary": "Create recording", - "description": "Upload a new recording for voice training", + "operationId": "create-audio-enhancement", + "summary": "Create audio enhancement", + "description": "Submit an audio file for enhancement. Processing happens asynchronously in the background.\nThe API defaults to the v2 enhancement engine. The v1 engine is legacy and will be sunset in a future release.\n", "tags": [ - "recordings" + "audioEnhancement" ], "parameters": [ - { - "name": "voice_uuid", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -3316,12 +3222,32 @@ } ], "responses": { - "200": { - "description": "Recording created", + "202": { + "description": "Enhancement job created", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Recordings_createRecording_Response_200" + "$ref": "#/components/schemas/Audio Enhancement_createAudioEnhancement_Response_202" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateAudioEnhancementRequestBadRequestError" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateAudioEnhancementRequestForbiddenError" } } } @@ -3333,38 +3259,48 @@ "schema": { "type": "object", "properties": { - "file": { + "audio_file": { "type": "string", "format": "binary", - "description": "Audio file (WAV recommended, 1-12 seconds)" - }, - "name": { - "type": "string", - "description": "Display name" + "description": "Audio file to enhance (WAV, MP3, M4A, MP4, OGG, AAC, FLAC). Max 150 MB." }, - "text": { - "type": "string", - "description": "Transcript of the clip" + "enhancement_engine": { + "$ref": "#/components/schemas/AudioEnhancementsPostRequestBodyContentMultipartFormDataSchemaEnhancementEngine", + "description": "Enhancement engine to use. Default is v2." }, - "emotion": { - "type": "string", - "description": "Emotion label" + "remove_noise": { + "type": "boolean", + "default": true, + "description": "Remove background noise. Engine v2 only." }, - "is_active": { + "normalize": { "type": "boolean", - "description": "Include in training" + "default": true, + "description": "Normalize audio levels. Engine v2 only." }, - "fill": { + "studio_sound": { "type": "boolean", - "description": "Include for Resemble Fill" + "default": true, + "description": "Apply studio-quality enhancement. Engine v2 only." + }, + "enhancement_level": { + "type": "number", + "format": "double", + "description": "Enhancement intensity (0.0 to 1.0). Engine v1 only (legacy)." + }, + "loudness_target_level": { + "type": "integer", + "default": -14, + "description": "Target loudness in LUFS. Engine v1 only (legacy)." + }, + "loudness_peak_limit": { + "type": "integer", + "default": -1, + "description": "Peak limit in dBTP. Engine v1 only (legacy)." } }, "required": [ - "file", - "name", - "text", - "emotion", - "is_active" + "audio_file" ] } } @@ -3377,26 +3313,19 @@ } ] }, - "/voices/{voice_uuid}/recordings/{recording_id}": { + "/audio_enhancements/{enhancement_uuid}": { "get": { - "operationId": "get-recording", - "summary": "Get recording", - "description": "Get recording details", + "operationId": "get-audio-enhancement", + "summary": "Get audio enhancement", + "description": "Poll this endpoint to check the status of an enhancement job and retrieve the download URL when complete.", "tags": [ - "recordings" + "audioEnhancement" ], "parameters": [ { - "name": "voice_uuid", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "recording_id", + "name": "enhancement_uuid", "in": "path", + "description": "The UUID returned from the create endpoint.", "required": true, "schema": { "type": "string" @@ -3405,7 +3334,7 @@ { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -3414,45 +3343,73 @@ ], "responses": { "200": { - "description": "Recording details", + "description": "Enhancement details", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Recordings_getRecording_Response_200" + "$ref": "#/components/schemas/Audio Enhancement_getAudioEnhancement_Response_200" + } + } + } + }, + "404": { + "description": "Not found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GetAudioEnhancementRequestNotFoundError" } } } } } }, - "delete": { - "operationId": "delete-recording", - "summary": "Delete recording", - "description": "Delete a recording", + "servers": [ + { + "url": "https://app.resemble.ai/api/v2" + } + ] + }, + "/voices": { + "get": { + "operationId": "list-voices", + "summary": "List voices", + "description": "Retrieve voice metadata", "tags": [ - "recordings" + "voices" ], "parameters": [ { - "name": "voice_uuid", - "in": "path", + "name": "page", + "in": "query", "required": true, "schema": { - "type": "string" + "type": "integer", + "default": 1 } }, { - "name": "recording_id", - "in": "path", - "required": true, + "name": "page_size", + "in": "query", + "required": false, "schema": { - "type": "string" + "type": "integer", + "default": 10 + } + }, + { + "name": "advanced", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "default": false } }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -3461,45 +3418,29 @@ ], "responses": { "200": { - "description": "Recording deleted", + "description": "List of voices", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Recordings_deleteRecording_Response_200" + "$ref": "#/components/schemas/Voices_listVoices_Response_200" } } } } } }, - "patch": { - "operationId": "update-recording", - "summary": "Update recording", - "description": "Update a recording", + "post": { + "operationId": "create-voice", + "summary": "Create voice", + "description": "Create a new voice", "tags": [ - "recordings" + "voices" ], "parameters": [ - { - "name": "voice_uuid", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "recording_id", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -3508,11 +3449,11 @@ ], "responses": { "200": { - "description": "Recording updated", + "description": "Voice created", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Recordings_updateRecording_Response_200" + "$ref": "#/components/schemas/Voices_createVoice_Response_200" } } } @@ -3527,16 +3468,22 @@ "name": { "type": "string" }, - "text": { - "type": "string" + "dataset_url": { + "type": "string", + "format": "uri" }, - "emotion": { - "type": "string" + "callback_uri": { + "type": "string", + "format": "uri" }, - "is_active": { - "type": "boolean" + "language": { + "type": "string", + "default": "en-US" } - } + }, + "required": [ + "name" + ] } } } @@ -3548,37 +3495,27 @@ } ] }, - "/term_substitutions": { + "/voices/{voice_uuid}": { "get": { - "operationId": "list-term-substitutions", - "summary": "List term substitutions", - "description": "List all term substitutions", + "operationId": "get-voice", + "summary": "Get voice", + "description": "Get voice details", "tags": [ - "termSubstitutions" + "voices" ], "parameters": [ { - "name": "page", - "in": "query", + "name": "voice_uuid", + "in": "path", "required": true, "schema": { - "type": "integer", - "default": 1 - } - }, - { - "name": "page_size", - "in": "query", - "required": false, - "schema": { - "type": "integer", - "default": 10 + "type": "string" } }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -3587,29 +3524,37 @@ ], "responses": { "200": { - "description": "List of term substitutions", + "description": "Voice details", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Term Substitutions_listTermSubstitutions_Response_200" + "$ref": "#/components/schemas/Voices_getVoice_Response_200" } } } } } }, - "post": { - "operationId": "create-term-substitution", - "summary": "Create term substitution", - "description": "Create a new pronunciation substitution", + "delete": { + "operationId": "delete-voice", + "summary": "Delete voice", + "description": "Delete a voice", "tags": [ - "termSubstitutions" + "voices" ], "parameters": [ + { + "name": "voice_uuid", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -3618,38 +3563,15 @@ ], "responses": { "200": { - "description": "Term substitution created", + "description": "Voice deleted", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Term Substitutions_createTermSubstitution_Response_200" + "$ref": "#/components/schemas/Voices_deleteVoice_Response_200" } } } } - }, - "requestBody": { - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "original_text": { - "type": "string", - "description": "Original text to substitute" - }, - "replacement_text": { - "type": "string", - "description": "Replacement pronunciation" - } - }, - "required": [ - "original_text", - "replacement_text" - ] - } - } - } } }, "servers": [ @@ -3658,27 +3580,27 @@ } ] }, - "/term_substitutions/{id}": { - "get": { - "operationId": "get-term-substitution", - "summary": "Get term substitution", - "description": "Get term substitution details", + "/voices/{voice_uuid}/build": { + "post": { + "operationId": "build-voice", + "summary": "Build voice", + "description": "Start voice training", "tags": [ - "termSubstitutions" + "voices" ], "parameters": [ { - "name": "id", + "name": "voice_uuid", "in": "path", "required": true, "schema": { - "type": "integer" + "type": "string" } }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -3687,37 +3609,51 @@ ], "responses": { "200": { - "description": "Term substitution details", + "description": "Build started", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Term Substitutions_getTermSubstitution_Response_200" + "$ref": "#/components/schemas/Voices_buildVoice_Response_200" + } + } + } + } + }, + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "fill": { + "type": "boolean", + "default": false + } } } } } } }, - "delete": { - "operationId": "delete-term-substitution", - "summary": "Delete term substitution", - "description": "Delete a term substitution", + "servers": [ + { + "url": "https://app.resemble.ai/api/v2" + } + ] + }, + "/voice-design": { + "post": { + "operationId": "generate-voice-design", + "summary": "Generate voice candidates", + "description": "Generate three voice candidates from a text prompt", "tags": [ - "termSubstitutions" + "voiceDesign" ], "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -3726,15 +3662,33 @@ ], "responses": { "200": { - "description": "Term substitution deleted", + "description": "Voice candidates generated", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Term Substitutions_deleteTermSubstitution_Response_200" + "$ref": "#/components/schemas/Voice Design_generateVoiceDesign_Response_200" } } } } + }, + "requestBody": { + "content": { + "multipart/form-data": { + "schema": { + "type": "object", + "properties": { + "user_prompt": { + "type": "string", + "description": "Description of desired voice" + } + }, + "required": [ + "user_prompt" + ] + } + } + } } }, "servers": [ @@ -3743,55 +3697,19 @@ } ] }, - "/pronunciations": { - "get": { - "operationId": "list-pronunciations", - "summary": "List custom pronunciations", - "description": "Retrieve all custom pronunciations for your team, with optional filters.", + "/voice-design/create": { + "post": { + "operationId": "create-voice-from-candidate", + "summary": "Create voice from candidate", + "description": "Create a voice from a voice design candidate", "tags": [ - "customPronunciations" + "voiceDesign" ], "parameters": [ - { - "name": "language", - "in": "query", - "description": "Filter by language (e.g., en-us)", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "domain", - "in": "query", - "description": "Filter by domain (e.g., medical)", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "status", - "in": "query", - "description": "Filter by processing status", - "required": false, - "schema": { - "$ref": "#/components/schemas/PronunciationsGetParametersStatus" - } - }, - { - "name": "active", - "in": "query", - "description": "Filter by active state", - "required": false, - "schema": { - "type": "boolean" - } - }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -3800,29 +3718,87 @@ ], "responses": { "200": { - "description": "List of custom pronunciations", + "description": "Voice created", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Custom Pronunciations_listPronunciations_Response_200" + "$ref": "#/components/schemas/Voice Design_createVoiceFromCandidate_Response_200" } } } } + }, + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "uuid": { + "type": "string" + }, + "voice_sample_index": { + "type": "integer" + }, + "name": { + "type": "string" + } + }, + "required": [ + "uuid", + "voice_sample_index", + "name" + ] + } + } + } } }, - "post": { - "operationId": "create-pronunciation", - "summary": "Create custom pronunciation", - "description": "Upload a single pronunciation with a reference audio file.", + "servers": [ + { + "url": "https://app.resemble.ai/api/v2" + } + ] + }, + "/voices/{voice_uuid}/recordings": { + "get": { + "operationId": "list-recordings", + "summary": "List recordings", + "description": "List all recordings for a voice", "tags": [ - "customPronunciations" + "recordings" ], "parameters": [ + { + "name": "voice_uuid", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "required": true, + "schema": { + "type": "integer", + "default": 1 + } + }, + { + "name": "page_size", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "default": 10 + } + }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -3830,71 +3806,38 @@ } ], "responses": { - "201": { - "description": "Pronunciation created", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Custom Pronunciations_createPronunciation_Response_201" - } - } - } - }, - "422": { - "description": "Validation error (e.g., duplicate word)", + "200": { + "description": "List of recordings", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Error" + "$ref": "#/components/schemas/Recordings_listRecordings_Response_200" } } } } - }, - "requestBody": { - "content": { - "multipart/form-data": { - "schema": { - "type": "object", - "properties": { - "word": { - "type": "string", - "description": "The word or phrase (2-100 characters). Letters, accented characters, apostrophes, hyphens, and spaces only." - }, - "audio": { - "type": "string", - "format": "binary", - "description": "Reference audio file (wav, flac, mp3, m4a, ogg, webm, aac). Duration 200ms-10s. Max 10MB." - } - }, - "required": [ - "word", - "audio" - ] - } - } - } } }, - "servers": [ - { - "url": "https://app.resemble.ai/api/v2" - } - ] - }, - "/pronunciations/bulk": { "post": { - "operationId": "bulk-create-pronunciations", - "summary": "Bulk create pronunciations from ZIP", - "description": "Upload multiple pronunciations at once. Each audio file in the ZIP becomes a pronunciation — the filename (without extension) is used as the word.", + "operationId": "create-recording", + "summary": "Create recording", + "description": "Upload a new recording for voice training", "tags": [ - "customPronunciations" + "recordings" ], "parameters": [ + { + "name": "voice_uuid", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -3902,12 +3845,12 @@ } ], "responses": { - "201": { - "description": "Bulk creation result", + "200": { + "description": "Recording created", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Custom Pronunciations_bulkCreatePronunciations_Response_201" + "$ref": "#/components/schemas/Recordings_createRecording_Response_200" } } } @@ -3919,14 +3862,38 @@ "schema": { "type": "object", "properties": { - "zip": { + "file": { "type": "string", "format": "binary", - "description": "ZIP file containing audio files. Max 50 files, max 100MB total." + "description": "Audio file (WAV recommended, 1-12 seconds)" + }, + "name": { + "type": "string", + "description": "Display name" + }, + "text": { + "type": "string", + "description": "Transcript of the clip" + }, + "emotion": { + "type": "string", + "description": "Emotion label" + }, + "is_active": { + "type": "boolean", + "description": "Include in training" + }, + "fill": { + "type": "boolean", + "description": "Include for Resemble Fill" } }, "required": [ - "zip" + "file", + "name", + "text", + "emotion", + "is_active" ] } } @@ -3939,28 +3906,35 @@ } ] }, - "/pronunciations/{uuid}": { + "/voices/{voice_uuid}/recordings/{recording_id}": { "get": { - "operationId": "get-pronunciation", - "summary": "Get custom pronunciation", - "description": "Retrieve a single custom pronunciation by UUID", + "operationId": "get-recording", + "summary": "Get recording", + "description": "Get recording details", "tags": [ - "customPronunciations" + "recordings" ], "parameters": [ { - "name": "uuid", + "name": "voice_uuid", "in": "path", "required": true, "schema": { - "type": "string", - "format": "uuid" + "type": "string" + } + }, + { + "name": "recording_id", + "in": "path", + "required": true, + "schema": { + "type": "string" } }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -3969,21 +3943,11 @@ ], "responses": { "200": { - "description": "Pronunciation details", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Custom Pronunciations_getPronunciation_Response_200" - } - } - } - }, - "404": { - "description": "Not found", + "description": "Recording details", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Error" + "$ref": "#/components/schemas/Recordings_getRecording_Response_200" } } } @@ -3991,26 +3955,33 @@ } }, "delete": { - "operationId": "delete-pronunciation", - "summary": "Delete custom pronunciation", - "description": "Permanently remove a custom pronunciation. Takes effect immediately.", + "operationId": "delete-recording", + "summary": "Delete recording", + "description": "Delete a recording", "tags": [ - "customPronunciations" + "recordings" ], "parameters": [ { - "name": "uuid", + "name": "voice_uuid", "in": "path", "required": true, "schema": { - "type": "string", - "format": "uuid" + "type": "string" + } + }, + { + "name": "recording_id", + "in": "path", + "required": true, + "schema": { + "type": "string" } }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -4019,11 +3990,11 @@ ], "responses": { "200": { - "description": "Pronunciation deleted", + "description": "Recording deleted", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Custom Pronunciations_deletePronunciation_Response_200" + "$ref": "#/components/schemas/Recordings_deleteRecording_Response_200" } } } @@ -4031,26 +4002,33 @@ } }, "patch": { - "operationId": "update-pronunciation", - "summary": "Toggle pronunciation active status", - "description": "Enable or disable a pronunciation without deleting it. Inactive pronunciations are not used during synthesis.", + "operationId": "update-recording", + "summary": "Update recording", + "description": "Update a recording", "tags": [ - "customPronunciations" + "recordings" ], "parameters": [ { - "name": "uuid", + "name": "voice_uuid", "in": "path", "required": true, "schema": { - "type": "string", - "format": "uuid" + "type": "string" + } + }, + { + "name": "recording_id", + "in": "path", + "required": true, + "schema": { + "type": "string" } }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -4059,11 +4037,11 @@ ], "responses": { "200": { - "description": "Pronunciation updated", + "description": "Recording updated", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Custom Pronunciations_updatePronunciation_Response_200" + "$ref": "#/components/schemas/Recordings_updateRecording_Response_200" } } } @@ -4075,14 +4053,19 @@ "schema": { "type": "object", "properties": { - "active": { - "type": "boolean", - "description": "Set to false to disable, true to re-enable" + "name": { + "type": "string" + }, + "text": { + "type": "string" + }, + "emotion": { + "type": "string" + }, + "is_active": { + "type": "boolean" } - }, - "required": [ - "active" - ] + } } } } @@ -4094,19 +4077,37 @@ } ] }, - "/voice_settings_presets": { + "/term_substitutions": { "get": { - "operationId": "list-voice-settings-presets", - "summary": "List voice settings presets", - "description": "List all voice settings presets", + "operationId": "list-term-substitutions", + "summary": "List term substitutions", + "description": "List all term substitutions", "tags": [ - "voiceSettingsPresets" + "termSubstitutions" ], "parameters": [ + { + "name": "page", + "in": "query", + "required": true, + "schema": { + "type": "integer", + "default": 1 + } + }, + { + "name": "page_size", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "default": 10 + } + }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -4115,11 +4116,11 @@ ], "responses": { "200": { - "description": "List of presets", + "description": "List of term substitutions", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Voice Settings Presets_listVoiceSettingsPresets_Response_200" + "$ref": "#/components/schemas/Term Substitutions_listTermSubstitutions_Response_200" } } } @@ -4127,17 +4128,17 @@ } }, "post": { - "operationId": "create-voice-settings-preset", - "summary": "Create voice settings preset", - "description": "Create a new voice settings preset (max 5 per user)", + "operationId": "create-term-substitution", + "summary": "Create term substitution", + "description": "Create a new pronunciation substitution", "tags": [ - "voiceSettingsPresets" + "termSubstitutions" ], "parameters": [ { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -4145,12 +4146,12 @@ } ], "responses": { - "201": { - "description": "Preset created", + "200": { + "description": "Term substitution created", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Voice Settings Presets_createVoiceSettingsPreset_Response_201" + "$ref": "#/components/schemas/Term Substitutions_createTermSubstitution_Response_200" } } } @@ -4162,47 +4163,18 @@ "schema": { "type": "object", "properties": { - "name": { + "original_text": { "type": "string", - "description": "Preset name (unique, max 30 characters)" - }, - "pace": { - "type": "number", - "format": "double", - "default": 1, - "description": "Speech pace/speed" - }, - "temperature": { - "type": "number", - "format": "double", - "default": 0.8, - "description": "Voice variation" - }, - "pitch": { - "type": "number", - "format": "double", - "default": 0, - "description": "Voice pitch adjustment" - }, - "useHd": { - "type": "boolean", - "default": false, - "description": "Use HD quality" - }, - "exaggeration": { - "type": "number", - "format": "double", - "default": 0.5, - "description": "Emotional exaggeration" + "description": "Original text to substitute" }, - "description": { + "replacement_text": { "type": "string", - "default": "", - "description": "Voice style prompt" + "description": "Replacement pronunciation" } }, "required": [ - "name" + "original_text", + "replacement_text" ] } } @@ -4215,27 +4187,27 @@ } ] }, - "/voice_settings_presets/{uuid}": { + "/term_substitutions/{id}": { "get": { - "operationId": "get-voice-settings-preset", - "summary": "Get voice settings preset", - "description": "Get preset details", + "operationId": "get-term-substitution", + "summary": "Get term substitution", + "description": "Get term substitution details", "tags": [ - "voiceSettingsPresets" + "termSubstitutions" ], "parameters": [ { - "name": "uuid", + "name": "id", "in": "path", "required": true, "schema": { - "type": "string" + "type": "integer" } }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -4244,11 +4216,11 @@ ], "responses": { "200": { - "description": "Preset details", + "description": "Term substitution details", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Voice Settings Presets_getVoiceSettingsPreset_Response_200" + "$ref": "#/components/schemas/Term Substitutions_getTermSubstitution_Response_200" } } } @@ -4256,25 +4228,25 @@ } }, "delete": { - "operationId": "delete-voice-settings-preset", - "summary": "Delete voice settings preset", - "description": "Delete a preset", + "operationId": "delete-term-substitution", + "summary": "Delete term substitution", + "description": "Delete a term substitution", "tags": [ - "voiceSettingsPresets" + "termSubstitutions" ], "parameters": [ { - "name": "uuid", + "name": "id", "in": "path", "required": true, "schema": { - "type": "string" + "type": "integer" } }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -4283,129 +4255,72 @@ ], "responses": { "200": { - "description": "Preset deleted", + "description": "Term substitution deleted", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Voice Settings Presets_deleteVoiceSettingsPreset_Response_200" + "$ref": "#/components/schemas/Term Substitutions_deleteTermSubstitution_Response_200" } } } } } }, - "patch": { - "operationId": "update-voice-settings-preset", - "summary": "Update voice settings preset", - "description": "Update a preset", + "servers": [ + { + "url": "https://app.resemble.ai/api/v2" + } + ] + }, + "/pronunciations": { + "get": { + "operationId": "list-pronunciations", + "summary": "List custom pronunciations", + "description": "Retrieve all custom pronunciations for your team, with optional filters.", "tags": [ - "voiceSettingsPresets" + "customPronunciations" ], "parameters": [ { - "name": "uuid", - "in": "path", - "required": true, + "name": "language", + "in": "query", + "description": "Filter by language (e.g., en-us)", + "required": false, "schema": { "type": "string" } }, { - "name": "Authorization", - "in": "header", - "description": "API token from https://app.resemble.ai/account/api", - "required": true, + "name": "domain", + "in": "query", + "description": "Filter by domain (e.g., medical)", + "required": false, "schema": { "type": "string" } - } - ], - "responses": { - "200": { - "description": "Preset updated", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Voice Settings Presets_updateVoiceSettingsPreset_Response_200" - } - } - } - } - }, - "requestBody": { - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "name": { - "type": "string" - }, - "pace": { - "type": "number", - "format": "double" - }, - "temperature": { - "type": "number", - "format": "double" - }, - "pitch": { - "type": "number", - "format": "double" - }, - "useHd": { - "type": "boolean" - }, - "exaggeration": { - "type": "number", - "format": "double" - }, - "description": { - "type": "string" - } - } - } - } - } - } - }, - "servers": [ - { - "url": "https://app.resemble.ai/api/v2" - } - ] - }, - "/projects": { - "get": { - "operationId": "list-projects", - "summary": "List projects", - "description": "List all projects", - "tags": [ - "projects" - ], - "parameters": [ + }, { - "name": "page", + "name": "status", "in": "query", - "required": true, + "description": "Filter by processing status", + "required": false, "schema": { - "type": "integer", - "default": 1 + "$ref": "#/components/schemas/PronunciationsGetParametersStatus" } }, { - "name": "page_size", + "name": "active", "in": "query", + "description": "Filter by active state", "required": false, "schema": { - "type": "integer", - "default": 10 + "type": "boolean" } }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -4414,11 +4329,11 @@ ], "responses": { "200": { - "description": "List of projects", + "description": "List of custom pronunciations", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Projects_listProjects_Response_200" + "$ref": "#/components/schemas/Custom Pronunciations_listPronunciations_Response_200" } } } @@ -4426,17 +4341,17 @@ } }, "post": { - "operationId": "create-project", - "summary": "Create project", - "description": "Create a new project", + "operationId": "create-pronunciation", + "summary": "Create custom pronunciation", + "description": "Upload a single pronunciation with a reference audio file.", "tags": [ - "projects" + "customPronunciations" ], "parameters": [ { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -4444,12 +4359,22 @@ } ], "responses": { - "200": { - "description": "Project created", + "201": { + "description": "Pronunciation created", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Projects_createProject_Response_200" + "$ref": "#/components/schemas/Custom Pronunciations_createPronunciation_Response_201" + } + } + } + }, + "422": { + "description": "Validation error (e.g., duplicate word)", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" } } } @@ -4457,28 +4382,23 @@ }, "requestBody": { "content": { - "application/json": { + "multipart/form-data": { "schema": { "type": "object", "properties": { - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "is_collaborative": { - "type": "boolean" + "word": { + "type": "string", + "description": "The word or phrase (2-100 characters). Letters, accented characters, apostrophes, hyphens, and spaces only." }, - "is_archived": { - "type": "boolean" + "audio": { + "type": "string", + "format": "binary", + "description": "Reference audio file (wav, flac, mp3, m4a, ogg, webm, aac). Duration 200ms-10s. Max 10MB." } }, "required": [ - "name", - "description", - "is_collaborative", - "is_archived" + "word", + "audio" ] } } @@ -4491,27 +4411,19 @@ } ] }, - "/projects/{project_uuid}": { - "get": { - "operationId": "get-project", - "summary": "Get project", - "description": "Get project details", + "/pronunciations/bulk": { + "post": { + "operationId": "bulk-create-pronunciations", + "summary": "Bulk create pronunciations from ZIP", + "description": "Upload multiple pronunciations at once. Each audio file in the ZIP becomes a pronunciation — the filename (without extension) is used as the word.", "tags": [ - "projects" + "customPronunciations" ], "parameters": [ - { - "name": "project_uuid", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -4519,38 +4431,65 @@ } ], "responses": { - "200": { - "description": "Project details", + "201": { + "description": "Bulk creation result", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Projects_getProject_Response_200" + "$ref": "#/components/schemas/Custom Pronunciations_bulkCreatePronunciations_Response_201" } } } } + }, + "requestBody": { + "content": { + "multipart/form-data": { + "schema": { + "type": "object", + "properties": { + "zip": { + "type": "string", + "format": "binary", + "description": "ZIP file containing audio files. Max 50 files, max 100MB total." + } + }, + "required": [ + "zip" + ] + } + } + } } }, - "put": { - "operationId": "update-project", - "summary": "Update project", - "description": "Update a project", + "servers": [ + { + "url": "https://app.resemble.ai/api/v2" + } + ] + }, + "/pronunciations/{uuid}": { + "get": { + "operationId": "get-pronunciation", + "summary": "Get custom pronunciation", + "description": "Retrieve a single custom pronunciation by UUID", "tags": [ - "projects" + "customPronunciations" ], "parameters": [ { - "name": "project_uuid", + "name": "uuid", "in": "path", "required": true, "schema": { - "type": "string" + "type": "string", + "format": "uuid" } }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -4559,34 +4498,21 @@ ], "responses": { "200": { - "description": "Project updated", + "description": "Pronunciation details", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Projects_updateProject_Response_200" + "$ref": "#/components/schemas/Custom Pronunciations_getPronunciation_Response_200" } } } - } - }, - "requestBody": { - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "is_collaborative": { - "type": "boolean" - }, - "is_archived": { - "type": "boolean" - } + }, + "404": { + "description": "Not found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" } } } @@ -4594,25 +4520,26 @@ } }, "delete": { - "operationId": "delete-project", - "summary": "Delete project", - "description": "Delete a project", + "operationId": "delete-pronunciation", + "summary": "Delete custom pronunciation", + "description": "Permanently remove a custom pronunciation. Takes effect immediately.", "tags": [ - "projects" + "customPronunciations" ], "parameters": [ { - "name": "project_uuid", + "name": "uuid", "in": "path", "required": true, "schema": { - "type": "string" + "type": "string", + "format": "uuid" } }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -4621,62 +4548,38 @@ ], "responses": { "200": { - "description": "Project deleted", + "description": "Pronunciation deleted", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Projects_deleteProject_Response_200" + "$ref": "#/components/schemas/Custom Pronunciations_deletePronunciation_Response_200" } } } } } }, - "servers": [ - { - "url": "https://app.resemble.ai/api/v2" - } - ] - }, - "/projects/{project_uuid}/clips": { - "get": { - "operationId": "list-clips", - "summary": "List clips", - "description": "List clips in a project", + "patch": { + "operationId": "update-pronunciation", + "summary": "Toggle pronunciation active status", + "description": "Enable or disable a pronunciation without deleting it. Inactive pronunciations are not used during synthesis.", "tags": [ - "clips" + "customPronunciations" ], "parameters": [ { - "name": "project_uuid", + "name": "uuid", "in": "path", "required": true, "schema": { - "type": "string" - } - }, - { - "name": "page", - "in": "query", - "required": true, - "schema": { - "type": "integer", - "default": 1 - } - }, - { - "name": "page_size", - "in": "query", - "required": false, - "schema": { - "type": "integer", - "default": 10 + "type": "string", + "format": "uuid" } }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -4685,15 +4588,33 @@ ], "responses": { "200": { - "description": "List of clips", + "description": "Pronunciation updated", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Clips_listClips_Response_200" + "$ref": "#/components/schemas/Custom Pronunciations_updatePronunciation_Response_200" } } } } + }, + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "active": { + "type": "boolean", + "description": "Set to false to disable, true to re-enable" + } + }, + "required": [ + "active" + ] + } + } + } } }, "servers": [ @@ -4702,35 +4623,19 @@ } ] }, - "/projects/{project_uuid}/clips/{clip_uuid}": { + "/voice_settings_presets": { "get": { - "operationId": "get-clip", - "summary": "Get clip", - "description": "Get clip details", + "operationId": "list-voice-settings-presets", + "summary": "List voice settings presets", + "description": "List all voice settings presets", "tags": [ - "clips" + "voiceSettingsPresets" ], "parameters": [ - { - "name": "project_uuid", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "clip_uuid", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -4739,35 +4644,117 @@ ], "responses": { "200": { - "description": "Clip details", + "description": "List of presets", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Clips_getClip_Response_200" + "$ref": "#/components/schemas/Voice Settings Presets_listVoiceSettingsPresets_Response_200" } } } } } }, - "delete": { - "operationId": "delete-clip", - "summary": "Delete clip", - "description": "Delete a clip", + "post": { + "operationId": "create-voice-settings-preset", + "summary": "Create voice settings preset", + "description": "Create a new voice settings preset (max 5 per user)", "tags": [ - "clips" + "voiceSettingsPresets" ], "parameters": [ { - "name": "project_uuid", - "in": "path", + "name": "Authorization", + "in": "header", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" } - }, + } + ], + "responses": { + "201": { + "description": "Preset created", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Voice Settings Presets_createVoiceSettingsPreset_Response_201" + } + } + } + } + }, + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Preset name (unique, max 30 characters)" + }, + "pace": { + "type": "number", + "format": "double", + "default": 1, + "description": "Speech pace/speed" + }, + "temperature": { + "type": "number", + "format": "double", + "default": 0.8, + "description": "Voice variation" + }, + "pitch": { + "type": "number", + "format": "double", + "default": 0, + "description": "Voice pitch adjustment" + }, + "useHd": { + "type": "boolean", + "default": false, + "description": "Use HD quality" + }, + "exaggeration": { + "type": "number", + "format": "double", + "default": 0.5, + "description": "Emotional exaggeration" + }, + "description": { + "type": "string", + "default": "", + "description": "Voice style prompt" + } + }, + "required": [ + "name" + ] + } + } + } + } + }, + "servers": [ + { + "url": "https://app.resemble.ai/api/v2" + } + ] + }, + "/voice_settings_presets/{uuid}": { + "get": { + "operationId": "get-voice-settings-preset", + "summary": "Get voice settings preset", + "description": "Get preset details", + "tags": [ + "voiceSettingsPresets" + ], + "parameters": [ { - "name": "clip_uuid", + "name": "uuid", "in": "path", "required": true, "schema": { @@ -4777,7 +4764,7 @@ { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -4786,27 +4773,27 @@ ], "responses": { "200": { - "description": "Clip deleted", + "description": "Preset details", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Clips_deleteClip_Response_200" + "$ref": "#/components/schemas/Voice Settings Presets_getVoiceSettingsPreset_Response_200" } } } } } }, - "patch": { - "operationId": "update-clip", - "summary": "Update clip", - "description": "Update a clip", + "delete": { + "operationId": "delete-voice-settings-preset", + "summary": "Delete voice settings preset", + "description": "Delete a preset", "tags": [ - "clips" + "voiceSettingsPresets" ], "parameters": [ { - "name": "project_uuid", + "name": "uuid", "in": "path", "required": true, "schema": { @@ -4814,7 +4801,38 @@ } }, { - "name": "clip_uuid", + "name": "Authorization", + "in": "header", + "description": "API key from https://app.resemble.ai/hub/api", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Preset deleted", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Voice Settings Presets_deleteVoiceSettingsPreset_Response_200" + } + } + } + } + } + }, + "patch": { + "operationId": "update-voice-settings-preset", + "summary": "Update voice settings preset", + "description": "Update a preset", + "tags": [ + "voiceSettingsPresets" + ], + "parameters": [ + { + "name": "uuid", "in": "path", "required": true, "schema": { @@ -4824,7 +4842,7 @@ { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -4833,11 +4851,11 @@ ], "responses": { "200": { - "description": "Clip updated", + "description": "Preset updated", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Clips_updateClip_Response_200" + "$ref": "#/components/schemas/Voice Settings Presets_updateVoiceSettingsPreset_Response_200" } } } @@ -4849,14 +4867,30 @@ "schema": { "type": "object", "properties": { - "title": { + "name": { "type": "string" }, - "body": { - "type": "string" + "pace": { + "type": "number", + "format": "double" }, - "is_archived": { + "temperature": { + "type": "number", + "format": "double" + }, + "pitch": { + "type": "number", + "format": "double" + }, + "useHd": { "type": "boolean" + }, + "exaggeration": { + "type": "number", + "format": "double" + }, + "description": { + "type": "string" } } } @@ -4870,19 +4904,37 @@ } ] }, - "/duet_voices": { + "/projects": { "get": { - "operationId": "list-duet-voices", - "summary": "List duet voices", - "description": "Returns default and custom duet voices", + "operationId": "list-projects", + "summary": "List projects", + "description": "List all projects", "tags": [ - "duets" + "projects" ], "parameters": [ + { + "name": "page", + "in": "query", + "required": true, + "schema": { + "type": "integer", + "default": 1 + } + }, + { + "name": "page_size", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "default": 10 + } + }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -4891,11 +4943,11 @@ ], "responses": { "200": { - "description": "List of duet voices", + "description": "List of projects", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Duets_listDuetVoices_Response_200" + "$ref": "#/components/schemas/Projects_listProjects_Response_200" } } } @@ -4903,17 +4955,17 @@ } }, "post": { - "operationId": "create-duet-voice", - "summary": "Create custom duet voice", - "description": "Create a custom voice for duet generation", + "operationId": "create-project", + "summary": "Create project", + "description": "Create a new project", "tags": [ - "duets" + "projects" ], "parameters": [ { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -4922,11 +4974,11 @@ ], "responses": { "200": { - "description": "Duet voice created", + "description": "Project created", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Duets_createDuetVoice_Response_200" + "$ref": "#/components/schemas/Projects_createProject_Response_200" } } } @@ -4934,27 +4986,28 @@ }, "requestBody": { "content": { - "multipart/form-data": { + "application/json": { "schema": { "type": "object", "properties": { "name": { - "type": "string", - "description": "Voice name" + "type": "string" }, - "style_prompt": { - "type": "string", - "description": "Optional style prompt" + "description": { + "type": "string" }, - "audio": { - "type": "string", - "format": "binary", - "description": "Audio file (MP3/WAV/M4A/OGG/AAC/FLAC max 10 MB)" + "is_collaborative": { + "type": "boolean" + }, + "is_archived": { + "type": "boolean" } }, "required": [ "name", - "audio" + "description", + "is_collaborative", + "is_archived" ] } } @@ -4967,27 +5020,27 @@ } ] }, - "/duet_voices/{id}": { - "put": { - "operationId": "update-duet-voice", - "summary": "Update duet voice", - "description": "Update a custom duet voice (default voices cannot be modified)", + "/projects/{project_uuid}": { + "get": { + "operationId": "get-project", + "summary": "Get project", + "description": "Get project details", "tags": [ - "duets" + "projects" ], "parameters": [ { - "name": "id", + "name": "project_uuid", "in": "path", "required": true, "schema": { - "type": "integer" + "type": "string" } }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -4996,11 +5049,50 @@ ], "responses": { "200": { - "description": "Duet voice updated", + "description": "Project details", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Duets_updateDuetVoice_Response_200" + "$ref": "#/components/schemas/Projects_getProject_Response_200" + } + } + } + } + } + }, + "put": { + "operationId": "update-project", + "summary": "Update project", + "description": "Update a project", + "tags": [ + "projects" + ], + "parameters": [ + { + "name": "project_uuid", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "Authorization", + "in": "header", + "description": "API key from https://app.resemble.ai/hub/api", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Project updated", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Projects_updateProject_Response_200" } } } @@ -5015,8 +5107,14 @@ "name": { "type": "string" }, - "style_prompt": { + "description": { "type": "string" + }, + "is_collaborative": { + "type": "boolean" + }, + "is_archived": { + "type": "boolean" } } } @@ -5025,25 +5123,25 @@ } }, "delete": { - "operationId": "delete-duet-voice", - "summary": "Delete duet voice", - "description": "Delete a custom duet voice (default voices cannot be deleted)", + "operationId": "delete-project", + "summary": "Delete project", + "description": "Delete a project", "tags": [ - "duets" + "projects" ], "parameters": [ { - "name": "id", + "name": "project_uuid", "in": "path", "required": true, "schema": { - "type": "integer" + "type": "string" } }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -5052,11 +5150,11 @@ ], "responses": { "200": { - "description": "Duet voice deleted", + "description": "Project deleted", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Duets_deleteDuetVoice_Response_200" + "$ref": "#/components/schemas/Projects_deleteProject_Response_200" } } } @@ -5069,50 +5167,45 @@ } ] }, - "/duet_voice_pairs": { + "/projects/{project_uuid}/clips": { "get": { - "operationId": "list-duet-voice-pairs", - "summary": "List duet voice pairs", - "description": "List all voice pairs for duet generation", + "operationId": "list-clips", + "summary": "List clips", + "description": "List clips in a project", "tags": [ - "duets" + "clips" ], "parameters": [ { - "name": "Authorization", - "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "name": "project_uuid", + "in": "path", "required": true, "schema": { "type": "string" } - } - ], - "responses": { - "200": { - "description": "List of voice pairs", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Duets_listDuetVoicePairs_Response_200" - } - } + }, + { + "name": "page", + "in": "query", + "required": true, + "schema": { + "type": "integer", + "default": 1 } - } - } - }, - "post": { - "operationId": "create-duet-voice-pair", - "summary": "Create duet voice pair", - "description": "Create a voice pair for duet generation", - "tags": [ - "duets" - ], - "parameters": [ + }, + { + "name": "page_size", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "default": 10 + } + }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -5121,42 +5214,15 @@ ], "responses": { "200": { - "description": "Voice pair created", + "description": "List of clips", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Duets_createDuetVoicePair_Response_200" + "$ref": "#/components/schemas/Clips_listClips_Response_200" } } } } - }, - "requestBody": { - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "voice_1_id": { - "type": "integer", - "description": "ID of first voice" - }, - "voice_2_id": { - "type": "integer", - "description": "ID of second voice" - }, - "name": { - "type": "string", - "description": "Optional pair name" - } - }, - "required": [ - "voice_1_id", - "voice_2_id" - ] - } - } - } } }, "servers": [ @@ -5165,19 +5231,35 @@ } ] }, - "/duet": { - "post": { - "operationId": "generate-duet", - "summary": "Generate duet", - "description": "Generate conversational audio with two speakers", + "/projects/{project_uuid}/clips/{clip_uuid}": { + "get": { + "operationId": "get-clip", + "summary": "Get clip", + "description": "Get clip details", "tags": [ - "duets" + "clips" ], "parameters": [ + { + "name": "project_uuid", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "clip_uuid", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -5186,70 +5268,45 @@ ], "responses": { "200": { - "description": "Duet generation job created", + "description": "Clip details", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Duets_generateDuet_Response_200" + "$ref": "#/components/schemas/Clips_getClip_Response_200" } } } } - }, - "requestBody": { - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "voice_pair_id": { - "type": "integer", - "description": "Voice pair ID to use" - }, - "script": { - "type": "array", - "items": { - "$ref": "#/components/schemas/DuetPostRequestBodyContentApplicationJsonSchemaScriptItems" - } - }, - "title": { - "type": "string", - "description": "Optional title for the duet" - }, - "callback_uri": { - "type": "string", - "format": "uri", - "description": "Webhook URL for completion notification" - } - }, - "required": [ - "voice_pair_id", - "script" - ] - } - } - } } }, - "servers": [ - { - "url": "https://app.resemble.ai/api/v2" - } - ] - }, - "/account": { - "get": { - "operationId": "get-account", - "summary": "Get account", - "description": "Get account information", + "delete": { + "operationId": "delete-clip", + "summary": "Delete clip", + "description": "Delete a clip", "tags": [ - "account" + "clips" ], "parameters": [ + { + "name": "project_uuid", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "clip_uuid", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -5258,11 +5315,78 @@ ], "responses": { "200": { - "description": "Account details", + "description": "Clip deleted", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Account_getAccount_Response_200" + "$ref": "#/components/schemas/Clips_deleteClip_Response_200" + } + } + } + } + } + }, + "patch": { + "operationId": "update-clip", + "summary": "Update clip", + "description": "Update a clip", + "tags": [ + "clips" + ], + "parameters": [ + { + "name": "project_uuid", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "clip_uuid", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "Authorization", + "in": "header", + "description": "API key from https://app.resemble.ai/hub/api", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Clip updated", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Clips_updateClip_Response_200" + } + } + } + } + }, + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "title": { + "type": "string" + }, + "body": { + "type": "string" + }, + "is_archived": { + "type": "boolean" + } } } } @@ -5275,19 +5399,19 @@ } ] }, - "/account/teams": { + "/duet_voices": { "get": { - "operationId": "get-teams", - "summary": "Get teams", - "description": "Get team information", + "operationId": "list-duet-voices", + "summary": "List duet voices", + "description": "Returns default and custom duet voices", "tags": [ - "account" + "duets" ], "parameters": [ { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -5296,15 +5420,74 @@ ], "responses": { "200": { - "description": "Team information", + "description": "List of duet voices", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Account_getTeams_Response_200" + "$ref": "#/components/schemas/Duets_listDuetVoices_Response_200" + } + } + } + } + } + }, + "post": { + "operationId": "create-duet-voice", + "summary": "Create custom duet voice", + "description": "Create a custom voice for duet generation", + "tags": [ + "duets" + ], + "parameters": [ + { + "name": "Authorization", + "in": "header", + "description": "API key from https://app.resemble.ai/hub/api", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Duet voice created", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Duets_createDuetVoice_Response_200" } } } } + }, + "requestBody": { + "content": { + "multipart/form-data": { + "schema": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Voice name" + }, + "style_prompt": { + "type": "string", + "description": "Optional style prompt" + }, + "audio": { + "type": "string", + "format": "binary", + "description": "Audio file (MP3/WAV/M4A/OGG/AAC/FLAC max 10 MB)" + } + }, + "required": [ + "name", + "audio" + ] + } + } + } } }, "servers": [ @@ -5313,28 +5496,27 @@ } ] }, - "/account/teams/{team_uuid}": { - "get": { - "operationId": "get-team", - "summary": "Get team", - "description": "Get specific team information", + "/duet_voices/{id}": { + "put": { + "operationId": "update-duet-voice", + "summary": "Update duet voice", + "description": "Update a custom duet voice (default voices cannot be modified)", "tags": [ - "account" + "duets" ], "parameters": [ { - "name": "team_uuid", + "name": "id", "in": "path", "required": true, "schema": { - "type": "string", - "format": "uuid" + "type": "integer" } }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -5343,36 +5525,54 @@ ], "responses": { "200": { - "description": "Team information", + "description": "Duet voice updated", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Account_getTeam_Response_200" + "$ref": "#/components/schemas/Duets_updateDuetVoice_Response_200" + } + } + } + } + }, + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "style_prompt": { + "type": "string" + } } } } } } }, - "servers": [ - { - "url": "https://app.resemble.ai/api/v2" - } - ] - }, - "/account/billing_usage": { - "get": { - "operationId": "get-billing-usage", - "summary": "Get billing usage", - "description": "Get billing and usage information", + "delete": { + "operationId": "delete-duet-voice", + "summary": "Delete duet voice", + "description": "Delete a custom duet voice (default voices cannot be deleted)", "tags": [ - "account" + "duets" ], "parameters": [ + { + "name": "id", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + }, { "name": "Authorization", "in": "header", - "description": "API token from https://app.resemble.ai/account/api", + "description": "API key from https://app.resemble.ai/hub/api", "required": true, "schema": { "type": "string" @@ -5381,11 +5581,11 @@ ], "responses": { "200": { - "description": "Billing information", + "description": "Duet voice deleted", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Account_getBillingUsage_Response_200" + "$ref": "#/components/schemas/Duets_deleteDuetVoice_Response_200" } } } @@ -5397,483 +5597,3060 @@ "url": "https://app.resemble.ai/api/v2" } ] - } - }, - "servers": [ - { - "url": "https://app.resemble.ai/api/v2", - "description": "production" }, - { - "url": "https://f.cluster.resemble.ai", - "description": "synthesis" - } - ], - "components": { - "schemas": { - "DetectGetResponsesContentApplicationJsonSchemaItemsItemsMediaType": { - "type": "string", - "enum": [ - "audio", - "video", - "image" + "/duet_voice_pairs": { + "get": { + "operationId": "list-duet-voice-pairs", + "summary": "List duet voice pairs", + "description": "List all voice pairs for duet generation", + "tags": [ + "duets" ], - "title": "DetectGetResponsesContentApplicationJsonSchemaItemsItemsMediaType" - }, - "DetectGetResponsesContentApplicationJsonSchemaItemsItemsStatus": { - "type": "string", - "enum": [ - "processing", - "completed", - "failed" + "parameters": [ + { + "name": "Authorization", + "in": "header", + "description": "API key from https://app.resemble.ai/hub/api", + "required": true, + "schema": { + "type": "string" + } + } ], - "title": "DetectGetResponsesContentApplicationJsonSchemaItemsItemsStatus" + "responses": { + "200": { + "description": "List of voice pairs", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Duets_listDuetVoicePairs_Response_200" + } + } + } + } + } }, - "DetectGetResponsesContentApplicationJsonSchemaItemsItemsModality": { + "post": { + "operationId": "create-duet-voice-pair", + "summary": "Create duet voice pair", + "description": "Create a voice pair for duet generation", + "tags": [ + "duets" + ], + "parameters": [ + { + "name": "Authorization", + "in": "header", + "description": "API key from https://app.resemble.ai/hub/api", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Voice pair created", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Duets_createDuetVoicePair_Response_200" + } + } + } + } + }, + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "voice_1_id": { + "type": "integer", + "description": "ID of first voice" + }, + "voice_2_id": { + "type": "integer", + "description": "ID of second voice" + }, + "name": { + "type": "string", + "description": "Optional pair name" + } + }, + "required": [ + "voice_1_id", + "voice_2_id" + ] + } + } + } + } + }, + "servers": [ + { + "url": "https://app.resemble.ai/api/v2" + } + ] + }, + "/duet": { + "post": { + "operationId": "generate-duet", + "summary": "Generate duet", + "description": "Generate conversational audio with two speakers", + "tags": [ + "duets" + ], + "parameters": [ + { + "name": "Authorization", + "in": "header", + "description": "API key from https://app.resemble.ai/hub/api", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Duet generation job created", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Duets_generateDuet_Response_200" + } + } + } + } + }, + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "voice_pair_id": { + "type": "integer", + "description": "Voice pair ID to use" + }, + "script": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DuetPostRequestBodyContentApplicationJsonSchemaScriptItems" + } + }, + "title": { + "type": "string", + "description": "Optional title for the duet" + }, + "callback_uri": { + "type": "string", + "format": "uri", + "description": "Webhook URL for completion notification" + } + }, + "required": [ + "voice_pair_id", + "script" + ] + } + } + } + } + }, + "servers": [ + { + "url": "https://app.resemble.ai/api/v2" + } + ] + }, + "/account": { + "get": { + "operationId": "get-account", + "summary": "Get account", + "description": "Get account information", + "tags": [ + "account" + ], + "parameters": [ + { + "name": "Authorization", + "in": "header", + "description": "API key from https://app.resemble.ai/hub/api", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Account details", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Account_getAccount_Response_200" + } + } + } + } + } + }, + "servers": [ + { + "url": "https://app.resemble.ai/api/v2" + } + ] + }, + "/account/teams": { + "get": { + "operationId": "get-teams", + "summary": "Get teams", + "description": "Get team information", + "tags": [ + "account" + ], + "parameters": [ + { + "name": "Authorization", + "in": "header", + "description": "API key from https://app.resemble.ai/hub/api", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Team information", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Account_getTeams_Response_200" + } + } + } + } + } + }, + "servers": [ + { + "url": "https://app.resemble.ai/api/v2" + } + ] + }, + "/account/teams/{team_uuid}": { + "get": { + "operationId": "get-team", + "summary": "Get team", + "description": "Get specific team information", + "tags": [ + "account" + ], + "parameters": [ + { + "name": "team_uuid", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid" + } + }, + { + "name": "Authorization", + "in": "header", + "description": "API key from https://app.resemble.ai/hub/api", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Team information", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Account_getTeam_Response_200" + } + } + } + } + } + }, + "servers": [ + { + "url": "https://app.resemble.ai/api/v2" + } + ] + }, + "/plans": { + "get": { + "operationId": "list-billing-plans", + "summary": "List billing plans", + "description": "Returns all active self-serve plans, their products, prices, and plan-specific quantity rules. This endpoint is public.", + "tags": [ + "billingPlans" + ], + "responses": { + "200": { + "description": "Active self-serve billing plans.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingPlansResponse" + } + } + } + }, + "500": { + "description": "An unexpected billing error occurred.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingError" + } + } + } + } + } + }, + "servers": [ + { + "url": "https://app.resemble.ai/api/v2" + } + ] + }, + "/plans/{id}": { + "get": { + "operationId": "get-billing-plan", + "summary": "Get a billing plan", + "description": "Returns an active billing plan by slug, including its products, prices, and quantity rules. This endpoint is public.", + "tags": [ + "billingPlans" + ], + "parameters": [ + { + "name": "id", + "in": "path", + "description": "Plan slug returned by the list-plans endpoint.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Billing plan details.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingPlanResponse" + } + } + } + }, + "404": { + "description": "The requested billing resource does not exist for the current team.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingError" + } + } + } + }, + "500": { + "description": "An unexpected billing error occurred.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingError" + } + } + } + } + } + }, + "servers": [ + { + "url": "https://app.resemble.ai/api/v2" + } + ] + }, + "/subscription": { + "get": { + "operationId": "get-billing-subscription", + "summary": "Get the current subscription", + "description": "Returns the current team's active, past-due, or delinquent subscription. Returns a null subscription when no customer-visible subscription exists.", + "tags": [ + "billingSubscriptions" + ], + "parameters": [ + { + "name": "Authorization", + "in": "header", + "description": "API key from https://app.resemble.ai/hub/api", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Current subscription or null.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingSubscriptionResponse" + } + } + } + }, + "401": { + "description": "A valid API key was not provided.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingError" + } + } + } + }, + "403": { + "description": "The API key owner cannot manage billing, or the Billing API is unavailable for the customer's billing arrangement.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingForbiddenError" + } + } + } + }, + "500": { + "description": "An unexpected billing error occurred.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingError" + } + } + } + } + } + }, + "servers": [ + { + "url": "https://app.resemble.ai/api/v2" + } + ] + }, + "/subscription/products": { + "patch": { + "operationId": "update-billing-subscription-products", + "summary": "Update subscription product quantities", + "description": "Updates one or more adjustable subscription products atomically. Each `new_quantity` is the desired absolute total, not an increment. A product is adjustable when its category is `subscription` and its `plan_product.allow_additional_usage` value is true. Quantities must remain within the plan's minimum and maximum and cannot be reduced below `consumed_quantity`.", + "tags": [ + "billingSubscriptions" + ], + "parameters": [ + { + "name": "Authorization", + "in": "header", + "description": "API key from https://app.resemble.ai/hub/api", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Subscription with updated product quantities.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingSubscriptionResponse" + } + } + } + }, + "400": { + "description": "The request could not be parsed or contains invalid parameters.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingError" + } + } + } + }, + "401": { + "description": "A valid API key was not provided.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingError" + } + } + } + }, + "402": { + "description": "Additional customer authentication is required before the billing change can complete.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingPaymentActionRequired" + } + } + } + }, + "403": { + "description": "The API key owner cannot manage billing, or the Billing API is unavailable for the customer's billing arrangement.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingForbiddenError" + } + } + } + }, + "404": { + "description": "The requested billing resource does not exist for the current team.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingError" + } + } + } + }, + "422": { + "description": "The request was understood but violates a billing rule.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateBillingSubscriptionProductsRequestUnprocessableEntityError" + } + } + } + }, + "500": { + "description": "An unexpected billing error occurred.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingError" + } + } + } + } + }, + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingUpdateProductsRequest" + } + } + } + } + }, + "servers": [ + { + "url": "https://app.resemble.ai/api/v2" + } + ] + }, + "/subscription/confirm_payment": { + "post": { + "operationId": "confirm-billing-subscription-payment", + "summary": "Confirm a subscription payment", + "description": "Synchronizes the subscription after the customer completes the additional payment authentication requested by a quantity or plan change.", + "tags": [ + "billingSubscriptions" + ], + "parameters": [ + { + "name": "Authorization", + "in": "header", + "description": "API key from https://app.resemble.ai/hub/api", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Synchronized subscription.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingSubscriptionResponse" + } + } + } + }, + "400": { + "description": "The request could not be parsed or contains invalid parameters.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingError" + } + } + } + }, + "401": { + "description": "A valid API key was not provided.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingError" + } + } + } + }, + "403": { + "description": "The API key owner cannot manage billing, or the Billing API is unavailable for the customer's billing arrangement.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingForbiddenError" + } + } + } + }, + "404": { + "description": "The requested billing resource does not exist for the current team.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingError" + } + } + } + }, + "422": { + "description": "The request was understood but violates a billing rule.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError" + } + } + } + }, + "500": { + "description": "An unexpected billing error occurred.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingError" + } + } + } + } + }, + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingConfirmPaymentRequest" + } + } + } + } + }, + "servers": [ + { + "url": "https://app.resemble.ai/api/v2" + } + ] + }, + "/subscription/change_plan": { + "patch": { + "operationId": "change-billing-plan", + "summary": "Change the current subscription plan", + "description": "Changes a self-serve subscription to another active plan with proration. Optional product quantities are absolute quantities on the destination plan.", + "tags": [ + "billingSubscriptions" + ], + "parameters": [ + { + "name": "Authorization", + "in": "header", + "description": "API key from https://app.resemble.ai/hub/api", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Subscription on the new plan.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingSubscriptionResponse" + } + } + } + }, + "400": { + "description": "The request could not be parsed or contains invalid parameters.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingError" + } + } + } + }, + "401": { + "description": "A valid API key was not provided.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingError" + } + } + } + }, + "402": { + "description": "Additional customer authentication is required before the billing change can complete.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingPaymentActionRequired" + } + } + } + }, + "403": { + "description": "The API key owner cannot manage billing, or the Billing API is unavailable for the customer's billing arrangement.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingForbiddenError" + } + } + } + }, + "404": { + "description": "The requested billing resource does not exist for the current team.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingError" + } + } + } + }, + "422": { + "description": "The request was understood but violates a billing rule.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ChangeBillingPlanRequestUnprocessableEntityError" + } + } + } + }, + "500": { + "description": "An unexpected billing error occurred.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingError" + } + } + } + } + }, + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingChangePlanRequest" + } + } + } + } + }, + "servers": [ + { + "url": "https://app.resemble.ai/api/v2" + } + ] + }, + "/wallet": { + "get": { + "operationId": "get-billing-wallet", + "summary": "Get the billing wallet", + "description": "Returns the current team's cash, promotional, total, and lifetime wallet balances.", + "tags": [ + "billingWallet" + ], + "parameters": [ + { + "name": "Authorization", + "in": "header", + "description": "API key from https://app.resemble.ai/hub/api", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Wallet balances and statistics.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingWalletResponse" + } + } + } + }, + "401": { + "description": "A valid API key was not provided.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingError" + } + } + } + }, + "403": { + "description": "The API key owner cannot manage billing, or the Billing API is unavailable for the customer's billing arrangement.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingForbiddenError" + } + } + } + }, + "500": { + "description": "An unexpected billing error occurred.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingError" + } + } + } + } + } + }, + "servers": [ + { + "url": "https://app.resemble.ai/api/v2" + } + ] + }, + "/wallet/transactions": { + "get": { + "operationId": "list-billing-wallet-transactions", + "summary": "List wallet transactions", + "description": "Returns wallet transactions newest first. Use page and per_page for paginated results, or limit for an unpaginated recent subset.", + "tags": [ + "billingWallet" + ], + "parameters": [ + { + "name": "limit", + "in": "query", + "description": "Return at most this many recent transactions. When present, pagination metadata is omitted.", + "required": false, + "schema": { + "type": "integer" + } + }, + { + "name": "page", + "in": "query", + "description": "Page number. Defaults to 1 and is ignored when limit is present.", + "required": false, + "schema": { + "type": "integer", + "default": 1 + } + }, + { + "name": "per_page", + "in": "query", + "description": "Results per page. Defaults to 10 and is capped at 100.", + "required": false, + "schema": { + "type": "integer", + "default": 10 + } + }, + { + "name": "Authorization", + "in": "header", + "description": "API key from https://app.resemble.ai/hub/api", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Wallet transactions and optional pagination metadata.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingTransactionsResponse" + } + } + } + }, + "400": { + "description": "The request could not be parsed or contains invalid parameters.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingError" + } + } + } + }, + "401": { + "description": "A valid API key was not provided.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingError" + } + } + } + }, + "403": { + "description": "The API key owner cannot manage billing, or the Billing API is unavailable for the customer's billing arrangement.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingForbiddenError" + } + } + } + }, + "500": { + "description": "An unexpected billing error occurred.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingError" + } + } + } + } + } + }, + "servers": [ + { + "url": "https://app.resemble.ai/api/v2" + } + ] + }, + "/wallet/transactions/export.csv": { + "get": { + "operationId": "export-billing-wallet-transactions", + "summary": "Export wallet transactions", + "description": "Downloads the current team's complete wallet transaction history as a CSV file, newest first.", + "tags": [ + "billingWallet" + ], + "parameters": [ + { + "name": "Authorization", + "in": "header", + "description": "API key from https://app.resemble.ai/hub/api", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Response with status 200", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": {} + } + } + } + }, + "401": { + "description": "A valid API key was not provided.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingError" + } + } + } + }, + "403": { + "description": "The API key owner cannot manage billing, or the Billing API is unavailable for the customer's billing arrangement.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingForbiddenError" + } + } + } + }, + "500": { + "description": "An unexpected billing error occurred.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingError" + } + } + } + } + } + }, + "servers": [ + { + "url": "https://app.resemble.ai/api/v2" + } + ] + }, + "/wallet/auto_reload": { + "get": { + "operationId": "get-billing-auto-reload", + "summary": "Get auto-reload settings", + "description": "Returns the current team's auto-reload configuration, whether a payment method is available, and the supported reload range.", + "tags": [ + "billingWallet" + ], + "parameters": [ + { + "name": "Authorization", + "in": "header", + "description": "API key from https://app.resemble.ai/hub/api", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Auto-reload configuration or null when it has not been configured.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingAutoReloadResponse" + } + } + } + }, + "401": { + "description": "A valid API key was not provided.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingError" + } + } + } + }, + "403": { + "description": "The API key owner cannot manage billing, or the Billing API is unavailable for the customer's billing arrangement.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingForbiddenError" + } + } + } + }, + "500": { + "description": "An unexpected billing error occurred.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingError" + } + } + } + } + } + }, + "put": { + "operationId": "update-billing-auto-reload", + "summary": "Update auto-reload settings", + "description": "Enables, disables, or changes wallet auto-reload. Amounts are expressed in cents and must comply with the limits returned by the GET operation.", + "tags": [ + "billingWallet" + ], + "parameters": [ + { + "name": "Authorization", + "in": "header", + "description": "API key from https://app.resemble.ai/hub/api", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Updated auto-reload configuration.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Billing Wallet_updateBillingAutoReload_Response_200" + } + } + } + }, + "400": { + "description": "The request could not be parsed or contains invalid parameters.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingError" + } + } + } + }, + "401": { + "description": "A valid API key was not provided.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingError" + } + } + } + }, + "403": { + "description": "The API key owner cannot manage billing, or the Billing API is unavailable for the customer's billing arrangement.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingForbiddenError" + } + } + } + }, + "422": { + "description": "The request was understood but violates a billing rule.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateBillingAutoReloadRequestUnprocessableEntityError" + } + } + } + }, + "500": { + "description": "An unexpected billing error occurred.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingError" + } + } + } + } + }, + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BillingUpdateAutoReloadRequest" + } + } + } + } + }, + "servers": [ + { + "url": "https://app.resemble.ai/api/v2" + } + ] + } + }, + "servers": [ + { + "url": "https://app.resemble.ai/api/v2", + "description": "production" + }, + { + "url": "https://f.cluster.resemble.ai", + "description": "synthesis" + }, + { + "url": "https://app.resemble.ai/billing/api/v1", + "description": "billing" + } + ], + "components": { + "schemas": { + "DetectGetResponsesContentApplicationJsonSchemaItemsItemsMediaType": { + "type": "string", + "enum": [ + "audio", + "video", + "image" + ], + "title": "DetectGetResponsesContentApplicationJsonSchemaItemsItemsMediaType" + }, + "DetectGetResponsesContentApplicationJsonSchemaItemsItemsStatus": { + "type": "string", + "enum": [ + "processing", + "completed", + "failed" + ], + "title": "DetectGetResponsesContentApplicationJsonSchemaItemsItemsStatus" + }, + "DetectGetResponsesContentApplicationJsonSchemaItemsItemsModality": { + "type": "string", + "enum": [ + "audio", + "video", + "all" + ], + "description": "Which detection modality was requested. `all` when not specified (the default). Only meaningful for video detects.", + "title": "DetectGetResponsesContentApplicationJsonSchemaItemsItemsModality" + }, + "DetectAudioMetrics": { + "type": "object", + "properties": { + "label": { + "type": "string", + "description": "Detection label (fake or real)" + }, + "score": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Array of prediction scores per chunk" + }, + "consistency": { + "type": "string", + "description": "Consistency metric across chunks" + }, + "aggregated_score": { + "type": "string", + "description": "Overall aggregated detection score" + }, + "image": { + "type": "string", + "description": "URL to visualization heatmap image (if visualize=true)" + } + }, + "required": [ + "label", + "score", + "consistency", + "aggregated_score" + ], + "description": "Audio detection metrics (for audio and video media types)", + "title": "DetectAudioMetrics" + }, + "DetectImageMetricsChildrenItems": { + "type": "object", + "properties": {}, + "title": "DetectImageMetricsChildrenItems" + }, + "DetectImageMetrics": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "Type of image analysis performed" + }, + "label": { + "type": "string", + "description": "Detection label (fake or real)" + }, + "image": { + "type": "string", + "description": "URL to visualization image" + }, + "score": { + "type": "number", + "format": "double", + "description": "Detection confidence score" + }, + "children": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DetectImageMetricsChildrenItems" + }, + "description": "Nested analysis results (structure varies by pipeline)" + } + }, + "required": [ + "type", + "label", + "image", + "score", + "children" + ], + "description": "Image detection metrics (for image media type)", + "title": "DetectImageMetrics" + }, + "DetectVideoMetricsChildrenItemsChildrenItemsChildrenItems": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "conclusion": { + "type": "string" + }, + "score": { + "type": "number", + "format": "double" + }, + "certainty": { + "type": "number", + "format": "double" + }, + "certainty (%)": { + "type": "string" + } + }, + "required": [ + "type", + "conclusion", + "score", + "certainty", + "certainty (%)" + ], + "title": "DetectVideoMetricsChildrenItemsChildrenItemsChildrenItems" + }, + "DetectVideoMetricsChildrenItemsChildrenItems": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "conclusion": { + "type": "string" + }, + "score": { + "type": "number", + "format": "double" + }, + "certainty": { + "type": "number", + "format": "double" + }, + "certainty (%)": { + "type": "string" + }, + "timestamp": { + "type": "number", + "format": "double", + "description": "Timestamp in seconds" + }, + "children": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DetectVideoMetricsChildrenItemsChildrenItemsChildrenItems" + }, + "description": "Segment-level detection results" + } + }, + "required": [ + "type", + "conclusion", + "score", + "certainty", + "certainty (%)", + "timestamp", + "children" + ], + "title": "DetectVideoMetricsChildrenItemsChildrenItems" + }, + "DetectVideoMetricsChildrenItems": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "conclusion": { + "type": "string" + }, + "score": { + "type": "number", + "format": "double" + }, + "certainty": { + "type": "number", + "format": "double" + }, + "certainty (%)": { + "type": "string" + }, + "children": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DetectVideoMetricsChildrenItemsChildrenItems" + }, + "description": "Frame-level detection results" + } + }, + "required": [ + "type", + "conclusion", + "score", + "certainty", + "certainty (%)", + "children" + ], + "title": "DetectVideoMetricsChildrenItems" + }, + "DetectVideoMetrics": { + "type": "object", + "properties": { + "label": { + "type": "string", + "description": "Overall video detection label" + }, + "score": { + "type": "number", + "format": "double", + "description": "Overall detection score" + }, + "certainty": { + "type": "number", + "format": "double", + "description": "Overall certainty score" + }, + "treeview": { + "type": "string", + "description": "Optional tree visualization data" + }, + "children": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DetectVideoMetricsChildrenItems" + }, + "description": "Hierarchical detection results across frames" + } + }, + "required": [ + "label", + "score", + "certainty", + "children" + ], + "description": "Video detection metrics (for video media type)", + "title": "DetectVideoMetrics" + }, + "DetectC2PaManifestValidationState": { + "type": "string", + "enum": [ + "Valid", + "NotPresent", + "Unavailable" + ], + "description": "Verification state. `NotPresent` means no embedded Content Credentials were found; `Unavailable` means verification could not complete.", + "title": "DetectC2PaManifestValidationState" + }, + "DetectC2paManifest": { + "type": "object", + "properties": { + "validation_state": { + "$ref": "#/components/schemas/DetectC2PaManifestValidationState", + "description": "Verification state. `NotPresent` means no embedded Content Credentials were found; `Unavailable` means verification could not complete." + }, + "active_manifest": { + "type": [ + "string", + "null" + ], + "description": "Active C2PA manifest identifier when credentials are present" + }, + "manifests": { + "type": [ + "object", + "null" + ], + "additionalProperties": { + "description": "Any type" + }, + "description": "Raw manifest details returned by C2PA tooling" + }, + "validation_results": { + "type": [ + "object", + "null" + ], + "additionalProperties": { + "description": "Any type" + }, + "description": "Detailed validation results returned by C2PA tooling" + }, + "message": { + "type": [ + "string", + "null" + ], + "description": "Generic message when verification is unavailable" + } + }, + "description": "Content Credentials (C2PA) verification result for audio, image, and video media. Returned when verification has completed. A fallback verification failure returns `validation_state: Unavailable` and does not fail the detection.", + "title": "DetectC2paManifest" + }, + "DetectGetResponsesContentApplicationJsonSchemaItemsItemsAudioSourceTracing": { + "type": "object", + "properties": { + "label": { + "type": "string", + "description": "Identified source (e.g., resemble_ai, elevenlabs) or \"real\" if audio is not synthetic" + }, + "error_message": { + "type": [ + "string", + "null" + ] + } + }, + "description": "Source tracing results (only returned if audio is labeled fake)", + "title": "DetectGetResponsesContentApplicationJsonSchemaItemsItemsAudioSourceTracing" + }, + "DetectGetResponsesContentApplicationJsonSchemaItemsItemsIntelligence": { + "type": "object", + "properties": {}, + "title": "DetectGetResponsesContentApplicationJsonSchemaItemsItemsIntelligence" + }, + "DetectGetResponsesContentApplicationJsonSchemaItemsItemsExtraParams": { + "type": "object", + "properties": {}, + "title": "DetectGetResponsesContentApplicationJsonSchemaItemsItemsExtraParams" + }, + "DetectGetResponsesContentApplicationJsonSchemaItemsItems": { + "type": "object", + "properties": { + "uuid": { + "type": "string" + }, + "media_type": { + "$ref": "#/components/schemas/DetectGetResponsesContentApplicationJsonSchemaItemsItemsMediaType" + }, + "status": { + "$ref": "#/components/schemas/DetectGetResponsesContentApplicationJsonSchemaItemsItemsStatus" + }, + "modality": { + "$ref": "#/components/schemas/DetectGetResponsesContentApplicationJsonSchemaItemsItemsModality", + "description": "Which detection modality was requested. `all` when not specified (the default). Only meaningful for video detects." + }, + "face_only": { + "type": "boolean", + "description": "Effective face-only setting for this detect. `true` only for video inputs that\ninclude visual analysis; `false` for audio, image, and audio-only video detects.\n" + }, + "metrics": { + "$ref": "#/components/schemas/DetectAudioMetrics" + }, + "image_metrics": { + "$ref": "#/components/schemas/DetectImageMetrics" + }, + "video_metrics": { + "$ref": "#/components/schemas/DetectVideoMetrics" + }, + "c2pa_manifest": { + "$ref": "#/components/schemas/DetectC2paManifest" + }, + "audio_source_tracing": { + "oneOf": [ + { + "$ref": "#/components/schemas/DetectGetResponsesContentApplicationJsonSchemaItemsItemsAudioSourceTracing" + }, + { + "type": "null" + } + ], + "description": "Source tracing results (only returned if audio is labeled fake)" + }, + "intelligence": { + "oneOf": [ + { + "$ref": "#/components/schemas/DetectGetResponsesContentApplicationJsonSchemaItemsItemsIntelligence" + }, + { + "type": "null" + } + ] + }, + "url": { + "type": [ + "string", + "null" + ], + "description": "URL to the media file. Null when Zero Retention Mode is enabled." + }, + "audio_url": { + "type": [ + "string", + "null" + ], + "description": "Alias of url. Null when Zero Retention Mode is enabled." + }, + "filename": { + "type": "string", + "description": "Original filename, or tokenized (redacted_.) when Zero Retention Mode is enabled" + }, + "duration": { + "type": "number", + "format": "double" + }, + "zero_retention_mode": { + "type": "boolean", + "description": "Whether Zero Retention Mode was enabled for this detect" + }, + "file_deleted_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "ISO 8601 timestamp of when the file was purged, or null if not yet deleted" + }, + "visualize": { + "type": "boolean" + }, + "audio_source_tracing_enabled": { + "type": "boolean" + }, + "use_ood_detector": { + "type": "boolean" + }, + "pipeline": { + "type": [ + "string", + "null" + ], + "description": "Legacy field. May be present on older image/video detects. Ignored on create for new detections." + }, + "extra_params": { + "$ref": "#/components/schemas/DetectGetResponsesContentApplicationJsonSchemaItemsItemsExtraParams" + }, + "error_message": { + "type": [ + "string", + "null" + ] + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + } + }, + "title": "DetectGetResponsesContentApplicationJsonSchemaItemsItems" + }, + "Deepfake Detection_listDetections_Response_200": { + "type": "object", + "properties": { + "success": { + "type": "boolean" + }, + "page": { + "type": "integer" + }, + "num_pages": { + "type": "integer" + }, + "page_size": { + "type": "integer" + }, + "total_count": { + "type": "integer" + }, + "items": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DetectGetResponsesContentApplicationJsonSchemaItemsItems" + } + } + }, + "title": "Deepfake Detection_listDetections_Response_200" + }, + "DetectPostRequestBodyContentMultipartFormDataSchemaModality": { + "type": "string", + "enum": [ + "audio", + "video", + "all" + ], + "default": "all", + "description": "Video only. Selects which detection components run for a video file:\n`audio` (audio track only), `video` (visual frames only), or `all` (both — the default).\nIgnored for audio and image inputs. Invalid values are rejected with HTTP 400.\n", + "title": "DetectPostRequestBodyContentMultipartFormDataSchemaModality" + }, + "DetectPostResponsesContentApplicationJsonSchemaItemModality": { + "type": "string", + "enum": [ + "audio", + "video", + "all" + ], + "description": "Which detection modality was requested. `all` when not specified.\nFor a single-modality video detect, the skipped component's metrics are absent\n(`metrics` for audio-only-skipped, `video_metrics` for video-only-skipped), and the\ndetect still reaches `completed` once the requested modality(ies) finish.\n", + "title": "DetectPostResponsesContentApplicationJsonSchemaItemModality" + }, + "DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceStatus": { + "type": "string", + "enum": [ + "processing", + "completed", + "failed" + ], + "title": "DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceStatus" + }, + "DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1FraudType": { + "type": "string", + "enum": [ + "none", + "vishing", + "impersonation", + "romance_scam", + "tech_support_scam", + "financial_fraud", + "extortion", + "political_manipulation", + "synthetic_media_fraud", + "insurance_fraud", + "employment_fraud", + "other" + ], + "title": "DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1FraudType" + }, + "DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1Fraud": { + "type": "object", + "properties": { + "type": { + "$ref": "#/components/schemas/DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1FraudType" + }, + "confidence": { + "type": "number", + "format": "double" + }, + "reasoning": { + "type": "string" + } + }, + "title": "DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1Fraud" + }, + "DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1LivenessAssessment": { + "type": "string", + "enum": [ + "real_person", + "not_real_person", + "inconclusive" + ], + "title": "DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1LivenessAssessment" + }, + "DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1Liveness": { + "type": "object", + "properties": { + "assessment": { + "$ref": "#/components/schemas/DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1LivenessAssessment" + }, + "confidence": { + "type": "number", + "format": "double" + }, + "indicators": { + "type": "string" + } + }, + "title": "DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1Liveness" + }, + "DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1DigitallyAltered": { + "type": "object", + "properties": { + "detected": { + "type": "boolean" + }, + "confidence": { + "type": "number", + "format": "double" + }, + "alterations": { + "type": "string" + } + }, + "title": "DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1DigitallyAltered" + }, + "DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescription1": { + "type": "object", + "properties": { + "speaker_info": { + "type": "string" + }, + "language": { + "type": "string" + }, + "dialect": { + "type": "string" + }, + "emotion": { + "type": "string" + }, + "speaking_style": { + "type": "string" + }, + "context": { + "type": "string" + }, + "message": { + "type": "string" + }, + "abnormalities": { + "type": "string" + }, + "transcription": { + "type": "string" + }, + "translation": { + "type": [ + "string", + "null" + ] + }, + "misinformation": { + "type": "string" + }, + "fraud": { + "$ref": "#/components/schemas/DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1Fraud" + }, + "liveness": { + "$ref": "#/components/schemas/DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1Liveness" + }, + "digitally_altered": { + "$ref": "#/components/schemas/DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1DigitallyAltered" + } + }, + "title": "DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescription1" + }, + "DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescription": { + "oneOf": [ + { + "type": "string" + }, + { + "$ref": "#/components/schemas/DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescription1" + } + ], + "title": "DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescription" + }, + "DetectPostResponsesContentApplicationJsonSchemaItemIntelligence": { + "type": "object", + "properties": { + "uuid": { + "type": "string" + }, + "status": { + "$ref": "#/components/schemas/DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceStatus" + }, + "error_message": { + "type": [ + "string", + "null" + ] + }, + "description": { + "$ref": "#/components/schemas/DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescription" + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "detect_uuid": { + "type": "string" + } + }, + "description": "Default Intelligence result when requested", + "title": "DetectPostResponsesContentApplicationJsonSchemaItemIntelligence" + }, + "DetectPostResponsesContentApplicationJsonSchemaItem": { + "type": "object", + "properties": { + "uuid": { + "type": "string" + }, + "status": { + "type": "string" + }, + "zero_retention_mode": { + "type": "boolean", + "description": "Whether Zero Retention Mode is enabled for this detect" + }, + "file_deleted_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "ISO 8601 timestamp of when the file was purged, or null if not yet deleted" + }, + "url": { + "type": [ + "string", + "null" + ], + "description": "URL to the media file. Null when Zero Retention Mode is enabled." + }, + "audio_url": { + "type": [ + "string", + "null" + ], + "description": "Alias of url. Null when Zero Retention Mode is enabled." + }, + "filename": { + "type": "string", + "description": "Original filename, or tokenized (redacted_.) when Zero Retention Mode is enabled" + }, + "modality": { + "$ref": "#/components/schemas/DetectPostResponsesContentApplicationJsonSchemaItemModality", + "description": "Which detection modality was requested. `all` when not specified.\nFor a single-modality video detect, the skipped component's metrics are absent\n(`metrics` for audio-only-skipped, `video_metrics` for video-only-skipped), and the\ndetect still reaches `completed` once the requested modality(ies) finish.\n" + }, + "face_only": { + "type": "boolean", + "description": "Effective face-only setting. `true` only for video inputs that include visual\nanalysis; `false` for audio, image, and audio-only video detects.\n" + }, + "intelligence": { + "oneOf": [ + { + "$ref": "#/components/schemas/DetectPostResponsesContentApplicationJsonSchemaItemIntelligence" + }, + { + "type": "null" + } + ], + "description": "Default Intelligence result when requested" + }, + "c2pa_manifest": { + "$ref": "#/components/schemas/DetectC2paManifest" + } + }, + "title": "DetectPostResponsesContentApplicationJsonSchemaItem" + }, + "Deepfake Detection_createDetection_Response_200": { + "type": "object", + "properties": { + "success": { + "type": "boolean" + }, + "item": { + "$ref": "#/components/schemas/DetectPostResponsesContentApplicationJsonSchemaItem" + } + }, + "title": "Deepfake Detection_createDetection_Response_200" + }, + "DetectUuidGetResponsesContentApplicationJsonSchemaItemMediaType": { + "type": "string", + "enum": [ + "audio", + "video", + "image" + ], + "title": "DetectUuidGetResponsesContentApplicationJsonSchemaItemMediaType" + }, + "DetectUuidGetResponsesContentApplicationJsonSchemaItemStatus": { + "type": "string", + "enum": [ + "processing", + "completed", + "failed" + ], + "description": "Status of the Deepfake Detection job only. A completed Detect has verdict and metrics available, but its Intelligence results may still be processing.", + "title": "DetectUuidGetResponsesContentApplicationJsonSchemaItemStatus" + }, + "DetectUuidGetResponsesContentApplicationJsonSchemaItemAudioSourceTracing": { + "type": "object", + "properties": { + "label": { + "type": "string", + "description": "Identified source (e.g., resemble_ai, elevenlabs) or \"real\" if audio is not synthetic" + }, + "error_message": { + "type": [ + "string", + "null" + ] + } + }, + "description": "Source tracing results (only returned if audio is labeled fake)", + "title": "DetectUuidGetResponsesContentApplicationJsonSchemaItemAudioSourceTracing" + }, + "DetectIntelligenceResultStatus": { + "type": "string", + "enum": [ + "processing", + "completed", + "failed" + ], + "description": "Status of this Intelligence result, independent of the associated Detect job status.", + "title": "DetectIntelligenceResultStatus" + }, + "DetectIntelligenceResultDescriptionOneOf1FraudType": { + "type": "string", + "enum": [ + "none", + "vishing", + "impersonation", + "romance_scam", + "tech_support_scam", + "financial_fraud", + "extortion", + "political_manipulation", + "synthetic_media_fraud", + "insurance_fraud", + "employment_fraud", + "other" + ], + "title": "DetectIntelligenceResultDescriptionOneOf1FraudType" + }, + "DetectIntelligenceResultDescriptionOneOf1Fraud": { + "type": "object", + "properties": { + "type": { + "$ref": "#/components/schemas/DetectIntelligenceResultDescriptionOneOf1FraudType" + }, + "confidence": { + "type": "number", + "format": "double" + }, + "reasoning": { + "type": "string" + } + }, + "title": "DetectIntelligenceResultDescriptionOneOf1Fraud" + }, + "DetectIntelligenceResultDescriptionOneOf1LivenessAssessment": { + "type": "string", + "enum": [ + "real_person", + "not_real_person", + "inconclusive" + ], + "title": "DetectIntelligenceResultDescriptionOneOf1LivenessAssessment" + }, + "DetectIntelligenceResultDescriptionOneOf1Liveness": { + "type": "object", + "properties": { + "assessment": { + "$ref": "#/components/schemas/DetectIntelligenceResultDescriptionOneOf1LivenessAssessment" + }, + "confidence": { + "type": "number", + "format": "double" + }, + "indicators": { + "type": "string" + } + }, + "title": "DetectIntelligenceResultDescriptionOneOf1Liveness" + }, + "DetectIntelligenceResultDescriptionOneOf1DigitallyAltered": { + "type": "object", + "properties": { + "detected": { + "type": "boolean" + }, + "confidence": { + "type": "number", + "format": "double" + }, + "alterations": { + "type": "string" + } + }, + "title": "DetectIntelligenceResultDescriptionOneOf1DigitallyAltered" + }, + "DetectIntelligenceResultDescription1": { + "type": "object", + "properties": { + "speaker_info": { + "type": "string" + }, + "language": { + "type": "string" + }, + "dialect": { + "type": "string" + }, + "emotion": { + "type": "string" + }, + "speaking_style": { + "type": "string" + }, + "context": { + "type": "string" + }, + "message": { + "type": "string" + }, + "abnormalities": { + "type": "string" + }, + "transcription": { + "type": "string" + }, + "translation": { + "type": [ + "string", + "null" + ] + }, + "misinformation": { + "type": "string" + }, + "fraud": { + "$ref": "#/components/schemas/DetectIntelligenceResultDescriptionOneOf1Fraud" + }, + "liveness": { + "$ref": "#/components/schemas/DetectIntelligenceResultDescriptionOneOf1Liveness" + }, + "digitally_altered": { + "$ref": "#/components/schemas/DetectIntelligenceResultDescriptionOneOf1DigitallyAltered" + } + }, + "title": "DetectIntelligenceResultDescription1" + }, + "DetectIntelligenceResultDescription": { + "oneOf": [ + { + "type": "string" + }, + { + "$ref": "#/components/schemas/DetectIntelligenceResultDescription1" + } + ], + "title": "DetectIntelligenceResultDescription" + }, + "DetectIntelligenceResult": { + "type": "object", + "properties": { + "uuid": { + "type": "string" + }, + "status": { + "$ref": "#/components/schemas/DetectIntelligenceResultStatus", + "description": "Status of this Intelligence result, independent of the associated Detect job status." + }, + "error_message": { + "type": [ + "string", + "null" + ] + }, + "description": { + "oneOf": [ + { + "$ref": "#/components/schemas/DetectIntelligenceResultDescription" + }, + { + "type": "null" + } + ] + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "detect_uuid": { + "type": "string" + } + }, + "description": "One Detect Intelligence expert result", + "title": "DetectIntelligenceResult" + }, + "DetectUuidGetResponsesContentApplicationJsonSchemaItemIntelligence1": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DetectIntelligenceResult" + }, + "title": "DetectUuidGetResponsesContentApplicationJsonSchemaItemIntelligence1" + }, + "DetectUuidGetResponsesContentApplicationJsonSchemaItemIntelligence": { + "oneOf": [ + { + "$ref": "#/components/schemas/DetectIntelligenceResult" + }, + { + "$ref": "#/components/schemas/DetectUuidGetResponsesContentApplicationJsonSchemaItemIntelligence1" + } + ], + "description": "With experts omitted or false, one completed Intelligence result when available; otherwise, the current processing or failed result. With experts=true, all successfully completed results as an array, or an empty array when none have completed successfully.", + "title": "DetectUuidGetResponsesContentApplicationJsonSchemaItemIntelligence" + }, + "DetectUuidGetResponsesContentApplicationJsonSchemaItemModality": { + "type": "string", + "enum": [ + "audio", + "video", + "all" + ], + "description": "Which detection modality was requested for this detect. `all` when not specified\n(the default). For a single-modality video detect, the skipped component's metrics\nare absent (`metrics` for audio-only-skipped, `video_metrics` for video-only-skipped).\n", + "title": "DetectUuidGetResponsesContentApplicationJsonSchemaItemModality" + }, + "DetectUuidGetResponsesContentApplicationJsonSchemaItem": { + "type": "object", + "properties": { + "uuid": { + "type": "string" + }, + "media_type": { + "$ref": "#/components/schemas/DetectUuidGetResponsesContentApplicationJsonSchemaItemMediaType" + }, + "status": { + "$ref": "#/components/schemas/DetectUuidGetResponsesContentApplicationJsonSchemaItemStatus", + "description": "Status of the Deepfake Detection job only. A completed Detect has verdict and metrics available, but its Intelligence results may still be processing." + }, + "metrics": { + "$ref": "#/components/schemas/DetectAudioMetrics" + }, + "image_metrics": { + "$ref": "#/components/schemas/DetectImageMetrics" + }, + "video_metrics": { + "$ref": "#/components/schemas/DetectVideoMetrics" + }, + "c2pa_manifest": { + "$ref": "#/components/schemas/DetectC2paManifest" + }, + "audio_source_tracing": { + "oneOf": [ + { + "$ref": "#/components/schemas/DetectUuidGetResponsesContentApplicationJsonSchemaItemAudioSourceTracing" + }, + { + "type": "null" + } + ], + "description": "Source tracing results (only returned if audio is labeled fake)" + }, + "intelligence": { + "oneOf": [ + { + "$ref": "#/components/schemas/DetectUuidGetResponsesContentApplicationJsonSchemaItemIntelligence" + }, + { + "type": "null" + } + ], + "description": "With experts omitted or false, one completed Intelligence result when available; otherwise, the current processing or failed result. With experts=true, all successfully completed results as an array, or an empty array when none have completed successfully." + }, + "modality": { + "$ref": "#/components/schemas/DetectUuidGetResponsesContentApplicationJsonSchemaItemModality", + "description": "Which detection modality was requested for this detect. `all` when not specified\n(the default). For a single-modality video detect, the skipped component's metrics\nare absent (`metrics` for audio-only-skipped, `video_metrics` for video-only-skipped).\n" + }, + "face_only": { + "type": "boolean", + "description": "Effective face-only setting for this detect. `true` only for video inputs that\ninclude visual analysis; `false` for audio, image, and audio-only video detects.\n" + }, + "url": { + "type": [ + "string", + "null" + ], + "description": "URL to the media file. Null when Zero Retention Mode is enabled." + }, + "audio_url": { + "type": [ + "string", + "null" + ], + "description": "Alias of url. Null when Zero Retention Mode is enabled." + }, + "filename": { + "type": "string", + "description": "Original filename, or tokenized (redacted_.) when Zero Retention Mode is enabled" + }, + "duration": { + "type": "number", + "format": "double" + }, + "zero_retention_mode": { + "type": "boolean", + "description": "Whether Zero Retention Mode is enabled for this detect" + }, + "file_deleted_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "ISO 8601 timestamp of when the file was purged, or null if not yet deleted" + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + } + }, + "title": "DetectUuidGetResponsesContentApplicationJsonSchemaItem" + }, + "Deepfake Detection_getDetection_Response_200": { + "type": "object", + "properties": { + "success": { + "type": "boolean" + }, + "item": { + "$ref": "#/components/schemas/DetectUuidGetResponsesContentApplicationJsonSchemaItem" + } + }, + "title": "Deepfake Detection_getDetection_Response_200" + }, + "Error": { + "type": "object", + "properties": { + "success": { + "type": "boolean" + }, + "error": { + "type": "string" + }, + "errors": { + "type": "object", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "message": { + "type": "string" + } + }, + "title": "Error" + }, + "DetectBatchStatus": { + "type": "string", + "enum": [ + "processing", + "completed", + "partially_failed", + "failed" + ], + "description": "Aggregate status across all child detects.\n - `processing` — at least one child detect is still running.\n - `completed` — every child detect completed successfully.\n - `partially_failed` — at least one succeeded and at least one failed.\n - `failed` — every child detect failed.\n", + "title": "DetectBatchStatus" + }, + "DetectBatch": { + "type": "object", + "properties": { + "uuid": { + "type": "string", + "description": "Batch UUID." + }, + "status": { + "$ref": "#/components/schemas/DetectBatchStatus", + "description": "Aggregate status across all child detects.\n - `processing` — at least one child detect is still running.\n - `completed` — every child detect completed successfully.\n - `partially_failed` — at least one succeeded and at least one failed.\n - `failed` — every child detect failed.\n" + }, + "total_files": { + "type": "integer", + "description": "Number of files in the batch (1–50)." + }, + "completed_count": { + "type": "integer", + "description": "Number of child detects that have completed successfully." + }, + "failed_count": { + "type": "integer", + "description": "Number of child detects that have failed." + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "detect_uuids": { + "type": "array", + "items": { + "type": "string" + }, + "description": "UUIDs of the child detects. Use `GET /detect/{uuid}` to retrieve per-file results." + } + }, + "description": "Aggregate state for a batch detection job. Returned by `POST /detect/batch` and `GET /detect/batch/{uuid}`.", + "title": "DetectBatch" + }, + "Deepfake Detection_createDetectBatch_Response_202": { + "type": "object", + "properties": { + "success": { + "type": "boolean" + }, + "item": { + "$ref": "#/components/schemas/DetectBatch" + } + }, + "title": "Deepfake Detection_createDetectBatch_Response_202" + }, + "Deepfake Detection_getDetectBatch_Response_200": { + "type": "object", + "properties": { + "success": { + "type": "boolean" + }, + "item": { + "$ref": "#/components/schemas/DetectBatch" + } + }, + "title": "Deepfake Detection_getDetectBatch_Response_200" + }, + "DetectAgentTier": { + "type": "string", + "enum": [ + "triage", + "investigation", + "forensic" + ], + "description": "Managed investigation depth. Informational and read-only.", + "title": "DetectAgentTier" + }, + "DetectAgentCapabilities": { + "type": "object", + "properties": { + "media": { + "type": "boolean" + }, + "reverse_search": { + "type": "boolean" + }, + "identity": { + "type": "boolean" + }, + "grounding": { + "type": "boolean" + }, + "structured": { + "type": "boolean" + }, + "tools": { + "type": "boolean" + }, + "knowledge": { + "type": "boolean" + } + }, + "required": [ + "media", + "reverse_search", + "identity", + "grounding", + "structured", + "tools", + "knowledge" + ], + "description": "Read-only feature flags for a managed Detect Agent.", + "title": "DetectAgentCapabilities" + }, + "DetectAgent": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Stable Detect Agent identifier. Currently the same as `uuid` and `preset_id`." + }, + "uuid": { + "type": "string", + "description": "Stable identifier used by the run and history endpoints." + }, + "preset_id": { + "type": "string", + "description": "Resemble-managed Detect Agent identifier." + }, + "name": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ], + "description": "Verification workflow handled by the Detect Agent." + }, + "tier": { + "$ref": "#/components/schemas/DetectAgentTier", + "description": "Managed investigation depth. Informational and read-only." + }, + "memory_preview": { + "type": "string", + "description": "Read-only preview of patterns learned from previous investigations." + }, + "capabilities": { + "$ref": "#/components/schemas/DetectAgentCapabilities" + }, + "tagline": { + "type": [ + "string", + "null" + ], + "description": "Short description derived from the Detect Agent's managed instructions." + }, + "activated": { + "type": "boolean", + "description": "Whether this team has initialized backing state for the Detect Agent by running it." + }, + "created_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "Team backing-state creation time, or null before the first investigation." + }, + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "Team backing-state update time, or null before the first investigation." + } + }, + "required": [ + "id", + "uuid", + "preset_id", + "name", + "tier", + "memory_preview", + "capabilities", + "activated" + ], + "description": "A Resemble-managed Detect Agent available to the authenticated team.", + "title": "DetectAgent" + }, + "Detect Agents_listDetectAgents_Response_200": { + "type": "object", + "properties": { + "success": { + "type": "boolean" + }, + "items": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DetectAgent" + } + }, + "count": { + "type": "integer" + } + }, + "required": [ + "success", + "items", + "count" + ], + "title": "Detect Agents_listDetectAgents_Response_200" + }, + "DetectAgentRunSummaryStatus": { "type": "string", "enum": [ - "audio", - "video", - "all" + "running", + "completed", + "error" ], - "description": "Which detection modality was requested. `all` when not specified (the default). Only meaningful for video detects.", - "title": "DetectGetResponsesContentApplicationJsonSchemaItemsItemsModality" + "title": "DetectAgentRunSummaryStatus" }, - "DetectAudioMetrics": { + "DetectAgentRunResultVerdict": { + "type": "object", + "properties": { + "forced": { + "type": "boolean" + }, + "excerpt": { + "type": "string" + } + }, + "title": "DetectAgentRunResultVerdict" + }, + "DetectAgentRunResult": { "type": "object", "properties": { + "verdict": { + "oneOf": [ + { + "$ref": "#/components/schemas/DetectAgentRunResultVerdict" + }, + { + "type": "null" + } + ] + }, + "recommended_action": { + "type": [ + "string", + "null" + ] + }, + "confidence": { + "type": [ + "number", + "null" + ], + "format": "double" + }, "label": { - "type": "string", - "description": "Detection label (fake or real)" + "type": [ + "string", + "null" + ] }, "score": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Array of prediction scores per chunk" + "type": [ + "number", + "null" + ], + "format": "double" }, - "consistency": { - "type": "string", - "description": "Consistency metric across chunks" + "agent_ran": { + "type": [ + "boolean", + "null" + ] + } + }, + "description": "Compact result summary derived from the investigation transcript.", + "title": "DetectAgentRunResult" + }, + "DetectAgentRunSummaryInputs": { + "type": "object", + "properties": { + "query": { + "type": "string" }, - "aggregated_score": { + "url": { "type": "string", - "description": "Overall aggregated detection score" + "format": "uri" }, - "image": { + "filename": { + "type": "string" + }, + "check_urls": { + "type": "string" + } + }, + "description": "Submitted investigation inputs. Null-valued fields are omitted.", + "title": "DetectAgentRunSummaryInputs" + }, + "DetectAgentRunSummary": { + "type": "object", + "properties": { + "uuid": { "type": "string", - "description": "URL to visualization heatmap image (if visualize=true)" + "format": "uuid", + "description": "Investigation run identifier." + }, + "status": { + "$ref": "#/components/schemas/DetectAgentRunSummaryStatus" + }, + "result": { + "$ref": "#/components/schemas/DetectAgentRunResult" + }, + "inputs": { + "$ref": "#/components/schemas/DetectAgentRunSummaryInputs", + "description": "Submitted investigation inputs. Null-valued fields are omitted." + }, + "has_media": { + "type": "boolean", + "description": "Whether primary uploaded media is attached to this run." + }, + "created_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" + }, + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" } }, "required": [ - "label", - "score", - "consistency", - "aggregated_score" + "uuid", + "status", + "result", + "inputs", + "has_media" ], - "description": "Audio detection metrics (for audio and video media types)", - "title": "DetectAudioMetrics" + "title": "DetectAgentRunSummary" }, - "DetectImageMetricsChildrenItems": { + "Detect Agents_listDetectAgentInvestigationRuns_Response_200": { "type": "object", - "properties": {}, - "title": "DetectImageMetricsChildrenItems" + "properties": { + "success": { + "type": "boolean" + }, + "items": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DetectAgentRunSummary" + } + }, + "count": { + "type": "integer" + } + }, + "required": [ + "success", + "items", + "count" + ], + "title": "Detect Agents_listDetectAgentInvestigationRuns_Response_200" }, - "DetectImageMetrics": { + "DetectAgentRun": { "type": "object", "properties": { - "type": { + "uuid": { "type": "string", - "description": "Type of image analysis performed" + "format": "uuid", + "description": "Investigation run identifier." }, - "label": { - "type": "string", - "description": "Detection label (fake or real)" + "status": { + "$ref": "#/components/schemas/DetectAgentRunSummaryStatus" }, - "image": { - "type": "string", - "description": "URL to visualization image" + "result": { + "$ref": "#/components/schemas/DetectAgentRunResult" }, - "score": { - "type": "number", - "format": "double", - "description": "Detection confidence score" + "inputs": { + "$ref": "#/components/schemas/DetectAgentRunSummaryInputs", + "description": "Submitted investigation inputs. Null-valued fields are omitted." }, - "children": { + "has_media": { + "type": "boolean", + "description": "Whether primary uploaded media is attached to this run." + }, + "created_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" + }, + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" + }, + "transcript": { "type": "array", "items": { - "$ref": "#/components/schemas/DetectImageMetricsChildrenItems" + "type": "object", + "additionalProperties": { + "description": "Any type" + } + }, + "description": "Public investigation events. Internal cost events are omitted." + }, + "config_snapshot": { + "type": "object", + "additionalProperties": { + "description": "Any type" }, - "description": "Nested analysis results (structure varies by pipeline)" - } - }, - "required": [ - "type", - "label", - "image", - "score", - "children" - ], - "description": "Image detection metrics (for image media type)", - "title": "DetectImageMetrics" - }, - "DetectVideoMetricsChildrenItemsChildrenItemsChildrenItems": { - "type": "object", - "properties": { - "type": { - "type": "string" + "description": "Exact managed configuration used for the investigation." }, - "conclusion": { + "memory_before": { "type": "string" }, - "score": { - "type": "number", - "format": "double" + "memory_after": { + "type": "string" }, - "certainty": { - "type": "number", - "format": "double" + "error": { + "type": [ + "string", + "null" + ] }, - "certainty (%)": { - "type": "string" + "media_url": { + "type": [ + "string", + "null" + ], + "description": "Relative URL for uploaded primary media, or null when the run used a public URL." } }, "required": [ - "type", - "conclusion", - "score", - "certainty", - "certainty (%)" + "uuid", + "status", + "result", + "inputs", + "has_media" ], - "title": "DetectVideoMetricsChildrenItemsChildrenItemsChildrenItems" + "title": "DetectAgentRun" }, - "DetectVideoMetricsChildrenItemsChildrenItems": { + "Detect Agents_getDetectAgentInvestigationRun_Response_200": { "type": "object", "properties": { - "type": { - "type": "string" - }, - "conclusion": { - "type": "string" - }, - "score": { - "type": "number", - "format": "double" - }, - "certainty": { - "type": "number", - "format": "double" - }, - "certainty (%)": { - "type": "string" - }, - "timestamp": { - "type": "number", - "format": "double", - "description": "Timestamp in seconds" + "success": { + "type": "boolean" }, - "children": { - "type": "array", - "items": { - "$ref": "#/components/schemas/DetectVideoMetricsChildrenItemsChildrenItemsChildrenItems" - }, - "description": "Segment-level detection results" + "item": { + "$ref": "#/components/schemas/DetectAgentRun" } }, "required": [ - "type", - "conclusion", - "score", - "certainty", - "certainty (%)", - "timestamp", - "children" + "success", + "item" ], - "title": "DetectVideoMetricsChildrenItemsChildrenItems" + "title": "Detect Agents_getDetectAgentInvestigationRun_Response_200" }, - "DetectVideoMetricsChildrenItems": { + "IntelligencePostRequestBodyContentApplicationJsonSchemaMediaType": { + "type": "string", + "enum": [ + "audio", + "video", + "image" + ], + "description": "Explicit media type (auto-detected if not provided)", + "title": "IntelligencePostRequestBodyContentApplicationJsonSchemaMediaType" + }, + "IntelligencePostResponsesContentApplicationJsonSchemaItemMediaType": { + "type": "string", + "enum": [ + "audio", + "video", + "image" + ], + "description": "Type of media analyzed", + "title": "IntelligencePostResponsesContentApplicationJsonSchemaItemMediaType" + }, + "IntelligencePostResponsesContentApplicationJsonSchemaItem": { "type": "object", "properties": { - "type": { - "type": "string" - }, - "conclusion": { + "uuid": { "type": "string" }, - "score": { - "type": "number", - "format": "double" - }, - "certainty": { - "type": "number", - "format": "double" + "created_at": { + "type": "string", + "format": "date-time" }, - "certainty (%)": { - "type": "string" + "detect_uuid": { + "type": "string", + "description": "UUID of the associated detect object" }, - "children": { - "type": "array", - "items": { - "$ref": "#/components/schemas/DetectVideoMetricsChildrenItemsChildrenItems" - }, - "description": "Frame-level detection results" + "media_type": { + "$ref": "#/components/schemas/IntelligencePostResponsesContentApplicationJsonSchemaItemMediaType", + "description": "Type of media analyzed" } }, - "required": [ - "type", - "conclusion", - "score", - "certainty", - "certainty (%)", - "children" - ], - "title": "DetectVideoMetricsChildrenItems" + "title": "IntelligencePostResponsesContentApplicationJsonSchemaItem" }, - "DetectVideoMetrics": { + "Intelligence_runIntelligence_Response_200": { "type": "object", "properties": { - "label": { - "type": "string", - "description": "Overall video detection label" - }, - "score": { - "type": "number", - "format": "double", - "description": "Overall detection score" - }, - "certainty": { - "type": "number", - "format": "double", - "description": "Overall certainty score" - }, - "treeview": { - "type": "string", - "description": "Optional tree visualization data" + "success": { + "type": "boolean" }, - "children": { - "type": "array", - "items": { - "$ref": "#/components/schemas/DetectVideoMetricsChildrenItems" - }, - "description": "Hierarchical detection results across frames" + "item": { + "$ref": "#/components/schemas/IntelligencePostResponsesContentApplicationJsonSchemaItem" } }, - "required": [ - "label", - "score", - "certainty", - "children" - ], - "description": "Video detection metrics (for video media type)", - "title": "DetectVideoMetrics" + "title": "Intelligence_runIntelligence_Response_200" }, - "DetectC2PaManifestValidationState": { + "IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionFraudType": { "type": "string", "enum": [ - "Valid", - "NotPresent", - "Unavailable" + "none", + "vishing", + "impersonation", + "romance_scam", + "tech_support_scam", + "financial_fraud", + "extortion", + "political_manipulation", + "synthetic_media_fraud", + "insurance_fraud", + "employment_fraud", + "other" ], - "description": "Verification state. `NotPresent` means no embedded Content Credentials were found; `Unavailable` means verification could not complete.", - "title": "DetectC2PaManifestValidationState" + "title": "IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionFraudType" }, - "DetectC2paManifest": { + "IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionFraud": { "type": "object", "properties": { - "validation_state": { - "$ref": "#/components/schemas/DetectC2PaManifestValidationState", - "description": "Verification state. `NotPresent` means no embedded Content Credentials were found; `Unavailable` means verification could not complete." - }, - "active_manifest": { - "type": [ - "string", - "null" - ], - "description": "Active C2PA manifest identifier when credentials are present" - }, - "manifests": { - "type": [ - "object", - "null" - ], - "additionalProperties": { - "description": "Any type" - }, - "description": "Raw manifest details returned by C2PA tooling" + "type": { + "$ref": "#/components/schemas/IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionFraudType" }, - "validation_results": { - "type": [ - "object", - "null" - ], - "additionalProperties": { - "description": "Any type" - }, - "description": "Detailed validation results returned by C2PA tooling" + "confidence": { + "type": "number", + "format": "double" }, - "message": { - "type": [ - "string", - "null" - ], - "description": "Generic message when verification is unavailable" + "reasoning": { + "type": "string" } }, - "description": "Content Credentials (C2PA) verification result for audio, image, and video media. Returned when verification has completed. A fallback verification failure returns `validation_state: Unavailable` and does not fail the detection.", - "title": "DetectC2paManifest" + "title": "IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionFraud" }, - "DetectGetResponsesContentApplicationJsonSchemaItemsItemsAudioSourceTracing": { + "IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionLivenessAssessment": { + "type": "string", + "enum": [ + "real_person", + "not_real_person", + "inconclusive" + ], + "title": "IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionLivenessAssessment" + }, + "IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionLiveness": { "type": "object", "properties": { - "label": { - "type": "string", - "description": "Identified source (e.g., resemble_ai, elevenlabs) or \"real\" if audio is not synthetic" + "assessment": { + "$ref": "#/components/schemas/IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionLivenessAssessment" }, - "error_message": { - "type": [ - "string", - "null" - ] + "confidence": { + "type": "number", + "format": "double" + }, + "indicators": { + "type": "string" } }, - "description": "Source tracing results (only returned if audio is labeled fake)", - "title": "DetectGetResponsesContentApplicationJsonSchemaItemsItemsAudioSourceTracing" - }, - "DetectGetResponsesContentApplicationJsonSchemaItemsItemsIntelligence": { - "type": "object", - "properties": {}, - "title": "DetectGetResponsesContentApplicationJsonSchemaItemsItemsIntelligence" + "title": "IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionLiveness" }, - "DetectGetResponsesContentApplicationJsonSchemaItemsItemsExtraParams": { + "IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionDigitallyAltered": { "type": "object", - "properties": {}, - "title": "DetectGetResponsesContentApplicationJsonSchemaItemsItemsExtraParams" + "properties": { + "detected": { + "type": "boolean" + }, + "confidence": { + "type": "number", + "format": "double" + }, + "alterations": { + "type": "string" + } + }, + "title": "IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionDigitallyAltered" }, - "DetectGetResponsesContentApplicationJsonSchemaItemsItems": { + "IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescription": { "type": "object", "properties": { - "uuid": { + "speaker_info": { "type": "string" }, - "media_type": { - "$ref": "#/components/schemas/DetectGetResponsesContentApplicationJsonSchemaItemsItemsMediaType" - }, - "status": { - "$ref": "#/components/schemas/DetectGetResponsesContentApplicationJsonSchemaItemsItemsStatus" - }, - "modality": { - "$ref": "#/components/schemas/DetectGetResponsesContentApplicationJsonSchemaItemsItemsModality", - "description": "Which detection modality was requested. `all` when not specified (the default). Only meaningful for video detects." - }, - "face_only": { - "type": "boolean", - "description": "Effective face-only setting for this detect. `true` only for video inputs that\ninclude visual analysis; `false` for audio, image, and audio-only video detects.\n" - }, - "metrics": { - "$ref": "#/components/schemas/DetectAudioMetrics" - }, - "image_metrics": { - "$ref": "#/components/schemas/DetectImageMetrics" - }, - "video_metrics": { - "$ref": "#/components/schemas/DetectVideoMetrics" - }, - "c2pa_manifest": { - "$ref": "#/components/schemas/DetectC2paManifest" + "language": { + "type": "string" }, - "audio_source_tracing": { - "oneOf": [ - { - "$ref": "#/components/schemas/DetectGetResponsesContentApplicationJsonSchemaItemsItemsAudioSourceTracing" - }, - { - "type": "null" - } - ], - "description": "Source tracing results (only returned if audio is labeled fake)" + "dialect": { + "type": "string" }, - "intelligence": { - "oneOf": [ - { - "$ref": "#/components/schemas/DetectGetResponsesContentApplicationJsonSchemaItemsItemsIntelligence" - }, - { - "type": "null" - } - ] + "emotion": { + "type": "string" }, - "url": { - "type": [ - "string", - "null" - ], - "description": "URL to the media file. Null when Zero Retention Mode is enabled." + "speaking_style": { + "type": "string" }, - "audio_url": { - "type": [ - "string", - "null" - ], - "description": "Alias of url. Null when Zero Retention Mode is enabled." + "context": { + "type": "string" }, - "filename": { - "type": "string", - "description": "Original filename, or tokenized (redacted_.) when Zero Retention Mode is enabled" + "message": { + "type": "string" }, - "duration": { - "type": "number", - "format": "double" + "abnormalities": { + "type": "string" }, - "zero_retention_mode": { - "type": "boolean", - "description": "Whether Zero Retention Mode was enabled for this detect" + "transcription": { + "type": "string" }, - "file_deleted_at": { + "translation": { "type": [ "string", "null" - ], - "format": "date-time", - "description": "ISO 8601 timestamp of when the file was purged, or null if not yet deleted" - }, - "visualize": { - "type": "boolean" + ] }, - "audio_source_tracing_enabled": { - "type": "boolean" + "misinformation": { + "type": "string" }, - "use_ood_detector": { - "type": "boolean" + "fraud": { + "$ref": "#/components/schemas/IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionFraud" }, - "pipeline": { - "type": [ - "string", - "null" - ], - "description": "Legacy field. May be present on older image/video detects. Ignored on create for new detections." + "liveness": { + "$ref": "#/components/schemas/IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionLiveness" }, - "extra_params": { - "$ref": "#/components/schemas/DetectGetResponsesContentApplicationJsonSchemaItemsItemsExtraParams" + "digitally_altered": { + "$ref": "#/components/schemas/IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionDigitallyAltered" + } + }, + "description": "Structured intelligence analysis", + "title": "IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescription" + }, + "IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsMediaType": { + "type": "string", + "enum": [ + "audio", + "video", + "image" + ], + "description": "Type of media analyzed", + "title": "IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsMediaType" + }, + "IntelligencesGetResponsesContentApplicationJsonSchemaItemsItems": { + "type": "object", + "properties": { + "uuid": { + "type": "string" }, - "error_message": { - "type": [ - "string", - "null" - ] + "description": { + "$ref": "#/components/schemas/IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescription", + "description": "Structured intelligence analysis" }, "created_at": { "type": "string", "format": "date-time" }, - "updated_at": { + "detect_uuid": { "type": "string", - "format": "date-time" + "description": "UUID of the associated detect object" + }, + "media_type": { + "$ref": "#/components/schemas/IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsMediaType", + "description": "Type of media analyzed" } }, - "title": "DetectGetResponsesContentApplicationJsonSchemaItemsItems" + "title": "IntelligencesGetResponsesContentApplicationJsonSchemaItemsItems" }, - "Deepfake Detection_listDetections_Response_200": { + "Intelligence_listIntelligences_Response_200": { "type": "object", "properties": { "success": { @@ -5894,43 +8671,13 @@ "items": { "type": "array", "items": { - "$ref": "#/components/schemas/DetectGetResponsesContentApplicationJsonSchemaItemsItems" + "$ref": "#/components/schemas/IntelligencesGetResponsesContentApplicationJsonSchemaItemsItems" } } }, - "title": "Deepfake Detection_listDetections_Response_200" - }, - "DetectPostRequestBodyContentMultipartFormDataSchemaModality": { - "type": "string", - "enum": [ - "audio", - "video", - "all" - ], - "default": "all", - "description": "Video only. Selects which detection components run for a video file:\n`audio` (audio track only), `video` (visual frames only), or `all` (both — the default).\nIgnored for audio and image inputs. Invalid values are rejected with HTTP 400.\n", - "title": "DetectPostRequestBodyContentMultipartFormDataSchemaModality" - }, - "DetectPostResponsesContentApplicationJsonSchemaItemModality": { - "type": "string", - "enum": [ - "audio", - "video", - "all" - ], - "description": "Which detection modality was requested. `all` when not specified.\nFor a single-modality video detect, the skipped component's metrics are absent\n(`metrics` for audio-only-skipped, `video_metrics` for video-only-skipped), and the\ndetect still reaches `completed` once the requested modality(ies) finish.\n", - "title": "DetectPostResponsesContentApplicationJsonSchemaItemModality" - }, - "DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceStatus": { - "type": "string", - "enum": [ - "processing", - "completed", - "failed" - ], - "title": "DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceStatus" + "title": "Intelligence_listIntelligences_Response_200" }, - "DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1FraudType": { + "IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionFraudType": { "type": "string", "enum": [ "none", @@ -5946,13 +8693,13 @@ "employment_fraud", "other" ], - "title": "DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1FraudType" + "title": "IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionFraudType" }, - "DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1Fraud": { + "IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionFraud": { "type": "object", "properties": { "type": { - "$ref": "#/components/schemas/DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1FraudType" + "$ref": "#/components/schemas/IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionFraudType" }, "confidence": { "type": "number", @@ -5962,22 +8709,22 @@ "type": "string" } }, - "title": "DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1Fraud" + "title": "IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionFraud" }, - "DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1LivenessAssessment": { + "IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionLivenessAssessment": { "type": "string", "enum": [ "real_person", "not_real_person", "inconclusive" ], - "title": "DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1LivenessAssessment" + "title": "IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionLivenessAssessment" }, - "DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1Liveness": { + "IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionLiveness": { "type": "object", "properties": { "assessment": { - "$ref": "#/components/schemas/DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1LivenessAssessment" + "$ref": "#/components/schemas/IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionLivenessAssessment" }, "confidence": { "type": "number", @@ -5987,9 +8734,9 @@ "type": "string" } }, - "title": "DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1Liveness" + "title": "IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionLiveness" }, - "DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1DigitallyAltered": { + "IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionDigitallyAltered": { "type": "object", "properties": { "detected": { @@ -6003,9 +8750,9 @@ "type": "string" } }, - "title": "DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1DigitallyAltered" + "title": "IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionDigitallyAltered" }, - "DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescription1": { + "IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescription": { "type": "object", "properties": { "speaker_info": { @@ -6045,1971 +8792,2211 @@ "type": "string" }, "fraud": { - "$ref": "#/components/schemas/DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1Fraud" + "$ref": "#/components/schemas/IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionFraud" }, "liveness": { - "$ref": "#/components/schemas/DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1Liveness" + "$ref": "#/components/schemas/IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionLiveness" }, "digitally_altered": { - "$ref": "#/components/schemas/DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescriptionOneOf1DigitallyAltered" + "$ref": "#/components/schemas/IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionDigitallyAltered" } }, - "title": "DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescription1" + "description": "Structured intelligence analysis", + "title": "IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescription" }, - "DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescription": { - "oneOf": [ - { - "type": "string" - }, - { - "$ref": "#/components/schemas/DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescription1" - } + "IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemMediaType": { + "type": "string", + "enum": [ + "audio", + "video", + "image" ], - "title": "DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescription" + "description": "Type of media analyzed", + "title": "IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemMediaType" }, - "DetectPostResponsesContentApplicationJsonSchemaItemIntelligence": { + "IntelligencesUuidGetResponsesContentApplicationJsonSchemaItem": { "type": "object", "properties": { "uuid": { "type": "string" }, - "status": { - "$ref": "#/components/schemas/DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceStatus" - }, - "error_message": { - "type": [ - "string", - "null" - ] - }, "description": { - "$ref": "#/components/schemas/DetectPostResponsesContentApplicationJsonSchemaItemIntelligenceDescription" + "$ref": "#/components/schemas/IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescription", + "description": "Structured intelligence analysis" }, "created_at": { "type": "string", "format": "date-time" }, "detect_uuid": { - "type": "string" + "type": "string", + "description": "UUID of the associated detect object" + }, + "media_type": { + "$ref": "#/components/schemas/IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemMediaType", + "description": "Type of media analyzed" } }, - "description": "Default Intelligence result when requested", - "title": "DetectPostResponsesContentApplicationJsonSchemaItemIntelligence" + "title": "IntelligencesUuidGetResponsesContentApplicationJsonSchemaItem" }, - "DetectPostResponsesContentApplicationJsonSchemaItem": { + "Intelligence_getIntelligence_Response_200": { + "type": "object", + "properties": { + "success": { + "type": "boolean" + }, + "item": { + "$ref": "#/components/schemas/IntelligencesUuidGetResponsesContentApplicationJsonSchemaItem" + } + }, + "title": "Intelligence_getIntelligence_Response_200" + }, + "DetectsUuidIntelligencePostResponsesContentApplicationJsonSchemaItemStatus": { + "type": "string", + "enum": [ + "pending", + "processing", + "completed", + "failed" + ], + "description": "Current status of the question", + "title": "DetectsUuidIntelligencePostResponsesContentApplicationJsonSchemaItemStatus" + }, + "DetectsUuidIntelligencePostResponsesContentApplicationJsonSchemaItem": { "type": "object", "properties": { "uuid": { - "type": "string" + "type": "string", + "description": "UUID of the question" }, - "status": { - "type": "string" + "detect_uuid": { + "type": "string", + "description": "UUID of the associated detection report" }, - "zero_retention_mode": { - "type": "boolean", - "description": "Whether Zero Retention Mode is enabled for this detect" + "query": { + "type": "string", + "description": "The submitted question" }, - "file_deleted_at": { + "answer": { "type": [ "string", "null" ], - "format": "date-time", - "description": "ISO 8601 timestamp of when the file was purged, or null if not yet deleted" + "description": "The generated answer (null until completed)" }, - "url": { - "type": [ - "string", - "null" - ], - "description": "URL to the media file. Null when Zero Retention Mode is enabled." + "status": { + "$ref": "#/components/schemas/DetectsUuidIntelligencePostResponsesContentApplicationJsonSchemaItemStatus", + "description": "Current status of the question" }, - "audio_url": { + "error_message": { "type": [ "string", "null" ], - "description": "Alias of url. Null when Zero Retention Mode is enabled." + "description": "Error details when status is failed" }, - "filename": { + "created_at": { "type": "string", - "description": "Original filename, or tokenized (redacted_.) when Zero Retention Mode is enabled" - }, - "modality": { - "$ref": "#/components/schemas/DetectPostResponsesContentApplicationJsonSchemaItemModality", - "description": "Which detection modality was requested. `all` when not specified.\nFor a single-modality video detect, the skipped component's metrics are absent\n(`metrics` for audio-only-skipped, `video_metrics` for video-only-skipped), and the\ndetect still reaches `completed` once the requested modality(ies) finish.\n" - }, - "face_only": { - "type": "boolean", - "description": "Effective face-only setting. `true` only for video inputs that include visual\nanalysis; `false` for audio, image, and audio-only video detects.\n" - }, - "intelligence": { - "oneOf": [ - { - "$ref": "#/components/schemas/DetectPostResponsesContentApplicationJsonSchemaItemIntelligence" - }, - { - "type": "null" - } - ], - "description": "Default Intelligence result when requested" + "format": "date-time" }, - "c2pa_manifest": { - "$ref": "#/components/schemas/DetectC2paManifest" + "updated_at": { + "type": "string", + "format": "date-time" } }, - "title": "DetectPostResponsesContentApplicationJsonSchemaItem" + "title": "DetectsUuidIntelligencePostResponsesContentApplicationJsonSchemaItem" }, - "Deepfake Detection_createDetection_Response_200": { + "Detect Intelligence_askDetectIntelligenceQuestion_Response_202": { "type": "object", "properties": { "success": { "type": "boolean" }, "item": { - "$ref": "#/components/schemas/DetectPostResponsesContentApplicationJsonSchemaItem" + "$ref": "#/components/schemas/DetectsUuidIntelligencePostResponsesContentApplicationJsonSchemaItem" } }, - "title": "Deepfake Detection_createDetection_Response_200" - }, - "DetectUuidGetResponsesContentApplicationJsonSchemaItemMediaType": { - "type": "string", - "enum": [ - "audio", - "video", - "image" - ], - "title": "DetectUuidGetResponsesContentApplicationJsonSchemaItemMediaType" + "title": "Detect Intelligence_askDetectIntelligenceQuestion_Response_202" }, - "DetectUuidGetResponsesContentApplicationJsonSchemaItemStatus": { + "DetectsUuidIntelligenceQuestionUuidGetResponsesContentApplicationJsonSchemaItemStatus": { "type": "string", "enum": [ + "pending", "processing", "completed", "failed" ], - "description": "Status of the Deepfake Detection job only. A completed Detect has verdict and metrics available, but its Intelligence results may still be processing.", - "title": "DetectUuidGetResponsesContentApplicationJsonSchemaItemStatus" + "description": "Current status of the question", + "title": "DetectsUuidIntelligenceQuestionUuidGetResponsesContentApplicationJsonSchemaItemStatus" }, - "DetectUuidGetResponsesContentApplicationJsonSchemaItemAudioSourceTracing": { + "DetectsUuidIntelligenceQuestionUuidGetResponsesContentApplicationJsonSchemaItem": { "type": "object", "properties": { - "label": { + "uuid": { "type": "string", - "description": "Identified source (e.g., resemble_ai, elevenlabs) or \"real\" if audio is not synthetic" + "description": "UUID of the question" }, - "error_message": { + "detect_uuid": { + "type": "string", + "description": "UUID of the associated detection report" + }, + "query": { + "type": "string", + "description": "The submitted question" + }, + "answer": { "type": [ "string", "null" - ] - } - }, - "description": "Source tracing results (only returned if audio is labeled fake)", - "title": "DetectUuidGetResponsesContentApplicationJsonSchemaItemAudioSourceTracing" - }, - "DetectIntelligenceResultStatus": { - "type": "string", - "enum": [ - "processing", - "completed", - "failed" - ], - "description": "Status of this Intelligence result, independent of the associated Detect job status.", - "title": "DetectIntelligenceResultStatus" - }, - "DetectIntelligenceResultDescriptionOneOf1FraudType": { - "type": "string", - "enum": [ - "none", - "vishing", - "impersonation", - "romance_scam", - "tech_support_scam", - "financial_fraud", - "extortion", - "political_manipulation", - "synthetic_media_fraud", - "insurance_fraud", - "employment_fraud", - "other" - ], - "title": "DetectIntelligenceResultDescriptionOneOf1FraudType" - }, - "DetectIntelligenceResultDescriptionOneOf1Fraud": { - "type": "object", - "properties": { - "type": { - "$ref": "#/components/schemas/DetectIntelligenceResultDescriptionOneOf1FraudType" + ], + "description": "The generated answer (null until completed)" }, - "confidence": { - "type": "number", - "format": "double" + "status": { + "$ref": "#/components/schemas/DetectsUuidIntelligenceQuestionUuidGetResponsesContentApplicationJsonSchemaItemStatus", + "description": "Current status of the question" }, - "reasoning": { - "type": "string" + "error_message": { + "type": [ + "string", + "null" + ], + "description": "Error details when status is failed" + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" } }, - "title": "DetectIntelligenceResultDescriptionOneOf1Fraud" - }, - "DetectIntelligenceResultDescriptionOneOf1LivenessAssessment": { - "type": "string", - "enum": [ - "real_person", - "not_real_person", - "inconclusive" - ], - "title": "DetectIntelligenceResultDescriptionOneOf1LivenessAssessment" + "title": "DetectsUuidIntelligenceQuestionUuidGetResponsesContentApplicationJsonSchemaItem" }, - "DetectIntelligenceResultDescriptionOneOf1Liveness": { + "Detect Intelligence_getDetectIntelligenceQuestion_Response_200": { "type": "object", "properties": { - "assessment": { - "$ref": "#/components/schemas/DetectIntelligenceResultDescriptionOneOf1LivenessAssessment" - }, - "confidence": { - "type": "number", - "format": "double" + "success": { + "type": "boolean" }, - "indicators": { - "type": "string" + "item": { + "$ref": "#/components/schemas/DetectsUuidIntelligenceQuestionUuidGetResponsesContentApplicationJsonSchemaItem" } }, - "title": "DetectIntelligenceResultDescriptionOneOf1Liveness" + "title": "Detect Intelligence_getDetectIntelligenceQuestion_Response_200" }, - "DetectIntelligenceResultDescriptionOneOf1DigitallyAltered": { + "AudioSourceTracingsGetResponsesContentApplicationJsonSchemaItemsItemsResults": { "type": "object", "properties": { - "detected": { - "type": "boolean" - }, - "confidence": { - "type": "number", - "format": "double" + "label": { + "type": "string", + "description": "Identified source (e.g., resemble_ai, elevenlabs) or \"real\" if audio is not synthetic" }, - "alterations": { - "type": "string" + "error_message": { + "type": [ + "string", + "null" + ] } }, - "title": "DetectIntelligenceResultDescriptionOneOf1DigitallyAltered" + "title": "AudioSourceTracingsGetResponsesContentApplicationJsonSchemaItemsItemsResults" }, - "DetectIntelligenceResultDescription1": { + "AudioSourceTracingsGetResponsesContentApplicationJsonSchemaItemsItems": { "type": "object", "properties": { - "speaker_info": { + "uuid": { "type": "string" }, - "language": { - "type": "string" + "results": { + "$ref": "#/components/schemas/AudioSourceTracingsGetResponsesContentApplicationJsonSchemaItemsItemsResults" }, - "dialect": { - "type": "string" + "created_at": { + "type": "string", + "format": "date-time" }, - "emotion": { - "type": "string" + "detect_uuid": { + "type": "string", + "description": "UUID of the associated detect object" + } + }, + "title": "AudioSourceTracingsGetResponsesContentApplicationJsonSchemaItemsItems" + }, + "Audio Source Tracing_listAudioSourceTracings_Response_200": { + "type": "object", + "properties": { + "success": { + "type": "boolean" }, - "speaking_style": { - "type": "string" + "page": { + "type": "integer" }, - "context": { - "type": "string" + "num_pages": { + "type": "integer" }, - "message": { - "type": "string" + "page_size": { + "type": "integer" }, - "abnormalities": { - "type": "string" + "total_count": { + "type": "integer" }, - "transcription": { - "type": "string" + "items": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AudioSourceTracingsGetResponsesContentApplicationJsonSchemaItemsItems" + } + } + }, + "title": "Audio Source Tracing_listAudioSourceTracings_Response_200" + }, + "AudioSourceTracingsUuidGetResponsesContentApplicationJsonSchemaItemResults": { + "type": "object", + "properties": { + "label": { + "type": "string", + "description": "Identified source (e.g., resemble_ai, elevenlabs) or \"real\" if audio is not synthetic" }, - "translation": { + "error_message": { "type": [ "string", "null" ] - }, - "misinformation": { - "type": "string" - }, - "fraud": { - "$ref": "#/components/schemas/DetectIntelligenceResultDescriptionOneOf1Fraud" - }, - "liveness": { - "$ref": "#/components/schemas/DetectIntelligenceResultDescriptionOneOf1Liveness" - }, - "digitally_altered": { - "$ref": "#/components/schemas/DetectIntelligenceResultDescriptionOneOf1DigitallyAltered" } }, - "title": "DetectIntelligenceResultDescription1" - }, - "DetectIntelligenceResultDescription": { - "oneOf": [ - { - "type": "string" - }, - { - "$ref": "#/components/schemas/DetectIntelligenceResultDescription1" - } - ], - "title": "DetectIntelligenceResultDescription" + "title": "AudioSourceTracingsUuidGetResponsesContentApplicationJsonSchemaItemResults" }, - "DetectIntelligenceResult": { + "AudioSourceTracingsUuidGetResponsesContentApplicationJsonSchemaItem": { "type": "object", "properties": { "uuid": { "type": "string" }, - "status": { - "$ref": "#/components/schemas/DetectIntelligenceResultStatus", - "description": "Status of this Intelligence result, independent of the associated Detect job status." - }, - "error_message": { - "type": [ - "string", - "null" - ] - }, - "description": { - "oneOf": [ - { - "$ref": "#/components/schemas/DetectIntelligenceResultDescription" - }, - { - "type": "null" - } - ] + "results": { + "$ref": "#/components/schemas/AudioSourceTracingsUuidGetResponsesContentApplicationJsonSchemaItemResults" }, "created_at": { "type": "string", "format": "date-time" }, "detect_uuid": { - "type": "string" + "type": "string", + "description": "UUID of the associated detect object" } }, - "description": "One Detect Intelligence expert result", - "title": "DetectIntelligenceResult" - }, - "DetectUuidGetResponsesContentApplicationJsonSchemaItemIntelligence1": { - "type": "array", - "items": { - "$ref": "#/components/schemas/DetectIntelligenceResult" - }, - "title": "DetectUuidGetResponsesContentApplicationJsonSchemaItemIntelligence1" + "title": "AudioSourceTracingsUuidGetResponsesContentApplicationJsonSchemaItem" }, - "DetectUuidGetResponsesContentApplicationJsonSchemaItemIntelligence": { - "oneOf": [ - { - "$ref": "#/components/schemas/DetectIntelligenceResult" + "Audio Source Tracing_getAudioSourceTracing_Response_200": { + "type": "object", + "properties": { + "success": { + "type": "boolean" }, - { - "$ref": "#/components/schemas/DetectUuidGetResponsesContentApplicationJsonSchemaItemIntelligence1" + "item": { + "$ref": "#/components/schemas/AudioSourceTracingsUuidGetResponsesContentApplicationJsonSchemaItem" } - ], - "description": "With experts omitted or false, one completed Intelligence result when available; otherwise, the current processing or failed result. With experts=true, all successfully completed results as an array, or an empty array when none have completed successfully.", - "title": "DetectUuidGetResponsesContentApplicationJsonSchemaItemIntelligence" + }, + "title": "Audio Source Tracing_getAudioSourceTracing_Response_200" }, - "DetectUuidGetResponsesContentApplicationJsonSchemaItemModality": { + "IdentitySummaryVisibility": { "type": "string", "enum": [ - "audio", - "video", - "all" + "team", + "global" ], - "description": "Which detection modality was requested for this detect. `all` when not specified\n(the default). For a single-modality video detect, the skipped component's metrics\nare absent (`metrics` for audio-only-skipped, `video_metrics` for video-only-skipped).\n", - "title": "DetectUuidGetResponsesContentApplicationJsonSchemaItemModality" + "title": "IdentitySummaryVisibility" }, - "DetectUuidGetResponsesContentApplicationJsonSchemaItem": { - "type": "object", - "properties": { - "uuid": { - "type": "string" - }, - "media_type": { - "$ref": "#/components/schemas/DetectUuidGetResponsesContentApplicationJsonSchemaItemMediaType" - }, - "status": { - "$ref": "#/components/schemas/DetectUuidGetResponsesContentApplicationJsonSchemaItemStatus", - "description": "Status of the Deepfake Detection job only. A completed Detect has verdict and metrics available, but its Intelligence results may still be processing." - }, - "metrics": { - "$ref": "#/components/schemas/DetectAudioMetrics" - }, - "image_metrics": { - "$ref": "#/components/schemas/DetectImageMetrics" - }, - "video_metrics": { - "$ref": "#/components/schemas/DetectVideoMetrics" - }, - "c2pa_manifest": { - "$ref": "#/components/schemas/DetectC2paManifest" - }, - "audio_source_tracing": { - "oneOf": [ - { - "$ref": "#/components/schemas/DetectUuidGetResponsesContentApplicationJsonSchemaItemAudioSourceTracing" - }, - { - "type": "null" - } - ], - "description": "Source tracing results (only returned if audio is labeled fake)" - }, - "intelligence": { - "oneOf": [ - { - "$ref": "#/components/schemas/DetectUuidGetResponsesContentApplicationJsonSchemaItemIntelligence" - }, - { - "type": "null" - } - ], - "description": "With experts omitted or false, one completed Intelligence result when available; otherwise, the current processing or failed result. With experts=true, all successfully completed results as an array, or an empty array when none have completed successfully." - }, - "modality": { - "$ref": "#/components/schemas/DetectUuidGetResponsesContentApplicationJsonSchemaItemModality", - "description": "Which detection modality was requested for this detect. `all` when not specified\n(the default). For a single-modality video detect, the skipped component's metrics\nare absent (`metrics` for audio-only-skipped, `video_metrics` for video-only-skipped).\n" + "IdentitySummaryIdentityType": { + "type": "string", + "enum": [ + "person", + "brand" + ], + "title": "IdentitySummaryIdentityType" + }, + "IdentitySummary": { + "type": "object", + "properties": { + "uuid": { + "type": "string" }, - "face_only": { - "type": "boolean", - "description": "Effective face-only setting for this detect. `true` only for video inputs that\ninclude visual analysis; `false` for audio, image, and audio-only video detects.\n" + "name": { + "type": "string" }, - "url": { - "type": [ - "string", - "null" - ], - "description": "URL to the media file. Null when Zero Retention Mode is enabled." + "created_at": { + "type": "string", + "format": "date-time" }, "audio_url": { "type": [ "string", "null" ], - "description": "Alias of url. Null when Zero Retention Mode is enabled." - }, - "filename": { - "type": "string", - "description": "Original filename, or tokenized (redacted_.) when Zero Retention Mode is enabled" + "format": "uri", + "description": "URL of the first voice sample, if any" }, - "duration": { - "type": "number", - "format": "double" + "visibility": { + "$ref": "#/components/schemas/IdentitySummaryVisibility" }, - "zero_retention_mode": { - "type": "boolean", - "description": "Whether Zero Retention Mode is enabled for this detect" + "identity_type": { + "$ref": "#/components/schemas/IdentitySummaryIdentityType" }, - "file_deleted_at": { + "notes": { "type": [ "string", "null" - ], - "format": "date-time", - "description": "ISO 8601 timestamp of when the file was purged, or null if not yet deleted" + ] }, - "created_at": { - "type": "string", - "format": "date-time" + "voice_profile_id": { + "type": [ + "string", + "null" + ] }, "updated_at": { "type": "string", "format": "date-time" + }, + "project_count": { + "type": "integer" } }, - "title": "DetectUuidGetResponsesContentApplicationJsonSchemaItem" + "description": "Identity summary returned by the list and simple-create endpoints", + "title": "IdentitySummary" }, - "Deepfake Detection_getDetection_Response_200": { + "Identity_listIdentities_Response_200": { "type": "object", "properties": { "success": { "type": "boolean" }, - "item": { - "$ref": "#/components/schemas/DetectUuidGetResponsesContentApplicationJsonSchemaItem" + "page": { + "type": "integer" + }, + "num_pages": { + "type": "integer" + }, + "page_size": { + "type": "integer" + }, + "total_count": { + "type": "integer" + }, + "items": { + "type": "array", + "items": { + "$ref": "#/components/schemas/IdentitySummary" + } } }, - "title": "Deepfake Detection_getDetection_Response_200" + "title": "Identity_listIdentities_Response_200" }, - "Error": { + "IdentityCreateIdentityRequest0": { "type": "object", "properties": { - "success": { - "type": "boolean" - }, - "error": { - "type": "string" + "name": { + "type": "string", + "description": "Speaker name/identifier" }, - "errors": { - "type": "object", - "additionalProperties": { - "type": "array", - "items": { - "type": "string" - } - } + "url": { + "type": "string", + "format": "uri", + "description": "URL to an audio sample (one of url, audio, signed_id is required)" }, - "message": { - "type": "string" + "signed_id": { + "type": "string", + "description": "Signed ID from a secure upload" } }, - "title": "Error" + "required": [ + "name" + ], + "title": "IdentityCreateIdentityRequest0" }, - "DetectBatchStatus": { + "IdentityPostRequestBodyContentApplicationJsonSchemaOneOf1IdentityIdentityType": { "type": "string", "enum": [ - "processing", - "completed", - "partially_failed", - "failed" + "person", + "brand" ], - "description": "Aggregate status across all child detects.\n - `processing` — at least one child detect is still running.\n - `completed` — every child detect completed successfully.\n - `partially_failed` — at least one succeeded and at least one failed.\n - `failed` — every child detect failed.\n", - "title": "DetectBatchStatus" + "default": "person", + "title": "IdentityPostRequestBodyContentApplicationJsonSchemaOneOf1IdentityIdentityType" }, - "DetectBatch": { + "IdentityPostRequestBodyContentApplicationJsonSchemaOneOf1IdentityVisibility": { + "type": "string", + "enum": [ + "team", + "global" + ], + "default": "team", + "title": "IdentityPostRequestBodyContentApplicationJsonSchemaOneOf1IdentityVisibility" + }, + "IdentityPostRequestBodyContentApplicationJsonSchemaOneOf1Identity": { "type": "object", "properties": { - "uuid": { - "type": "string", - "description": "Batch UUID." - }, - "status": { - "$ref": "#/components/schemas/DetectBatchStatus", - "description": "Aggregate status across all child detects.\n - `processing` — at least one child detect is still running.\n - `completed` — every child detect completed successfully.\n - `partially_failed` — at least one succeeded and at least one failed.\n - `failed` — every child detect failed.\n" - }, - "total_files": { - "type": "integer", - "description": "Number of files in the batch (1–50)." + "name": { + "type": "string" }, - "completed_count": { - "type": "integer", - "description": "Number of child detects that have completed successfully." + "identity_type": { + "$ref": "#/components/schemas/IdentityPostRequestBodyContentApplicationJsonSchemaOneOf1IdentityIdentityType" }, - "failed_count": { - "type": "integer", - "description": "Number of child detects that have failed." + "visibility": { + "$ref": "#/components/schemas/IdentityPostRequestBodyContentApplicationJsonSchemaOneOf1IdentityVisibility" }, - "created_at": { - "type": "string", - "format": "date-time" + "notes": { + "type": "string" }, - "detect_uuids": { - "type": "array", - "items": { - "type": "string" - }, - "description": "UUIDs of the child detects. Use `GET /detect/{uuid}` to retrieve per-file results." + "voice_profile_id": { + "type": "string" } }, - "description": "Aggregate state for a batch detection job. Returned by `POST /detect/batch` and `GET /detect/batch/{uuid}`.", - "title": "DetectBatch" + "required": [ + "name" + ], + "title": "IdentityPostRequestBodyContentApplicationJsonSchemaOneOf1Identity" }, - "Deepfake Detection_createDetectBatch_Response_202": { + "IdentityCreateIdentityRequest1": { + "type": "object", + "properties": { + "identity": { + "$ref": "#/components/schemas/IdentityPostRequestBodyContentApplicationJsonSchemaOneOf1Identity" + } + }, + "required": [ + "identity" + ], + "title": "IdentityCreateIdentityRequest1" + }, + "Identity_createIdentity_Request": { + "oneOf": [ + { + "$ref": "#/components/schemas/IdentityCreateIdentityRequest0" + }, + { + "$ref": "#/components/schemas/IdentityCreateIdentityRequest1" + } + ], + "title": "Identity_createIdentity_Request" + }, + "Identity_createIdentity_Response_200": { "type": "object", "properties": { "success": { - "type": "boolean" + "type": "boolean", + "description": "Whether the voice was enrolled for matching immediately" }, "item": { - "$ref": "#/components/schemas/DetectBatch" + "$ref": "#/components/schemas/IdentitySummary" } }, - "title": "Deepfake Detection_createDetectBatch_Response_202" + "title": "Identity_createIdentity_Response_200" }, - "Deepfake Detection_getDetectBatch_Response_200": { + "Identity_deleteIdentity_Response_200": { "type": "object", "properties": { "success": { "type": "boolean" + } + }, + "title": "Identity_deleteIdentity_Response_200" + }, + "IdentityUuidAttachmentsPostRequestBodyContentMultipartFormDataSchemaModality": { + "type": "string", + "enum": [ + "voice", + "face", + "video" + ], + "title": "IdentityUuidAttachmentsPostRequestBodyContentMultipartFormDataSchemaModality" + }, + "IdentityIdentityType": { + "type": "string", + "enum": [ + "person", + "brand" + ], + "title": "IdentityIdentityType" + }, + "IdentityVisibility": { + "type": "string", + "enum": [ + "team", + "global" + ], + "title": "IdentityVisibility" + }, + "IdentityAttachment": { + "type": "object", + "properties": { + "id": { + "type": "integer" }, - "item": { - "$ref": "#/components/schemas/DetectBatch" + "filename": { + "type": "string" + }, + "byte_size": { + "type": "integer" + }, + "content_type": { + "type": "string" } }, - "title": "Deepfake Detection_getDetectBatch_Response_200" + "description": "A reference media file attached to an identity", + "title": "IdentityAttachment" }, - "DetectAgentTier": { + "IdentityEmbeddingsItemsModality": { "type": "string", "enum": [ - "triage", - "investigation", - "forensic" + "voice", + "face", + "video" ], - "description": "Managed investigation depth. Informational and read-only.", - "title": "DetectAgentTier" + "title": "IdentityEmbeddingsItemsModality" }, - "DetectAgentCapabilities": { + "IdentityEmbeddingsItems": { "type": "object", "properties": { - "media": { - "type": "boolean" - }, - "reverse_search": { - "type": "boolean" - }, - "identity": { - "type": "boolean" - }, - "grounding": { - "type": "boolean" + "modality": { + "$ref": "#/components/schemas/IdentityEmbeddingsItemsModality" }, - "structured": { - "type": "boolean" + "status": { + "type": "string" }, - "tools": { - "type": "boolean" + "attachment_count": { + "type": "integer" }, - "knowledge": { - "type": "boolean" + "computed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" } }, - "required": [ - "media", - "reverse_search", - "identity", - "grounding", - "structured", - "tools", - "knowledge" - ], - "description": "Read-only feature flags for a managed Detect Agent.", - "title": "DetectAgentCapabilities" + "title": "IdentityEmbeddingsItems" }, - "DetectAgent": { + "IdentityProjectsItems": { "type": "object", "properties": { - "id": { - "type": "string", - "description": "Stable Detect Agent identifier. Currently the same as `uuid` and `preset_id`." - }, "uuid": { - "type": "string", - "description": "Stable identifier used by the run and history endpoints." - }, - "preset_id": { - "type": "string", - "description": "Resemble-managed Detect Agent identifier." + "type": "string" }, "name": { "type": "string" + } + }, + "title": "IdentityProjectsItems" + }, + "Identity": { + "type": "object", + "properties": { + "uuid": { + "type": "string" }, - "description": { - "type": [ - "string", - "null" - ], - "description": "Verification workflow handled by the Detect Agent." - }, - "tier": { - "$ref": "#/components/schemas/DetectAgentTier", - "description": "Managed investigation depth. Informational and read-only." + "name": { + "type": "string" }, - "memory_preview": { - "type": "string", - "description": "Read-only preview of patterns learned from previous investigations." + "identity_type": { + "$ref": "#/components/schemas/IdentityIdentityType" }, - "capabilities": { - "$ref": "#/components/schemas/DetectAgentCapabilities" + "visibility": { + "$ref": "#/components/schemas/IdentityVisibility" }, - "tagline": { + "notes": { "type": [ "string", "null" - ], - "description": "Short description derived from the Detect Agent's managed instructions." - }, - "activated": { - "type": "boolean", - "description": "Whether this team has initialized backing state for the Detect Agent by running it." + ] }, - "created_at": { + "voice_profile_id": { "type": [ "string", "null" - ], - "format": "date-time", - "description": "Team backing-state creation time, or null before the first investigation." + ] + }, + "created_at": { + "type": "string", + "format": "date-time" }, "updated_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "Team backing-state update time, or null before the first investigation." - } - }, - "required": [ - "id", - "uuid", - "preset_id", - "name", - "tier", - "memory_preview", - "capabilities", - "activated" - ], - "description": "A Resemble-managed Detect Agent available to the authenticated team.", - "title": "DetectAgent" - }, - "Detect Agents_listDetectAgents_Response_200": { - "type": "object", - "properties": { - "success": { - "type": "boolean" + "type": "string", + "format": "date-time" }, - "items": { + "project_count": { + "type": "integer" + }, + "voice_samples": { "type": "array", "items": { - "$ref": "#/components/schemas/DetectAgent" + "$ref": "#/components/schemas/IdentityAttachment" } }, - "count": { - "type": "integer" + "face_photos": { + "type": "array", + "items": { + "$ref": "#/components/schemas/IdentityAttachment" + } + }, + "reference_videos": { + "type": "array", + "items": { + "$ref": "#/components/schemas/IdentityAttachment" + } + }, + "embeddings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/IdentityEmbeddingsItems" + }, + "description": "Per-modality embedding processing status" + }, + "projects": { + "type": "array", + "items": { + "$ref": "#/components/schemas/IdentityProjectsItems" + } } }, - "required": [ - "success", - "items", - "count" - ], - "title": "Detect Agents_listDetectAgents_Response_200" + "description": "A multimodal identity profile", + "title": "Identity" }, - "DetectAgentRunSummaryStatus": { + "Identity_deleteIdentityAttachment_Response_204": { + "type": "object", + "properties": {}, + "description": "Empty response body", + "title": "Identity_deleteIdentityAttachment_Response_204" + }, + "IdentitySearchPostRequestBodyContentApplicationJsonSchemaModality": { "type": "string", "enum": [ - "running", - "completed", - "error" + "audio", + "image" ], - "title": "DetectAgentRunSummaryStatus" + "description": "Inferred from the media's content type when omitted (defaults to audio)", + "title": "IdentitySearchPostRequestBodyContentApplicationJsonSchemaModality" }, - "DetectAgentRunResultVerdict": { - "type": "object", - "properties": { - "forced": { - "type": "boolean" - }, - "excerpt": { - "type": "string" - } - }, - "title": "DetectAgentRunResultVerdict" + "IdentitySearchPostResponsesContentApplicationJsonSchemaModality": { + "type": "string", + "enum": [ + "audio", + "image" + ], + "title": "IdentitySearchPostResponsesContentApplicationJsonSchemaModality" }, - "DetectAgentRunResult": { - "type": "object", - "properties": { - "verdict": { - "oneOf": [ - { - "$ref": "#/components/schemas/DetectAgentRunResultVerdict" - }, - { - "type": "null" - } - ] - }, - "recommended_action": { - "type": [ - "string", - "null" - ] - }, - "confidence": { - "type": [ - "number", - "null" - ], - "format": "double" - }, - "label": { - "type": [ - "string", - "null" - ] + "IdentitySearchPostResponsesContentApplicationJsonSchemaItem": { + "type": "object", + "properties": { + "name": { + "type": "string" }, - "score": { - "type": [ - "number", - "null" - ], + "distance": { + "type": "number", "format": "double" }, - "agent_ran": { - "type": [ - "boolean", - "null" - ] + "score_type": { + "type": "string" } }, - "description": "Compact result summary derived from the investigation transcript.", - "title": "DetectAgentRunResult" + "title": "IdentitySearchPostResponsesContentApplicationJsonSchemaItem" }, - "DetectAgentRunSummaryInputs": { + "Identity_searchIdentities_Response_200": { "type": "object", "properties": { - "query": { - "type": "string" - }, - "url": { - "type": "string", - "format": "uri" + "success": { + "type": "boolean" }, - "filename": { - "type": "string" + "modality": { + "$ref": "#/components/schemas/IdentitySearchPostResponsesContentApplicationJsonSchemaModality" }, - "check_urls": { - "type": "string" + "item": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/IdentitySearchPostResponsesContentApplicationJsonSchemaItem" + }, + "description": "Matches keyed by identity UUID. distance is a 0-100 match score (higher is closer; an identical sample scores 100). Image matches include score_type \"cosine\".\n" } }, - "description": "Submitted investigation inputs. Null-valued fields are omitted.", - "title": "DetectAgentRunSummaryInputs" + "title": "Identity_searchIdentities_Response_200" }, - "DetectAgentRunSummary": { + "WatermarkApplyPostParametersPrefer": { + "type": "string", + "enum": [ + "wait" + ], + "title": "WatermarkApplyPostParametersPrefer" + }, + "WatermarkApplyRequest": { "type": "object", "properties": { - "uuid": { + "url": { "type": "string", - "format": "uuid", - "description": "Investigation run identifier." - }, - "status": { - "$ref": "#/components/schemas/DetectAgentRunSummaryStatus" - }, - "result": { - "$ref": "#/components/schemas/DetectAgentRunResult" - }, - "inputs": { - "$ref": "#/components/schemas/DetectAgentRunSummaryInputs", - "description": "Submitted investigation inputs. Null-valued fields are omitted." - }, - "has_media": { - "type": "boolean", - "description": "Whether primary uploaded media is attached to this run." + "format": "uri", + "description": "Public HTTPS URL to the audio, image, or video source." }, - "created_at": { - "type": [ - "string", - "null" - ], - "format": "date-time" + "strength": { + "type": "number", + "format": "double", + "default": 0.2, + "description": "Watermark strength for image/video. Ignored for audio." }, - "updated_at": { - "type": [ - "string", - "null" - ], - "format": "date-time" + "custom_message": { + "type": "string", + "default": "resembleai", + "description": "Message to embed in image/video. Ignored for audio." } }, "required": [ - "uuid", - "status", - "result", - "inputs", - "has_media" + "url" ], - "title": "DetectAgentRunSummary" + "title": "WatermarkApplyRequest" }, - "Detect Agents_listDetectAgentInvestigationRuns_Response_200": { + "WatermarkApplyItemMediaType": { + "type": "string", + "enum": [ + "audio", + "image", + "video" + ], + "description": "Detected media type of the source file.", + "title": "WatermarkApplyItemMediaType" + }, + "WatermarkApplyItemOperationType": { + "type": "string", + "enum": [ + "apply" + ], + "title": "WatermarkApplyItemOperationType" + }, + "WatermarkApplyItemStatus": { + "type": "string", + "enum": [ + "pending", + "processing", + "completed", + "failed" + ], + "title": "WatermarkApplyItemStatus" + }, + "WatermarkApplyItemModelVersion": { + "type": "string", + "enum": [ + "perth_v2" + ], + "title": "WatermarkApplyItemModelVersion" + }, + "WatermarkApplyMetrics": { "type": "object", "properties": { - "success": { - "type": "boolean" + "strength": { + "type": "number", + "format": "double" }, - "items": { - "type": "array", - "items": { - "$ref": "#/components/schemas/DetectAgentRunSummary" - } + "custom_message": { + "type": "string" }, - "count": { - "type": "integer" + "message_bits_length": { + "type": [ + "integer", + "null" + ] } }, - "required": [ - "success", - "items", - "count" - ], - "title": "Detect Agents_listDetectAgentInvestigationRuns_Response_200" + "description": "Apply metadata for image/video. Audio apply metrics are null.", + "title": "WatermarkApplyMetrics" }, - "DetectAgentRun": { + "WatermarkApplyItem": { "type": "object", "properties": { "uuid": { - "type": "string", - "format": "uuid", - "description": "Investigation run identifier." + "type": "string" }, - "status": { - "$ref": "#/components/schemas/DetectAgentRunSummaryStatus" + "media_type": { + "$ref": "#/components/schemas/WatermarkApplyItemMediaType", + "description": "Detected media type of the source file." }, - "result": { - "$ref": "#/components/schemas/DetectAgentRunResult" + "operation_type": { + "$ref": "#/components/schemas/WatermarkApplyItemOperationType" }, - "inputs": { - "$ref": "#/components/schemas/DetectAgentRunSummaryInputs", - "description": "Submitted investigation inputs. Null-valued fields are omitted." + "status": { + "$ref": "#/components/schemas/WatermarkApplyItemStatus" }, - "has_media": { - "type": "boolean", - "description": "Whether primary uploaded media is attached to this run." + "model_version": { + "$ref": "#/components/schemas/WatermarkApplyItemModelVersion" }, - "created_at": { - "type": [ - "string", - "null" - ], - "format": "date-time" + "source_media_url": { + "type": "string", + "format": "uri" }, - "updated_at": { + "watermarked_media": { "type": [ "string", "null" ], - "format": "date-time" - }, - "transcript": { - "type": "array", - "items": { - "type": "object", - "additionalProperties": { - "description": "Any type" - } - }, - "description": "Public investigation events. Internal cost events are omitted." - }, - "config_snapshot": { - "type": "object", - "additionalProperties": { - "description": "Any type" - }, - "description": "Exact managed configuration used for the investigation." - }, - "memory_before": { - "type": "string" + "format": "uri", + "description": "Signed output URL when processing is complete." }, - "memory_after": { - "type": "string" + "metrics": { + "$ref": "#/components/schemas/WatermarkApplyMetrics" }, - "error": { - "type": [ - "string", - "null" - ] + "created_at": { + "type": "string", + "format": "date-time" }, - "media_url": { - "type": [ - "string", - "null" - ], - "description": "Relative URL for uploaded primary media, or null when the run used a public URL." + "updated_at": { + "type": "string", + "format": "date-time" } }, "required": [ "uuid", + "media_type", + "operation_type", "status", - "result", - "inputs", - "has_media" + "model_version", + "source_media_url", + "created_at", + "updated_at" ], - "title": "DetectAgentRun" + "title": "WatermarkApplyItem" }, - "Detect Agents_getDetectAgentInvestigationRun_Response_200": { + "WatermarkApplyResponse": { "type": "object", "properties": { "success": { "type": "boolean" }, "item": { - "$ref": "#/components/schemas/DetectAgentRun" + "$ref": "#/components/schemas/WatermarkApplyItem" } }, "required": [ "success", "item" ], - "title": "Detect Agents_getDetectAgentInvestigationRun_Response_200" - }, - "IntelligencePostRequestBodyContentApplicationJsonSchemaMediaType": { - "type": "string", - "enum": [ - "audio", - "video", - "image" - ], - "description": "Explicit media type (auto-detected if not provided)", - "title": "IntelligencePostRequestBodyContentApplicationJsonSchemaMediaType" + "title": "WatermarkApplyResponse" }, - "IntelligencePostResponsesContentApplicationJsonSchemaItemMediaType": { + "WatermarkDetectPostParametersPrefer": { "type": "string", "enum": [ - "audio", - "video", - "image" + "wait" ], - "description": "Type of media analyzed", - "title": "IntelligencePostResponsesContentApplicationJsonSchemaItemMediaType" + "title": "WatermarkDetectPostParametersPrefer" }, - "IntelligencePostResponsesContentApplicationJsonSchemaItem": { + "WatermarkDetectRequest": { "type": "object", "properties": { - "uuid": { - "type": "string" - }, - "created_at": { + "url": { "type": "string", - "format": "date-time" + "format": "uri", + "description": "Public HTTPS URL to the audio, image, or video source." }, - "detect_uuid": { + "custom_message": { "type": "string", - "description": "UUID of the associated detect object" - }, - "media_type": { - "$ref": "#/components/schemas/IntelligencePostResponsesContentApplicationJsonSchemaItemMediaType", - "description": "Type of media analyzed" + "default": "resembleai", + "description": "Message used when applying the image/video watermark. Ignored for audio." } }, - "title": "IntelligencePostResponsesContentApplicationJsonSchemaItem" + "required": [ + "url" + ], + "title": "WatermarkDetectRequest" }, - "Intelligence_runIntelligence_Response_200": { - "type": "object", - "properties": { - "success": { - "type": "boolean" - }, - "item": { - "$ref": "#/components/schemas/IntelligencePostResponsesContentApplicationJsonSchemaItem" - } - }, - "title": "Intelligence_runIntelligence_Response_200" + "WatermarkDetectItemMediaType": { + "type": "string", + "enum": [ + "audio", + "image", + "video" + ], + "title": "WatermarkDetectItemMediaType" }, - "IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionFraudType": { + "WatermarkDetectItemOperationType": { "type": "string", "enum": [ - "none", - "vishing", - "impersonation", - "romance_scam", - "tech_support_scam", - "financial_fraud", - "extortion", - "political_manipulation", - "synthetic_media_fraud", - "insurance_fraud", - "employment_fraud", - "other" + "detect" ], - "title": "IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionFraudType" + "title": "WatermarkDetectItemOperationType" }, - "IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionFraud": { - "type": "object", - "properties": { - "type": { - "$ref": "#/components/schemas/IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionFraudType" - }, - "confidence": { - "type": "number", - "format": "double" - }, - "reasoning": { - "type": "string" - } - }, - "title": "IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionFraud" + "WatermarkDetectItemStatus": { + "type": "string", + "enum": [ + "pending", + "processing", + "completed", + "failed" + ], + "title": "WatermarkDetectItemStatus" }, - "IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionLivenessAssessment": { + "WatermarkDetectItemModelVersion": { "type": "string", "enum": [ - "real_person", - "not_real_person", - "inconclusive" + "perth_v2" ], - "title": "IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionLivenessAssessment" + "description": "Present for image/video. Audio versions are reported in metrics.model_results.", + "title": "WatermarkDetectItemModelVersion" }, - "IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionLiveness": { - "type": "object", - "properties": { - "assessment": { - "$ref": "#/components/schemas/IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionLivenessAssessment" - }, - "confidence": { - "type": "number", - "format": "double" - }, - "indicators": { - "type": "string" - } - }, - "title": "IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionLiveness" + "WatermarkAudioDetectionMetricsOverallStatus": { + "type": "string", + "enum": [ + "present", + "absent", + "inconclusive" + ], + "title": "WatermarkAudioDetectionMetricsOverallStatus" }, - "IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionDigitallyAltered": { - "type": "object", - "properties": { - "detected": { - "type": "boolean" - }, - "confidence": { - "type": "number", - "format": "double" - }, - "alterations": { - "type": "string" - } - }, - "title": "IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionDigitallyAltered" + "WatermarkAudioDetectionMetricsDetectedModelVersionsItems": { + "type": "string", + "enum": [ + "perth_v1", + "perth_v2" + ], + "title": "WatermarkAudioDetectionMetricsDetectedModelVersionsItems" }, - "IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescription": { - "type": "object", - "properties": { - "speaker_info": { - "type": "string" - }, - "language": { - "type": "string" - }, - "dialect": { - "type": "string" - }, - "emotion": { - "type": "string" - }, - "speaking_style": { - "type": "string" - }, - "context": { - "type": "string" - }, - "message": { - "type": "string" - }, - "abnormalities": { - "type": "string" - }, - "transcription": { - "type": "string" - }, - "translation": { - "type": [ - "string", - "null" - ] - }, - "misinformation": { - "type": "string" - }, - "fraud": { - "$ref": "#/components/schemas/IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionFraud" - }, - "liveness": { - "$ref": "#/components/schemas/IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionLiveness" - }, - "digitally_altered": { - "$ref": "#/components/schemas/IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescriptionDigitallyAltered" - } - }, - "description": "Structured intelligence analysis", - "title": "IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescription" + "WatermarkAudioModelResultModelVersion": { + "type": "string", + "enum": [ + "perth_v1", + "perth_v2" + ], + "title": "WatermarkAudioModelResultModelVersion" }, - "IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsMediaType": { + "WatermarkAudioModelResultStatus": { "type": "string", "enum": [ - "audio", - "video", - "image" + "succeeded", + "failed" ], - "description": "Type of media analyzed", - "title": "IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsMediaType" + "title": "WatermarkAudioModelResultStatus" }, - "IntelligencesGetResponsesContentApplicationJsonSchemaItemsItems": { + "WatermarkAudioModelResult": { "type": "object", "properties": { - "uuid": { - "type": "string" + "model_version": { + "$ref": "#/components/schemas/WatermarkAudioModelResultModelVersion" }, - "description": { - "$ref": "#/components/schemas/IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsDescription", - "description": "Structured intelligence analysis" + "status": { + "$ref": "#/components/schemas/WatermarkAudioModelResultStatus" + }, + "detected": { + "type": [ + "boolean", + "null" + ], + "description": "Null when this detector was unavailable." + }, + "has_watermark": { + "type": "object", + "additionalProperties": { + "type": "boolean" + }, + "description": "Successful per-channel detection results." }, - "created_at": { - "type": "string", - "format": "date-time" + "confidence": { + "type": [ + "number", + "null" + ], + "format": "double" }, - "detect_uuid": { + "error": { "type": "string", - "description": "UUID of the associated detect object" - }, - "media_type": { - "$ref": "#/components/schemas/IntelligencesGetResponsesContentApplicationJsonSchemaItemsItemsMediaType", - "description": "Type of media analyzed" + "description": "Safe error message when status is failed." } }, - "title": "IntelligencesGetResponsesContentApplicationJsonSchemaItemsItems" + "required": [ + "model_version", + "status", + "detected" + ], + "title": "WatermarkAudioModelResult" }, - "Intelligence_listIntelligences_Response_200": { + "WatermarkAudioDetectionMetrics": { "type": "object", "properties": { - "success": { - "type": "boolean" + "overall_status": { + "$ref": "#/components/schemas/WatermarkAudioDetectionMetricsOverallStatus" }, - "page": { - "type": "integer" + "detected_model_versions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/WatermarkAudioDetectionMetricsDetectedModelVersionsItems" + }, + "description": "Only model versions that positively detected a watermark." }, - "num_pages": { - "type": "integer" + "coverage_complete": { + "type": "boolean", + "description": "True only when both audio detectors completed successfully." }, - "page_size": { - "type": "integer" + "has_watermark": { + "type": "object", + "additionalProperties": { + "type": "boolean" + }, + "description": "Per-channel aggregate across successful audio detectors." }, - "total_count": { - "type": "integer" + "confidence": { + "type": [ + "number", + "null" + ], + "format": "double" }, - "items": { + "model_results": { "type": "array", "items": { - "$ref": "#/components/schemas/IntelligencesGetResponsesContentApplicationJsonSchemaItemsItems" + "$ref": "#/components/schemas/WatermarkAudioModelResult" } } }, - "title": "Intelligence_listIntelligences_Response_200" + "required": [ + "overall_status", + "detected_model_versions", + "coverage_complete", + "has_watermark", + "model_results" + ], + "title": "WatermarkAudioDetectionMetrics" }, - "IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionFraudType": { + "WatermarkVisionDetectionMetricsOverallStatus": { "type": "string", "enum": [ - "none", - "vishing", - "impersonation", - "romance_scam", - "tech_support_scam", - "financial_fraud", - "extortion", - "political_manipulation", - "synthetic_media_fraud", - "insurance_fraud", - "employment_fraud", - "other" + "present", + "degraded", + "absent", + "inconclusive" ], - "title": "IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionFraudType" + "title": "WatermarkVisionDetectionMetricsOverallStatus" }, - "IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionFraud": { - "type": "object", - "properties": { - "type": { - "$ref": "#/components/schemas/IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionFraudType" - }, - "confidence": { - "type": "number", - "format": "double" - }, - "reasoning": { - "type": "string" - } - }, - "title": "IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionFraud" + "WatermarkVisionDetectionMetricsDetectedModelVersionsItems": { + "type": "string", + "enum": [ + "perth_v2" + ], + "title": "WatermarkVisionDetectionMetricsDetectedModelVersionsItems" }, - "IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionLivenessAssessment": { + "WatermarkVisionModelResultModelVersion": { "type": "string", "enum": [ - "real_person", - "not_real_person", - "inconclusive" + "perth_v2" ], - "title": "IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionLivenessAssessment" + "title": "WatermarkVisionModelResultModelVersion" }, - "IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionLiveness": { + "WatermarkVisionModelResultStatus": { + "type": "string", + "enum": [ + "succeeded" + ], + "title": "WatermarkVisionModelResultStatus" + }, + "WatermarkVisionModelResult": { "type": "object", "properties": { - "assessment": { - "$ref": "#/components/schemas/IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionLivenessAssessment" + "model_version": { + "$ref": "#/components/schemas/WatermarkVisionModelResultModelVersion" }, - "confidence": { - "type": "number", - "format": "double" + "status": { + "$ref": "#/components/schemas/WatermarkVisionModelResultStatus" }, - "indicators": { - "type": "string" - } - }, - "title": "IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionLiveness" - }, - "IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionDigitallyAltered": { - "type": "object", - "properties": { "detected": { "type": "boolean" }, "confidence": { - "type": "number", + "type": [ + "number", + "null" + ], "format": "double" - }, - "alterations": { - "type": "string" } }, - "title": "IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionDigitallyAltered" + "required": [ + "model_version", + "status", + "detected" + ], + "title": "WatermarkVisionModelResult" }, - "IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescription": { + "WatermarkVisionDetectionMetricsVerdict": { + "type": "string", + "enum": [ + "verified", + "degraded", + "not_watermarked" + ], + "description": "Backward-compatible image/video verdict.", + "title": "WatermarkVisionDetectionMetricsVerdict" + }, + "WatermarkVisionDetectionMetrics": { "type": "object", "properties": { - "speaker_info": { - "type": "string" - }, - "language": { - "type": "string" - }, - "dialect": { - "type": "string" - }, - "emotion": { - "type": "string" - }, - "speaking_style": { - "type": "string" - }, - "context": { - "type": "string" - }, - "message": { - "type": "string" + "overall_status": { + "$ref": "#/components/schemas/WatermarkVisionDetectionMetricsOverallStatus" }, - "abnormalities": { - "type": "string" + "detected_model_versions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/WatermarkVisionDetectionMetricsDetectedModelVersionsItems" + }, + "description": "Contains perth_v2 only when watermark signal is detected." }, - "transcription": { - "type": "string" + "has_watermark": { + "type": "boolean" }, - "translation": { + "detection_score": { "type": [ - "string", + "number", "null" - ] + ], + "format": "double" }, - "misinformation": { - "type": "string" + "model_results": { + "type": "array", + "items": { + "$ref": "#/components/schemas/WatermarkVisionModelResult" + } }, - "fraud": { - "$ref": "#/components/schemas/IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionFraud" + "verdict": { + "oneOf": [ + { + "$ref": "#/components/schemas/WatermarkVisionDetectionMetricsVerdict" + }, + { + "type": "null" + } + ], + "description": "Backward-compatible image/video verdict." }, - "liveness": { - "$ref": "#/components/schemas/IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionLiveness" + "synthid": { + "type": "boolean", + "description": "Optional auxiliary SynthID signal for images." + } + }, + "required": [ + "overall_status", + "detected_model_versions", + "has_watermark", + "detection_score", + "model_results" + ], + "title": "WatermarkVisionDetectionMetrics" + }, + "WatermarkDetectItemMetrics": { + "oneOf": [ + { + "$ref": "#/components/schemas/WatermarkAudioDetectionMetrics" }, - "digitally_altered": { - "$ref": "#/components/schemas/IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescriptionDigitallyAltered" + { + "$ref": "#/components/schemas/WatermarkVisionDetectionMetrics" } - }, - "description": "Structured intelligence analysis", - "title": "IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescription" - }, - "IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemMediaType": { - "type": "string", - "enum": [ - "audio", - "video", - "image" ], - "description": "Type of media analyzed", - "title": "IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemMediaType" + "description": "Null while processing. New results use the media-specific versioned schema; historical audio results can use a flat shape.", + "title": "WatermarkDetectItemMetrics" }, - "IntelligencesUuidGetResponsesContentApplicationJsonSchemaItem": { + "WatermarkDetectItem": { "type": "object", "properties": { "uuid": { "type": "string" }, - "description": { - "$ref": "#/components/schemas/IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemDescription", - "description": "Structured intelligence analysis" + "media_type": { + "$ref": "#/components/schemas/WatermarkDetectItemMediaType" + }, + "operation_type": { + "$ref": "#/components/schemas/WatermarkDetectItemOperationType" + }, + "status": { + "$ref": "#/components/schemas/WatermarkDetectItemStatus" + }, + "model_version": { + "$ref": "#/components/schemas/WatermarkDetectItemModelVersion", + "description": "Present for image/video. Audio versions are reported in metrics.model_results." + }, + "source_media_url": { + "type": "string", + "format": "uri" + }, + "metrics": { + "oneOf": [ + { + "$ref": "#/components/schemas/WatermarkDetectItemMetrics" + }, + { + "type": "null" + } + ], + "description": "Null while processing. New results use the media-specific versioned schema; historical audio results can use a flat shape." + }, + "watermarked_media": { + "type": [ + "string", + "null" + ], + "format": "uri", + "description": "Detection does not produce output media." }, "created_at": { "type": "string", "format": "date-time" }, - "detect_uuid": { + "updated_at": { "type": "string", - "description": "UUID of the associated detect object" - }, - "media_type": { - "$ref": "#/components/schemas/IntelligencesUuidGetResponsesContentApplicationJsonSchemaItemMediaType", - "description": "Type of media analyzed" + "format": "date-time" } }, - "title": "IntelligencesUuidGetResponsesContentApplicationJsonSchemaItem" + "required": [ + "uuid", + "media_type", + "operation_type", + "status", + "source_media_url", + "created_at", + "updated_at" + ], + "title": "WatermarkDetectItem" }, - "Intelligence_getIntelligence_Response_200": { + "WatermarkDetectResponse": { "type": "object", "properties": { "success": { "type": "boolean" }, "item": { - "$ref": "#/components/schemas/IntelligencesUuidGetResponsesContentApplicationJsonSchemaItem" + "$ref": "#/components/schemas/WatermarkDetectItem" } }, - "title": "Intelligence_getIntelligence_Response_200" + "required": [ + "success", + "item" + ], + "title": "WatermarkDetectResponse" }, - "DetectsUuidIntelligencePostResponsesContentApplicationJsonSchemaItemStatus": { + "SignalSubmissionInputModality": { "type": "string", "enum": [ - "pending", - "processing", - "completed", - "failed" + "text", + "audio", + "video", + "image" ], - "description": "Current status of the question", - "title": "DetectsUuidIntelligencePostResponsesContentApplicationJsonSchemaItemStatus" + "title": "SignalSubmissionInputModality" }, - "DetectsUuidIntelligencePostResponsesContentApplicationJsonSchemaItem": { + "SignalSubmissionVerdict": { + "type": "string", + "enum": [ + "safe", + "suspicious", + "fraud" + ], + "title": "SignalSubmissionVerdict" + }, + "SignalCategoryScore": { "type": "object", "properties": { - "uuid": { - "type": "string", - "description": "UUID of the question" - }, - "detect_uuid": { - "type": "string", - "description": "UUID of the associated detection report" - }, - "query": { - "type": "string", - "description": "The submitted question" - }, - "answer": { - "type": [ - "string", - "null" - ], - "description": "The generated answer (null until completed)" - }, - "status": { - "$ref": "#/components/schemas/DetectsUuidIntelligencePostResponsesContentApplicationJsonSchemaItemStatus", - "description": "Current status of the question" + "name": { + "type": "string" }, - "error_message": { + "icon": { "type": [ "string", "null" ], - "description": "Error details when status is failed" - }, - "created_at": { - "type": "string", - "format": "date-time" + "description": "Single emoji associated with the category." }, - "updated_at": { - "type": "string", - "format": "date-time" + "score": { + "type": "number", + "format": "double", + "description": "Similarity score from 0 to 1." } }, - "title": "DetectsUuidIntelligencePostResponsesContentApplicationJsonSchemaItem" + "required": [ + "name", + "score" + ], + "title": "SignalCategoryScore" }, - "Detect Intelligence_askDetectIntelligenceQuestion_Response_202": { - "type": "object", - "properties": { - "success": { - "type": "boolean" - }, - "item": { - "$ref": "#/components/schemas/DetectsUuidIntelligencePostResponsesContentApplicationJsonSchemaItem" - } - }, - "title": "Detect Intelligence_askDetectIntelligenceQuestion_Response_202" + "SignalScoreItemInputModality": { + "type": "string", + "enum": [ + "text", + "audio", + "video", + "image" + ], + "title": "SignalScoreItemInputModality" }, - "DetectsUuidIntelligenceQuestionUuidGetResponsesContentApplicationJsonSchemaItemStatus": { + "SignalScoreItemVerdict": { "type": "string", "enum": [ - "pending", - "processing", - "completed", - "failed" + "safe", + "suspicious", + "fraud" ], - "description": "Current status of the question", - "title": "DetectsUuidIntelligenceQuestionUuidGetResponsesContentApplicationJsonSchemaItemStatus" + "title": "SignalScoreItemVerdict" }, - "DetectsUuidIntelligenceQuestionUuidGetResponsesContentApplicationJsonSchemaItem": { + "SignalTopMatch": { "type": "object", "properties": { - "uuid": { + "category": { "type": "string", - "description": "UUID of the question" + "description": "Category the matched example belongs to." }, - "detect_uuid": { + "text": { "type": "string", - "description": "UUID of the associated detection report" + "description": "The individual training example that matched." }, - "query": { - "type": "string", - "description": "The submitted question" + "score": { + "type": "number", + "format": "double" + } + }, + "title": "SignalTopMatch" + }, + "SignalScoreItem": { + "type": "object", + "properties": { + "id": { + "type": "integer", + "description": "Submission identifier, used with `DELETE /signal/{id}`." }, - "answer": { + "input_modality": { + "$ref": "#/components/schemas/SignalScoreItemInputModality" + }, + "verdict": { + "$ref": "#/components/schemas/SignalScoreItemVerdict" + }, + "top_category": { + "$ref": "#/components/schemas/SignalCategoryScore" + }, + "category_scores": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SignalCategoryScore" + }, + "description": "Highest-scoring categories, including the top category." + }, + "benign_score": { "type": [ - "string", + "number", "null" ], - "description": "The generated answer (null until completed)" + "format": "double", + "description": "How strongly the content matched benign, non-fraud content." }, - "status": { - "$ref": "#/components/schemas/DetectsUuidIntelligenceQuestionUuidGetResponsesContentApplicationJsonSchemaItemStatus", - "description": "Current status of the question" + "margin_over_second": { + "type": [ + "number", + "null" + ], + "format": "double", + "description": "Gap between the top category score and the runner-up." }, - "error_message": { + "examples": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Sample phrases from the top category, useful for explaining the verdict." + }, + "top_matches": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SignalTopMatch" + } + }, + "duration_seconds": { "type": [ - "string", + "number", "null" ], - "description": "Error details when status is failed" + "format": "double", + "description": "Media duration for audio and video. Null for text and image." }, "created_at": { "type": "string", "format": "date-time" - }, - "updated_at": { - "type": "string", - "format": "date-time" } }, - "title": "DetectsUuidIntelligenceQuestionUuidGetResponsesContentApplicationJsonSchemaItem" + "required": [ + "input_modality", + "verdict" + ], + "title": "SignalScoreItem" }, - "Detect Intelligence_getDetectIntelligenceQuestion_Response_200": { + "SignalSubmission": { "type": "object", "properties": { - "success": { - "type": "boolean" + "id": { + "type": "integer" }, - "item": { - "$ref": "#/components/schemas/DetectsUuidIntelligenceQuestionUuidGetResponsesContentApplicationJsonSchemaItem" - } - }, - "title": "Detect Intelligence_getDetectIntelligenceQuestion_Response_200" - }, - "AudioSourceTracingsGetResponsesContentApplicationJsonSchemaItemsItemsResults": { - "type": "object", - "properties": { - "label": { - "type": "string", - "description": "Identified source (e.g., resemble_ai, elevenlabs) or \"real\" if audio is not synthetic" + "input_modality": { + "$ref": "#/components/schemas/SignalSubmissionInputModality" + }, + "filename": { + "type": [ + "string", + "null" + ], + "description": "Original filename for file submissions." + }, + "content_type": { + "type": [ + "string", + "null" + ], + "description": "MIME type for file submissions." }, - "error_message": { + "text_preview": { "type": [ "string", "null" - ] - } - }, - "title": "AudioSourceTracingsGetResponsesContentApplicationJsonSchemaItemsItemsResults" - }, - "AudioSourceTracingsGetResponsesContentApplicationJsonSchemaItemsItems": { - "type": "object", - "properties": { - "uuid": { - "type": "string" + ], + "description": "Truncated copy of the submitted text. Null for file submissions." }, - "results": { - "$ref": "#/components/schemas/AudioSourceTracingsGetResponsesContentApplicationJsonSchemaItemsItemsResults" + "verdict": { + "$ref": "#/components/schemas/SignalSubmissionVerdict" + }, + "top_category": { + "$ref": "#/components/schemas/SignalCategoryScore" + }, + "benign_score": { + "type": [ + "number", + "null" + ], + "format": "double" + }, + "margin_over_second": { + "type": [ + "number", + "null" + ], + "format": "double" + }, + "response": { + "$ref": "#/components/schemas/SignalScoreItem" }, "created_at": { "type": "string", "format": "date-time" - }, - "detect_uuid": { - "type": "string", - "description": "UUID of the associated detect object" } }, - "title": "AudioSourceTracingsGetResponsesContentApplicationJsonSchemaItemsItems" + "title": "SignalSubmission" }, - "Audio Source Tracing_listAudioSourceTracings_Response_200": { + "SignalSubmissionListResponse": { "type": "object", "properties": { "success": { "type": "boolean" }, - "page": { - "type": "integer" + "items": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SignalSubmission" + } }, - "num_pages": { + "page": { "type": "integer" }, - "page_size": { + "per_page": { "type": "integer" }, "total_count": { "type": "integer" }, - "items": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AudioSourceTracingsGetResponsesContentApplicationJsonSchemaItemsItems" - } + "total_pages": { + "type": "integer" } }, - "title": "Audio Source Tracing_listAudioSourceTracings_Response_200" + "required": [ + "success", + "items" + ], + "title": "SignalSubmissionListResponse" }, - "AudioSourceTracingsUuidGetResponsesContentApplicationJsonSchemaItemResults": { + "SignalError": { "type": "object", "properties": { - "label": { - "type": "string", - "description": "Identified source (e.g., resemble_ai, elevenlabs) or \"real\" if audio is not synthetic" + "success": { + "type": "boolean" }, - "error_message": { - "type": [ - "string", - "null" - ] + "message": { + "type": "string" + }, + "max_bytes": { + "type": "integer", + "description": "Present on 413 responses." } }, - "title": "AudioSourceTracingsUuidGetResponsesContentApplicationJsonSchemaItemResults" + "title": "SignalError" }, - "AudioSourceTracingsUuidGetResponsesContentApplicationJsonSchemaItem": { + "SignalScoreResponse": { "type": "object", "properties": { - "uuid": { - "type": "string" - }, - "results": { - "$ref": "#/components/schemas/AudioSourceTracingsUuidGetResponsesContentApplicationJsonSchemaItemResults" - }, - "created_at": { - "type": "string", - "format": "date-time" + "success": { + "type": "boolean" }, - "detect_uuid": { - "type": "string", - "description": "UUID of the associated detect object" + "item": { + "$ref": "#/components/schemas/SignalScoreItem" } }, - "title": "AudioSourceTracingsUuidGetResponsesContentApplicationJsonSchemaItem" + "required": [ + "success", + "item" + ], + "title": "SignalScoreResponse" }, - "Audio Source Tracing_getAudioSourceTracing_Response_200": { + "SignalSuccessResponse": { "type": "object", "properties": { "success": { "type": "boolean" + } + }, + "required": [ + "success" + ], + "title": "SignalSuccessResponse" + }, + "SignalSettings": { + "type": "object", + "properties": { + "use_builtin_categories": { + "type": "boolean", + "description": "When false, scoring uses only the team's custom categories." + } + }, + "title": "SignalSettings" + }, + "SignalBuiltInCategory": { + "type": "object", + "properties": { + "id": { + "type": "integer" }, - "item": { - "$ref": "#/components/schemas/AudioSourceTracingsUuidGetResponsesContentApplicationJsonSchemaItem" + "name": { + "type": "string" + }, + "icon": { + "type": [ + "string", + "null" + ] + }, + "scenario_count": { + "type": "integer" + }, + "example_texts": { + "type": "array", + "items": { + "type": "string" + } } }, - "title": "Audio Source Tracing_getAudioSourceTracing_Response_200" + "title": "SignalBuiltInCategory" }, - "IdentitySummaryVisibility": { + "SignalCustomCategoryStatus": { "type": "string", "enum": [ - "team", - "global" + "pending", + "embedding", + "ready", + "needs_more_examples", + "failed" ], - "title": "IdentitySummaryVisibility" + "title": "SignalCustomCategoryStatus" }, - "IdentitySummaryIdentityType": { - "type": "string", - "enum": [ - "person", - "brand" - ], - "title": "IdentitySummaryIdentityType" + "SignalCustomCategoryOverlapsItems": { + "type": "object", + "properties": {}, + "title": "SignalCustomCategoryOverlapsItems" }, - "IdentitySummary": { + "SignalScenario": { "type": "object", "properties": { - "uuid": { + "id": { + "type": "integer" + }, + "text": { "type": "string" }, + "embedded": { + "type": "boolean", + "description": "Whether this example has finished embedding." + } + }, + "title": "SignalScenario" + }, + "SignalCustomCategory": { + "type": "object", + "properties": { + "id": { + "type": "integer" + }, "name": { "type": "string" }, - "created_at": { - "type": "string", - "format": "date-time" + "description": { + "type": [ + "string", + "null" + ] }, - "audio_url": { + "icon": { "type": [ "string", "null" - ], - "format": "uri", - "description": "URL of the first voice sample, if any" + ] }, - "visibility": { - "$ref": "#/components/schemas/IdentitySummaryVisibility" + "enabled": { + "type": "boolean", + "description": "Whether the category is included in scoring." }, - "identity_type": { - "$ref": "#/components/schemas/IdentitySummaryIdentityType" + "status": { + "$ref": "#/components/schemas/SignalCustomCategoryStatus" }, - "notes": { + "embed_error": { "type": [ "string", "null" - ] + ], + "description": "Error message when `status` is `failed`." }, - "voice_profile_id": { + "embedded_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" + }, + "scenario_count": { + "type": "integer" + }, + "embedding_model_version": { "type": [ "string", "null" ] }, - "updated_at": { - "type": "string", + "overlaps": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SignalCustomCategoryOverlapsItems" + }, + "description": "Calibration warnings where this category was confused with another." + }, + "scenarios": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SignalScenario" + } + } + }, + "title": "SignalCustomCategory" + }, + "SignalCalibrationWarningsItems": { + "type": "object", + "properties": {}, + "title": "SignalCalibrationWarningsItems" + }, + "SignalCalibration": { + "type": "object", + "properties": { + "status": { + "type": "string" + }, + "calibrated_at": { + "type": [ + "string", + "null" + ], "format": "date-time" }, - "project_count": { - "type": "integer" + "overall_recall": { + "type": [ + "number", + "null" + ], + "format": "double" + }, + "warnings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SignalCalibrationWarningsItems" + } } }, - "description": "Identity summary returned by the list and simple-create endpoints", - "title": "IdentitySummary" + "description": "Null until the team's categories have been calibrated.", + "title": "SignalCalibration" }, - "Identity_listIdentities_Response_200": { + "SignalCustomCategoryListResponse": { "type": "object", "properties": { "success": { "type": "boolean" }, - "page": { - "type": "integer" - }, - "num_pages": { - "type": "integer" - }, - "page_size": { - "type": "integer" + "settings": { + "$ref": "#/components/schemas/SignalSettings" }, - "total_count": { - "type": "integer" + "built_in_categories": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SignalBuiltInCategory" + } }, - "items": { + "custom_categories": { "type": "array", "items": { - "$ref": "#/components/schemas/IdentitySummary" + "$ref": "#/components/schemas/SignalCustomCategory" } + }, + "calibration": { + "$ref": "#/components/schemas/SignalCalibration" } }, - "title": "Identity_listIdentities_Response_200" + "required": [ + "success" + ], + "title": "SignalCustomCategoryListResponse" }, - "IdentityCreateIdentityRequest0": { + "SignalCustomCategoryCreateRequest": { "type": "object", "properties": { "name": { "type": "string", - "description": "Speaker name/identifier" + "description": "Category name. Must be unique within the team." + }, + "scenarios": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Example phrases that define the pattern. Maximum 50 entries, each up to 2000 characters. A newline-separated string is also accepted." + }, + "description": { + "type": "string" }, - "url": { + "icon": { "type": "string", - "format": "uri", - "description": "URL to an audio sample (one of url, audio, signed_id is required)" + "description": "Single emoji." }, - "signed_id": { - "type": "string", - "description": "Signed ID from a secure upload" + "enabled": { + "type": "boolean", + "default": true } }, "required": [ - "name" - ], - "title": "IdentityCreateIdentityRequest0" - }, - "IdentityPostRequestBodyContentApplicationJsonSchemaOneOf1IdentityIdentityType": { - "type": "string", - "enum": [ - "person", - "brand" + "name", + "scenarios" ], - "default": "person", - "title": "IdentityPostRequestBodyContentApplicationJsonSchemaOneOf1IdentityIdentityType" + "title": "SignalCustomCategoryCreateRequest" }, - "IdentityPostRequestBodyContentApplicationJsonSchemaOneOf1IdentityVisibility": { - "type": "string", - "enum": [ - "team", - "global" + "SignalCustomCategoryResponse": { + "type": "object", + "properties": { + "success": { + "type": "boolean" + }, + "item": { + "$ref": "#/components/schemas/SignalCustomCategory" + } + }, + "required": [ + "success", + "item" ], - "default": "team", - "title": "IdentityPostRequestBodyContentApplicationJsonSchemaOneOf1IdentityVisibility" + "title": "SignalCustomCategoryResponse" }, - "IdentityPostRequestBodyContentApplicationJsonSchemaOneOf1Identity": { + "SignalCustomCategoryUpdateRequest": { "type": "object", "properties": { "name": { "type": "string" }, - "identity_type": { - "$ref": "#/components/schemas/IdentityPostRequestBodyContentApplicationJsonSchemaOneOf1IdentityIdentityType" - }, - "visibility": { - "$ref": "#/components/schemas/IdentityPostRequestBodyContentApplicationJsonSchemaOneOf1IdentityVisibility" + "scenarios": { + "type": "array", + "items": { + "type": "string" + } }, - "notes": { + "description": { "type": "string" }, - "voice_profile_id": { + "icon": { "type": "string" + }, + "enabled": { + "type": "boolean" } }, - "required": [ - "name" - ], - "title": "IdentityPostRequestBodyContentApplicationJsonSchemaOneOf1Identity" + "description": "Any subset of the create parameters. Supplying `scenarios` replaces the existing set and re-triggers embedding.", + "title": "SignalCustomCategoryUpdateRequest" }, - "IdentityCreateIdentityRequest1": { + "SignalSettingsUpdateRequest": { "type": "object", "properties": { - "identity": { - "$ref": "#/components/schemas/IdentityPostRequestBodyContentApplicationJsonSchemaOneOf1Identity" + "use_builtin_categories": { + "type": "boolean", + "description": "When false, scoring uses only the team's custom categories." + } + }, + "title": "SignalSettingsUpdateRequest" + }, + "SignalSettingsResponse": { + "type": "object", + "properties": { + "success": { + "type": "boolean" + }, + "settings": { + "$ref": "#/components/schemas/SignalSettings" } }, "required": [ - "identity" + "success", + "settings" ], - "title": "IdentityCreateIdentityRequest1" + "title": "SignalSettingsResponse" }, - "Identity_createIdentity_Request": { - "oneOf": [ - { - "$ref": "#/components/schemas/IdentityCreateIdentityRequest0" + "Secure Uploads_createSecureUpload_Response_200": { + "type": "object", + "properties": { + "success": { + "type": "boolean" }, - { - "$ref": "#/components/schemas/IdentityCreateIdentityRequest1" + "token": { + "type": "string", + "description": "JWT referencing the uploaded file. Valid for 1 hour. Pass this value as `media_token` on downstream requests." } + }, + "title": "Secure Uploads_createSecureUpload_Response_200" + }, + "SynthesizePostRequestBodyContentApplicationJsonSchemaPrecision": { + "type": "string", + "enum": [ + "MULAW", + "PCM_16", + "PCM_24", + "PCM_32" ], - "title": "Identity_createIdentity_Request" + "default": "PCM_32", + "description": "Audio precision for WAV output", + "title": "SynthesizePostRequestBodyContentApplicationJsonSchemaPrecision" }, - "Identity_createIdentity_Response_200": { + "SynthesizePostRequestBodyContentApplicationJsonSchemaOutputFormat": { + "type": "string", + "enum": [ + "wav", + "mp3" + ], + "default": "wav", + "description": "Audio output format", + "title": "SynthesizePostRequestBodyContentApplicationJsonSchemaOutputFormat" + }, + "SynthesizePostRequestBodyContentApplicationJsonSchemaSampleRate": { + "type": "string", + "enum": [ + "8000", + "16000", + "22050", + "32000", + "44100", + "48000" + ], + "description": "Audio sample rate in Hz", + "title": "SynthesizePostRequestBodyContentApplicationJsonSchemaSampleRate" + }, + "AudioTimestamps": { "type": "object", "properties": { - "success": { - "type": "boolean", - "description": "Whether the voice was enrolled for matching immediately" + "graph_chars": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Grapheme characters" }, - "item": { - "$ref": "#/components/schemas/IdentitySummary" + "graph_times": { + "type": "array", + "items": { + "type": "array", + "items": { + "type": "number", + "format": "double" + } + }, + "description": "Grapheme timestamps [start, end] in seconds" + }, + "phon_chars": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Phoneme characters" + }, + "phon_times": { + "type": "array", + "items": { + "type": "array", + "items": { + "type": "number", + "format": "double" + } + }, + "description": "Phoneme timestamps [start, end] in seconds" } }, - "title": "Identity_createIdentity_Response_200" + "title": "AudioTimestamps" }, - "Identity_deleteIdentity_Response_200": { + "Text-to-Speech_synthesize_Response_200": { "type": "object", "properties": { "success": { "type": "boolean" + }, + "audio_content": { + "type": "string", + "format": "byte", + "description": "Base64-encoded audio bytes" + }, + "audio_timestamps": { + "$ref": "#/components/schemas/AudioTimestamps" + }, + "duration": { + "type": "number", + "format": "double", + "description": "Audio duration in seconds" + }, + "synth_duration": { + "type": "number", + "format": "double", + "description": "Raw synthesis time" + }, + "output_format": { + "type": "string" + }, + "sample_rate": { + "type": "integer" + }, + "title": { + "type": "string" + }, + "issues": { + "type": "array", + "items": { + "type": "string" + } } }, - "title": "Identity_deleteIdentity_Response_200" + "title": "Text-to-Speech_synthesize_Response_200" }, - "IdentityUuidAttachmentsPostRequestBodyContentMultipartFormDataSchemaModality": { + "StreamPostRequestBodyContentApplicationJsonSchemaPrecision": { "type": "string", "enum": [ - "voice", - "face", - "video" + "MULAW", + "PCM_16", + "PCM_24", + "PCM_32" ], - "title": "IdentityUuidAttachmentsPostRequestBodyContentMultipartFormDataSchemaModality" + "default": "PCM_32", + "description": "Audio precision", + "title": "StreamPostRequestBodyContentApplicationJsonSchemaPrecision" }, - "IdentityIdentityType": { + "StreamPostRequestBodyContentApplicationJsonSchemaSampleRate": { "type": "string", "enum": [ - "person", - "brand" + "8000", + "16000", + "22050", + "32000", + "44100", + "48000" ], - "title": "IdentityIdentityType" + "description": "Audio sample rate in Hz", + "title": "StreamPostRequestBodyContentApplicationJsonSchemaSampleRate" }, - "IdentityVisibility": { - "type": "string", - "enum": [ - "team", - "global" - ], - "title": "IdentityVisibility" + "SpeechToTextGetResponsesContentApplicationJsonSchemaItemsItems": { + "type": "object", + "properties": { + "uuid": { + "type": "string", + "format": "uuid" + }, + "status": { + "type": "string" + }, + "duration_seconds": { + "type": "number", + "format": "double" + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + } + }, + "title": "SpeechToTextGetResponsesContentApplicationJsonSchemaItemsItems" }, - "IdentityAttachment": { + "SpeechToTextGetResponsesContentApplicationJsonSchemaMeta": { "type": "object", "properties": { - "id": { + "page": { "type": "integer" }, - "filename": { - "type": "string" + "per_page": { + "type": "integer" }, - "byte_size": { + "total_pages": { "type": "integer" }, - "content_type": { - "type": "string" + "total_items": { + "type": "integer" } }, - "description": "A reference media file attached to an identity", - "title": "IdentityAttachment" + "title": "SpeechToTextGetResponsesContentApplicationJsonSchemaMeta" }, - "IdentityEmbeddingsItemsModality": { + "Speech-to-Text_listTranscripts_Response_200": { + "type": "object", + "properties": { + "success": { + "type": "boolean" + }, + "items": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SpeechToTextGetResponsesContentApplicationJsonSchemaItemsItems" + } + }, + "meta": { + "$ref": "#/components/schemas/SpeechToTextGetResponsesContentApplicationJsonSchemaMeta" + } + }, + "title": "Speech-to-Text_listTranscripts_Response_200" + }, + "SpeechToTextPostResponsesContentApplicationJsonSchemaItemStatus": { "type": "string", "enum": [ - "voice", - "face", - "video" + "pending", + "processing", + "completed", + "failed" ], - "title": "IdentityEmbeddingsItemsModality" + "title": "SpeechToTextPostResponsesContentApplicationJsonSchemaItemStatus" }, - "IdentityEmbeddingsItems": { + "SpeechToTextPostResponsesContentApplicationJsonSchemaItem": { "type": "object", "properties": { - "modality": { - "$ref": "#/components/schemas/IdentityEmbeddingsItemsModality" + "uuid": { + "type": "string", + "format": "uuid" }, "status": { - "type": "string" + "$ref": "#/components/schemas/SpeechToTextPostResponsesContentApplicationJsonSchemaItemStatus" }, - "attachment_count": { - "type": "integer" + "privacy_mode": { + "type": "boolean", + "description": "Whether the transcript was created with zero retention" }, - "computed_at": { - "type": [ - "string", - "null" - ], + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", "format": "date-time" } }, - "title": "IdentityEmbeddingsItems" + "title": "SpeechToTextPostResponsesContentApplicationJsonSchemaItem" }, - "IdentityProjectsItems": { + "Speech-to-Text_createTranscript_Response_200": { "type": "object", "properties": { - "uuid": { + "success": { + "type": "boolean" + }, + "item": { + "$ref": "#/components/schemas/SpeechToTextPostResponsesContentApplicationJsonSchemaItem" + } + }, + "title": "Speech-to-Text_createTranscript_Response_200" + }, + "SpeechToTextUuidGetResponsesContentApplicationJsonSchemaItemStatus": { + "type": "string", + "enum": [ + "pending", + "processing", + "completed", + "failed" + ], + "title": "SpeechToTextUuidGetResponsesContentApplicationJsonSchemaItemStatus" + }, + "SpeechToTextUuidGetResponsesContentApplicationJsonSchemaItemWordsItems": { + "type": "object", + "properties": { + "text": { "type": "string" }, - "name": { + "start_time": { + "type": "number", + "format": "double" + }, + "end_time": { + "type": "number", + "format": "double" + }, + "speaker_id": { "type": "string" } }, - "title": "IdentityProjectsItems" + "title": "SpeechToTextUuidGetResponsesContentApplicationJsonSchemaItemWordsItems" }, - "Identity": { + "SpeechToTextUuidGetResponsesContentApplicationJsonSchemaItem": { "type": "object", "properties": { "uuid": { - "type": "string" + "type": "string", + "format": "uuid" }, - "name": { + "status": { + "$ref": "#/components/schemas/SpeechToTextUuidGetResponsesContentApplicationJsonSchemaItemStatus" + }, + "text": { + "type": "string", + "description": "Absent for zero-retention transcripts after the content purge" + }, + "words": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SpeechToTextUuidGetResponsesContentApplicationJsonSchemaItemWordsItems" + } + }, + "duration_seconds": { + "type": "number", + "format": "double" + }, + "file_url": { + "type": "string", + "format": "uri", + "description": "Absent once the media has been deleted (zero retention)" + }, + "query": { "type": "string" }, - "identity_type": { - "$ref": "#/components/schemas/IdentityIdentityType" + "answer": { + "type": "string" }, - "visibility": { - "$ref": "#/components/schemas/IdentityVisibility" + "privacy_mode": { + "type": "boolean", + "description": "Whether the transcript was created with zero retention" }, - "notes": { - "type": [ - "string", - "null" - ] + "file_deleted_at": { + "type": "string", + "format": "date-time", + "description": "When the uploaded media was permanently deleted (zero retention)" }, - "voice_profile_id": { - "type": [ - "string", - "null" - ] + "content_deleted_at": { + "type": "string", + "format": "date-time", + "description": "When the transcript content was permanently purged (zero retention)" }, "created_at": { "type": "string", @@ -8018,222 +11005,123 @@ "updated_at": { "type": "string", "format": "date-time" - }, - "project_count": { - "type": "integer" - }, - "voice_samples": { - "type": "array", - "items": { - "$ref": "#/components/schemas/IdentityAttachment" - } - }, - "face_photos": { - "type": "array", - "items": { - "$ref": "#/components/schemas/IdentityAttachment" - } - }, - "reference_videos": { - "type": "array", - "items": { - "$ref": "#/components/schemas/IdentityAttachment" - } - }, - "embeddings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/IdentityEmbeddingsItems" - }, - "description": "Per-modality embedding processing status" - }, - "projects": { - "type": "array", - "items": { - "$ref": "#/components/schemas/IdentityProjectsItems" - } } }, - "description": "A multimodal identity profile", - "title": "Identity" + "title": "SpeechToTextUuidGetResponsesContentApplicationJsonSchemaItem" }, - "Identity_deleteIdentityAttachment_Response_204": { + "Speech-to-Text_getTranscript_Response_200": { "type": "object", - "properties": {}, - "description": "Empty response body", - "title": "Identity_deleteIdentityAttachment_Response_204" - }, - "IdentitySearchPostRequestBodyContentApplicationJsonSchemaModality": { - "type": "string", - "enum": [ - "audio", - "image" - ], - "description": "Inferred from the media's content type when omitted (defaults to audio)", - "title": "IdentitySearchPostRequestBodyContentApplicationJsonSchemaModality" - }, - "IdentitySearchPostResponsesContentApplicationJsonSchemaModality": { - "type": "string", - "enum": [ - "audio", - "image" - ], - "title": "IdentitySearchPostResponsesContentApplicationJsonSchemaModality" + "properties": { + "success": { + "type": "boolean" + }, + "item": { + "$ref": "#/components/schemas/SpeechToTextUuidGetResponsesContentApplicationJsonSchemaItem" + } + }, + "title": "Speech-to-Text_getTranscript_Response_200" }, - "IdentitySearchPostResponsesContentApplicationJsonSchemaItem": { + "SpeechToTextUuidAskPostResponsesContentApplicationJsonSchemaItem": { "type": "object", "properties": { - "name": { - "type": "string" + "uuid": { + "type": "string", + "format": "uuid" }, - "distance": { - "type": "number", - "format": "double" + "transcript_uuid": { + "type": "string", + "format": "uuid" }, - "score_type": { + "query": { + "type": "string" + }, + "status": { "type": "string" + }, + "created_at": { + "type": "string", + "format": "date-time" } }, - "title": "IdentitySearchPostResponsesContentApplicationJsonSchemaItem" + "title": "SpeechToTextUuidAskPostResponsesContentApplicationJsonSchemaItem" }, - "Identity_searchIdentities_Response_200": { + "Speech-to-Text_askTranscriptQuestion_Response_200": { "type": "object", "properties": { "success": { "type": "boolean" }, - "modality": { - "$ref": "#/components/schemas/IdentitySearchPostResponsesContentApplicationJsonSchemaModality" - }, "item": { - "type": "object", - "additionalProperties": { - "$ref": "#/components/schemas/IdentitySearchPostResponsesContentApplicationJsonSchemaItem" - }, - "description": "Matches keyed by identity UUID. distance is a 0-100 match score (higher is closer; an identical sample scores 100). Image matches include score_type \"cosine\".\n" + "$ref": "#/components/schemas/SpeechToTextUuidAskPostResponsesContentApplicationJsonSchemaItem" } }, - "title": "Identity_searchIdentities_Response_200" - }, - "WatermarkApplyPostParametersPrefer": { - "type": "string", - "enum": [ - "wait" - ], - "title": "WatermarkApplyPostParametersPrefer" + "title": "Speech-to-Text_askTranscriptQuestion_Response_200" }, - "WatermarkApplyRequest": { + "SpeechToTextUuidQuestionsGetResponsesContentApplicationJsonSchemaItemsItems": { "type": "object", "properties": { - "url": { + "uuid": { "type": "string", - "format": "uri", - "description": "Public HTTPS URL to the audio, image, or video source." + "format": "uuid" }, - "strength": { - "type": "number", - "format": "double", - "default": 0.2, - "description": "Watermark strength for image/video. Ignored for audio." + "query": { + "type": "string" }, - "custom_message": { + "answer": { + "type": "string" + }, + "status": { + "type": "string" + }, + "created_at": { "type": "string", - "default": "resembleai", - "description": "Message to embed in image/video. Ignored for audio." + "format": "date-time" } }, - "required": [ - "url" - ], - "title": "WatermarkApplyRequest" - }, - "WatermarkApplyItemMediaType": { - "type": "string", - "enum": [ - "audio", - "image", - "video" - ], - "description": "Detected media type of the source file.", - "title": "WatermarkApplyItemMediaType" - }, - "WatermarkApplyItemOperationType": { - "type": "string", - "enum": [ - "apply" - ], - "title": "WatermarkApplyItemOperationType" - }, - "WatermarkApplyItemStatus": { - "type": "string", - "enum": [ - "pending", - "processing", - "completed", - "failed" - ], - "title": "WatermarkApplyItemStatus" + "title": "SpeechToTextUuidQuestionsGetResponsesContentApplicationJsonSchemaItemsItems" }, - "WatermarkApplyItemModelVersion": { - "type": "string", - "enum": [ - "perth_v2" - ], - "title": "WatermarkApplyItemModelVersion" + "SpeechToTextUuidQuestionsGetResponsesContentApplicationJsonSchemaMeta": { + "type": "object", + "properties": {}, + "title": "SpeechToTextUuidQuestionsGetResponsesContentApplicationJsonSchemaMeta" }, - "WatermarkApplyMetrics": { + "Speech-to-Text_listTranscriptQuestions_Response_200": { "type": "object", "properties": { - "strength": { - "type": "number", - "format": "double" + "success": { + "type": "boolean" }, - "custom_message": { - "type": "string" + "items": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SpeechToTextUuidQuestionsGetResponsesContentApplicationJsonSchemaItemsItems" + } }, - "message_bits_length": { - "type": [ - "integer", - "null" - ] + "meta": { + "$ref": "#/components/schemas/SpeechToTextUuidQuestionsGetResponsesContentApplicationJsonSchemaMeta" } }, - "description": "Apply metadata for image/video. Audio apply metrics are null.", - "title": "WatermarkApplyMetrics" + "title": "Speech-to-Text_listTranscriptQuestions_Response_200" }, - "WatermarkApplyItem": { + "SpeechToTextUuidQuestionsQuestionUuidGetResponsesContentApplicationJsonSchemaItem": { "type": "object", "properties": { "uuid": { - "type": "string" - }, - "media_type": { - "$ref": "#/components/schemas/WatermarkApplyItemMediaType", - "description": "Detected media type of the source file." - }, - "operation_type": { - "$ref": "#/components/schemas/WatermarkApplyItemOperationType" - }, - "status": { - "$ref": "#/components/schemas/WatermarkApplyItemStatus" - }, - "model_version": { - "$ref": "#/components/schemas/WatermarkApplyItemModelVersion" + "type": "string", + "format": "uuid" }, - "source_media_url": { + "transcript_uuid": { "type": "string", - "format": "uri" + "format": "uuid" }, - "watermarked_media": { - "type": [ - "string", - "null" - ], - "format": "uri", - "description": "Signed output URL when processing is complete." + "query": { + "type": "string" }, - "metrics": { - "$ref": "#/components/schemas/WatermarkApplyMetrics" + "answer": { + "type": "string" + }, + "status": { + "type": "string" }, "created_at": { "type": "string", @@ -8244,860 +11132,710 @@ "format": "date-time" } }, - "required": [ - "uuid", - "media_type", - "operation_type", - "status", - "model_version", - "source_media_url", - "created_at", - "updated_at" - ], - "title": "WatermarkApplyItem" + "title": "SpeechToTextUuidQuestionsQuestionUuidGetResponsesContentApplicationJsonSchemaItem" }, - "WatermarkApplyResponse": { + "Speech-to-Text_getTranscriptQuestion_Response_200": { "type": "object", "properties": { "success": { "type": "boolean" }, "item": { - "$ref": "#/components/schemas/WatermarkApplyItem" - } - }, - "required": [ - "success", - "item" - ], - "title": "WatermarkApplyResponse" - }, - "WatermarkDetectPostParametersPrefer": { - "type": "string", - "enum": [ - "wait" - ], - "title": "WatermarkDetectPostParametersPrefer" - }, - "WatermarkDetectRequest": { - "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri", - "description": "Public HTTPS URL to the audio, image, or video source." - }, - "custom_message": { - "type": "string", - "default": "resembleai", - "description": "Message used when applying the image/video watermark. Ignored for audio." + "$ref": "#/components/schemas/SpeechToTextUuidQuestionsQuestionUuidGetResponsesContentApplicationJsonSchemaItem" } }, - "required": [ - "url" - ], - "title": "WatermarkDetectRequest" - }, - "WatermarkDetectItemMediaType": { - "type": "string", - "enum": [ - "audio", - "image", - "video" - ], - "title": "WatermarkDetectItemMediaType" - }, - "WatermarkDetectItemOperationType": { - "type": "string", - "enum": [ - "detect" - ], - "title": "WatermarkDetectItemOperationType" - }, - "WatermarkDetectItemStatus": { - "type": "string", - "enum": [ - "pending", - "processing", - "completed", - "failed" - ], - "title": "WatermarkDetectItemStatus" - }, - "WatermarkDetectItemModelVersion": { - "type": "string", - "enum": [ - "perth_v2" - ], - "description": "Present for image/video. Audio versions are reported in metrics.model_results.", - "title": "WatermarkDetectItemModelVersion" - }, - "WatermarkAudioDetectionMetricsOverallStatus": { - "type": "string", - "enum": [ - "present", - "absent", - "inconclusive" - ], - "title": "WatermarkAudioDetectionMetricsOverallStatus" - }, - "WatermarkAudioDetectionMetricsDetectedModelVersionsItems": { - "type": "string", - "enum": [ - "perth_v1", - "perth_v2" - ], - "title": "WatermarkAudioDetectionMetricsDetectedModelVersionsItems" + "title": "Speech-to-Text_getTranscriptQuestion_Response_200" }, - "WatermarkAudioModelResultModelVersion": { + "AudioEnhancementsGetResponsesContentApplicationJsonSchemaItemsItemsStatus": { "type": "string", "enum": [ - "perth_v1", - "perth_v2" + "pending", + "processing", + "completed", + "failed" ], - "title": "WatermarkAudioModelResultModelVersion" + "title": "AudioEnhancementsGetResponsesContentApplicationJsonSchemaItemsItemsStatus" }, - "WatermarkAudioModelResultStatus": { + "AudioEnhancementsGetResponsesContentApplicationJsonSchemaItemsItemsEnhancementEngine": { "type": "string", "enum": [ - "succeeded", - "failed" + "v1", + "v2" ], - "title": "WatermarkAudioModelResultStatus" + "title": "AudioEnhancementsGetResponsesContentApplicationJsonSchemaItemsItemsEnhancementEngine" }, - "WatermarkAudioModelResult": { + "AudioEnhancementsGetResponsesContentApplicationJsonSchemaItemsItems": { "type": "object", "properties": { - "model_version": { - "$ref": "#/components/schemas/WatermarkAudioModelResultModelVersion" + "uuid": { + "type": "string" }, "status": { - "$ref": "#/components/schemas/WatermarkAudioModelResultStatus" + "$ref": "#/components/schemas/AudioEnhancementsGetResponsesContentApplicationJsonSchemaItemsItemsStatus" }, - "detected": { + "enhancement_engine": { + "$ref": "#/components/schemas/AudioEnhancementsGetResponsesContentApplicationJsonSchemaItemsItemsEnhancementEngine" + }, + "error_message": { "type": [ - "boolean", + "string", "null" - ], - "description": "Null when this detector was unavailable." + ] }, - "has_watermark": { - "type": "object", - "additionalProperties": { - "type": "boolean" - }, - "description": "Successful per-channel detection results." + "remove_noise": { + "type": "boolean", + "description": "Engine v2 only." }, - "confidence": { - "type": [ - "number", - "null" - ], - "format": "double" + "normalize": { + "type": "boolean", + "description": "Engine v2 only." }, - "error": { + "studio_sound": { + "type": "boolean", + "description": "Engine v2 only." + }, + "loudness_target_level": { + "type": "integer", + "description": "Engine v1 only." + }, + "loudness_peak_limit": { + "type": "integer", + "description": "Engine v1 only." + }, + "enhancement_level": { + "type": "number", + "format": "double", + "description": "Engine v1 only." + }, + "original_audio_url": { "type": "string", - "description": "Safe error message when status is failed." + "format": "uri" + }, + "enhanced_audio_url": { + "type": "string", + "format": "uri" } }, - "required": [ - "model_version", - "status", - "detected" - ], - "title": "WatermarkAudioModelResult" + "title": "AudioEnhancementsGetResponsesContentApplicationJsonSchemaItemsItems" }, - "WatermarkAudioDetectionMetrics": { + "Audio Enhancement_listAudioEnhancements_Response_200": { "type": "object", "properties": { - "overall_status": { - "$ref": "#/components/schemas/WatermarkAudioDetectionMetricsOverallStatus" + "success": { + "type": "boolean" }, - "detected_model_versions": { - "type": "array", - "items": { - "$ref": "#/components/schemas/WatermarkAudioDetectionMetricsDetectedModelVersionsItems" - }, - "description": "Only model versions that positively detected a watermark." + "page": { + "type": "integer" }, - "coverage_complete": { - "type": "boolean", - "description": "True only when both audio detectors completed successfully." + "num_pages": { + "type": "integer" }, - "has_watermark": { - "type": "object", - "additionalProperties": { - "type": "boolean" - }, - "description": "Per-channel aggregate across successful audio detectors." + "page_size": { + "type": "integer" }, - "confidence": { - "type": [ - "number", - "null" - ], - "format": "double" + "total_count": { + "type": "integer" }, - "model_results": { + "items": { "type": "array", "items": { - "$ref": "#/components/schemas/WatermarkAudioModelResult" + "$ref": "#/components/schemas/AudioEnhancementsGetResponsesContentApplicationJsonSchemaItemsItems" } } }, - "required": [ - "overall_status", - "detected_model_versions", - "coverage_complete", - "has_watermark", - "model_results" - ], - "title": "WatermarkAudioDetectionMetrics" - }, - "WatermarkVisionDetectionMetricsOverallStatus": { - "type": "string", - "enum": [ - "present", - "degraded", - "absent", - "inconclusive" - ], - "title": "WatermarkVisionDetectionMetricsOverallStatus" + "title": "Audio Enhancement_listAudioEnhancements_Response_200" }, - "WatermarkVisionDetectionMetricsDetectedModelVersionsItems": { - "type": "string", - "enum": [ - "perth_v2" - ], - "title": "WatermarkVisionDetectionMetricsDetectedModelVersionsItems" + "ListAudioEnhancementsRequestBadRequestError": { + "type": "object", + "properties": { + "success": { + "type": "boolean" + }, + "message": { + "type": "string" + } + }, + "title": "ListAudioEnhancementsRequestBadRequestError" }, - "WatermarkVisionModelResultModelVersion": { + "AudioEnhancementsPostRequestBodyContentMultipartFormDataSchemaEnhancementEngine": { "type": "string", "enum": [ - "perth_v2" + "v1", + "v2" ], - "title": "WatermarkVisionModelResultModelVersion" + "default": "v2", + "description": "Enhancement engine to use. Default is v2.", + "title": "AudioEnhancementsPostRequestBodyContentMultipartFormDataSchemaEnhancementEngine" }, - "WatermarkVisionModelResultStatus": { + "AudioEnhancementsPostResponsesContentApplicationJsonSchemaStatus": { "type": "string", "enum": [ - "succeeded" + "pending" ], - "title": "WatermarkVisionModelResultStatus" + "title": "AudioEnhancementsPostResponsesContentApplicationJsonSchemaStatus" }, - "WatermarkVisionModelResult": { + "Audio Enhancement_createAudioEnhancement_Response_202": { "type": "object", "properties": { - "model_version": { - "$ref": "#/components/schemas/WatermarkVisionModelResultModelVersion" - }, - "status": { - "$ref": "#/components/schemas/WatermarkVisionModelResultStatus" - }, - "detected": { + "success": { "type": "boolean" }, - "confidence": { - "type": [ - "number", - "null" - ], - "format": "double" + "uuid": { + "type": "string" + }, + "status": { + "$ref": "#/components/schemas/AudioEnhancementsPostResponsesContentApplicationJsonSchemaStatus" } }, - "required": [ - "model_version", - "status", - "detected" - ], - "title": "WatermarkVisionModelResult" - }, - "WatermarkVisionDetectionMetricsVerdict": { - "type": "string", - "enum": [ - "verified", - "degraded", - "not_watermarked" - ], - "description": "Backward-compatible image/video verdict.", - "title": "WatermarkVisionDetectionMetricsVerdict" + "title": "Audio Enhancement_createAudioEnhancement_Response_202" }, - "WatermarkVisionDetectionMetrics": { + "CreateAudioEnhancementRequestBadRequestError": { "type": "object", "properties": { - "overall_status": { - "$ref": "#/components/schemas/WatermarkVisionDetectionMetricsOverallStatus" - }, - "detected_model_versions": { - "type": "array", - "items": { - "$ref": "#/components/schemas/WatermarkVisionDetectionMetricsDetectedModelVersionsItems" - }, - "description": "Contains perth_v2 only when watermark signal is detected." - }, - "has_watermark": { - "type": "boolean" - }, - "detection_score": { - "type": [ - "number", - "null" - ], - "format": "double" - }, - "model_results": { - "type": "array", - "items": { - "$ref": "#/components/schemas/WatermarkVisionModelResult" - } - }, - "verdict": { - "oneOf": [ - { - "$ref": "#/components/schemas/WatermarkVisionDetectionMetricsVerdict" - }, - { - "type": "null" - } - ], - "description": "Backward-compatible image/video verdict." - }, - "synthid": { - "type": "boolean", - "description": "Optional auxiliary SynthID signal for images." + "success": { + "type": "boolean" + }, + "message": { + "type": "string" } }, - "required": [ - "overall_status", - "detected_model_versions", - "has_watermark", - "detection_score", - "model_results" - ], - "title": "WatermarkVisionDetectionMetrics" + "title": "CreateAudioEnhancementRequestBadRequestError" }, - "WatermarkDetectItemMetrics": { - "oneOf": [ - { - "$ref": "#/components/schemas/WatermarkAudioDetectionMetrics" + "CreateAudioEnhancementRequestForbiddenError": { + "type": "object", + "properties": { + "success": { + "type": "boolean" }, - { - "$ref": "#/components/schemas/WatermarkVisionDetectionMetrics" + "message": { + "type": "string" } + }, + "title": "CreateAudioEnhancementRequestForbiddenError" + }, + "AudioEnhancementsEnhancementUuidGetResponsesContentApplicationJsonSchemaStatus": { + "type": "string", + "enum": [ + "pending", + "processing", + "completed", + "failed" ], - "description": "Null while processing. New results use the media-specific versioned schema; historical audio results can use a flat shape.", - "title": "WatermarkDetectItemMetrics" + "title": "AudioEnhancementsEnhancementUuidGetResponsesContentApplicationJsonSchemaStatus" }, - "WatermarkDetectItem": { + "Audio Enhancement_getAudioEnhancement_Response_200": { "type": "object", "properties": { + "success": { + "type": "boolean" + }, "uuid": { "type": "string" }, - "media_type": { - "$ref": "#/components/schemas/WatermarkDetectItemMediaType" - }, - "operation_type": { - "$ref": "#/components/schemas/WatermarkDetectItemOperationType" - }, "status": { - "$ref": "#/components/schemas/WatermarkDetectItemStatus" - }, - "model_version": { - "$ref": "#/components/schemas/WatermarkDetectItemModelVersion", - "description": "Present for image/video. Audio versions are reported in metrics.model_results." - }, - "source_media_url": { - "type": "string", - "format": "uri" - }, - "metrics": { - "oneOf": [ - { - "$ref": "#/components/schemas/WatermarkDetectItemMetrics" - }, - { - "type": "null" - } - ], - "description": "Null while processing. New results use the media-specific versioned schema; historical audio results can use a flat shape." + "$ref": "#/components/schemas/AudioEnhancementsEnhancementUuidGetResponsesContentApplicationJsonSchemaStatus" }, - "watermarked_media": { + "enhanced_audio_url": { "type": [ "string", "null" ], "format": "uri", - "description": "Detection does not produce output media." - }, - "created_at": { - "type": "string", - "format": "date-time" + "description": "Download URL. Only present when status is completed. This is a temporary signed URL." }, - "updated_at": { - "type": "string", - "format": "date-time" + "error_message": { + "type": [ + "string", + "null" + ], + "description": "Human-readable error. Only present when status is failed." } }, - "required": [ - "uuid", - "media_type", - "operation_type", - "status", - "source_media_url", - "created_at", - "updated_at" - ], - "title": "WatermarkDetectItem" + "title": "Audio Enhancement_getAudioEnhancement_Response_200" }, - "WatermarkDetectResponse": { + "GetAudioEnhancementRequestNotFoundError": { "type": "object", "properties": { "success": { "type": "boolean" }, - "item": { - "$ref": "#/components/schemas/WatermarkDetectItem" + "message": { + "type": "string" } }, - "required": [ - "success", - "item" - ], - "title": "WatermarkDetectResponse" + "title": "GetAudioEnhancementRequestNotFoundError" }, - "Secure Uploads_createSecureUpload_Response_200": { + "VoicesGetResponsesContentApplicationJsonSchemaItemsItems": { "type": "object", "properties": { - "success": { - "type": "boolean" + "uuid": { + "type": "string" }, - "token": { + "name": { + "type": "string" + }, + "status": { + "type": "string" + }, + "created_at": { "type": "string", - "description": "JWT referencing the uploaded file. Valid for 1 hour. Pass this value as `media_token` on downstream requests." + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + }, + "default_language": { + "type": "string" + }, + "voice_type": { + "type": "string" + }, + "voice_status": { + "type": "string" + }, + "supported_languages": { + "type": "array", + "items": { + "type": "string" + } + }, + "component_status": { + "type": "object", + "properties": { + "text_to_speech": { + "type": "object", + "properties": { + "status": { + "type": "string" + } + }, + "title": "VoicesComponentStatusTextToSpeech" + }, + "fill": { + "type": "object", + "properties": { + "status": { + "type": "string" + } + }, + "title": "VoicesComponentStatusFill" + }, + "voice_conversion": { + "type": "object", + "properties": { + "status": { + "type": "string" + } + }, + "title": "VoicesComponentStatusVoiceConversion" + } + }, + "title": "VoicesComponentStatus" + }, + "api_support": { + "type": "object", + "properties": { + "sync": { + "type": "boolean" + }, + "async": { + "type": "boolean" + }, + "direct_synthesis": { + "type": "boolean" + }, + "streaming": { + "type": "boolean" + } + }, + "title": "VoicesApiSupport" + }, + "source": { + "type": "string" } }, - "title": "Secure Uploads_createSecureUpload_Response_200" - }, - "SynthesizePostRequestBodyContentApplicationJsonSchemaPrecision": { - "type": "string", - "enum": [ - "MULAW", - "PCM_16", - "PCM_24", - "PCM_32" - ], - "default": "PCM_32", - "description": "Audio precision for WAV output", - "title": "SynthesizePostRequestBodyContentApplicationJsonSchemaPrecision" - }, - "SynthesizePostRequestBodyContentApplicationJsonSchemaOutputFormat": { - "type": "string", - "enum": [ - "wav", - "mp3" - ], - "default": "wav", - "description": "Audio output format", - "title": "SynthesizePostRequestBodyContentApplicationJsonSchemaOutputFormat" + "title": "VoicesGetResponsesContentApplicationJsonSchemaItemsItems" }, - "SynthesizePostRequestBodyContentApplicationJsonSchemaSampleRate": { - "type": "string", - "enum": [ - "8000", - "16000", - "22050", - "32000", - "44100", - "48000" - ], - "description": "Audio sample rate in Hz", - "title": "SynthesizePostRequestBodyContentApplicationJsonSchemaSampleRate" + "Voices_listVoices_Response_200": { + "type": "object", + "properties": { + "success": { + "type": "boolean" + }, + "page": { + "type": "integer" + }, + "num_pages": { + "type": "integer" + }, + "page_size": { + "type": "integer" + }, + "items": { + "type": "array", + "items": { + "$ref": "#/components/schemas/VoicesGetResponsesContentApplicationJsonSchemaItemsItems" + } + } + }, + "title": "Voices_listVoices_Response_200" }, - "AudioTimestamps": { + "VoicesPostResponsesContentApplicationJsonSchemaItem": { "type": "object", "properties": { - "graph_chars": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Grapheme characters" + "uuid": { + "type": "string" }, - "graph_times": { - "type": "array", - "items": { - "type": "array", - "items": { - "type": "number", - "format": "double" - } - }, - "description": "Grapheme timestamps [start, end] in seconds" + "name": { + "type": "string" }, - "phon_chars": { + "status": { + "type": "string" + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + }, + "default_language": { + "type": "string" + }, + "voice_type": { + "type": "string" + }, + "voice_status": { + "type": "string" + }, + "supported_languages": { "type": "array", "items": { "type": "string" + } + }, + "component_status": { + "type": "object", + "properties": { + "text_to_speech": { + "type": "object", + "properties": { + "status": { + "type": "string" + } + }, + "title": "VoicesComponentStatusTextToSpeech" + }, + "fill": { + "type": "object", + "properties": { + "status": { + "type": "string" + } + }, + "title": "VoicesComponentStatusFill" + }, + "voice_conversion": { + "type": "object", + "properties": { + "status": { + "type": "string" + } + }, + "title": "VoicesComponentStatusVoiceConversion" + } }, - "description": "Phoneme characters" + "title": "VoicesComponentStatus" }, - "phon_times": { - "type": "array", - "items": { - "type": "array", - "items": { - "type": "number", - "format": "double" + "api_support": { + "type": "object", + "properties": { + "sync": { + "type": "boolean" + }, + "async": { + "type": "boolean" + }, + "direct_synthesis": { + "type": "boolean" + }, + "streaming": { + "type": "boolean" } }, - "description": "Phoneme timestamps [start, end] in seconds" + "title": "VoicesApiSupport" + }, + "source": { + "type": "string" } }, - "title": "AudioTimestamps" + "title": "VoicesPostResponsesContentApplicationJsonSchemaItem" }, - "Text-to-Speech_synthesize_Response_200": { + "Voices_createVoice_Response_200": { "type": "object", "properties": { "success": { "type": "boolean" }, - "audio_content": { - "type": "string", - "format": "byte", - "description": "Base64-encoded audio bytes" + "item": { + "$ref": "#/components/schemas/VoicesPostResponsesContentApplicationJsonSchemaItem" + } + }, + "title": "Voices_createVoice_Response_200" + }, + "VoicesVoiceUuidGetResponsesContentApplicationJsonSchemaItem": { + "type": "object", + "properties": { + "uuid": { + "type": "string" }, - "audio_timestamps": { - "$ref": "#/components/schemas/AudioTimestamps" + "name": { + "type": "string" }, - "duration": { - "type": "number", - "format": "double", - "description": "Audio duration in seconds" + "status": { + "type": "string" }, - "synth_duration": { - "type": "number", - "format": "double", - "description": "Raw synthesis time" + "created_at": { + "type": "string", + "format": "date-time" }, - "output_format": { + "updated_at": { + "type": "string", + "format": "date-time" + }, + "default_language": { "type": "string" }, - "sample_rate": { - "type": "integer" + "voice_type": { + "type": "string" }, - "title": { + "voice_status": { "type": "string" }, - "issues": { + "supported_languages": { "type": "array", "items": { "type": "string" } + }, + "component_status": { + "type": "object", + "properties": { + "text_to_speech": { + "type": "object", + "properties": { + "status": { + "type": "string" + } + }, + "title": "VoicesComponentStatusTextToSpeech" + }, + "fill": { + "type": "object", + "properties": { + "status": { + "type": "string" + } + }, + "title": "VoicesComponentStatusFill" + }, + "voice_conversion": { + "type": "object", + "properties": { + "status": { + "type": "string" + } + }, + "title": "VoicesComponentStatusVoiceConversion" + } + }, + "title": "VoicesComponentStatus" + }, + "api_support": { + "type": "object", + "properties": { + "sync": { + "type": "boolean" + }, + "async": { + "type": "boolean" + }, + "direct_synthesis": { + "type": "boolean" + }, + "streaming": { + "type": "boolean" + } + }, + "title": "VoicesApiSupport" + }, + "source": { + "type": "string" } }, - "title": "Text-to-Speech_synthesize_Response_200" - }, - "StreamPostRequestBodyContentApplicationJsonSchemaPrecision": { - "type": "string", - "enum": [ - "MULAW", - "PCM_16", - "PCM_24", - "PCM_32" - ], - "default": "PCM_32", - "description": "Audio precision", - "title": "StreamPostRequestBodyContentApplicationJsonSchemaPrecision" - }, - "StreamPostRequestBodyContentApplicationJsonSchemaSampleRate": { - "type": "string", - "enum": [ - "8000", - "16000", - "22050", - "32000", - "44100", - "48000" - ], - "description": "Audio sample rate in Hz", - "title": "StreamPostRequestBodyContentApplicationJsonSchemaSampleRate" + "title": "VoicesVoiceUuidGetResponsesContentApplicationJsonSchemaItem" }, - "SpeechToTextGetResponsesContentApplicationJsonSchemaItemsItems": { + "Voices_getVoice_Response_200": { "type": "object", "properties": { - "uuid": { - "type": "string", - "format": "uuid" - }, - "status": { - "type": "string" - }, - "duration_seconds": { - "type": "number", - "format": "double" - }, - "created_at": { - "type": "string", - "format": "date-time" + "success": { + "type": "boolean" }, - "updated_at": { - "type": "string", - "format": "date-time" + "item": { + "$ref": "#/components/schemas/VoicesVoiceUuidGetResponsesContentApplicationJsonSchemaItem" } }, - "title": "SpeechToTextGetResponsesContentApplicationJsonSchemaItemsItems" + "title": "Voices_getVoice_Response_200" }, - "SpeechToTextGetResponsesContentApplicationJsonSchemaMeta": { + "Voices_deleteVoice_Response_200": { "type": "object", "properties": { - "page": { - "type": "integer" - }, - "per_page": { - "type": "integer" - }, - "total_pages": { - "type": "integer" - }, - "total_items": { - "type": "integer" + "success": { + "type": "boolean" } }, - "title": "SpeechToTextGetResponsesContentApplicationJsonSchemaMeta" + "title": "Voices_deleteVoice_Response_200" }, - "Speech-to-Text_listTranscripts_Response_200": { + "Voices_buildVoice_Response_200": { "type": "object", "properties": { "success": { "type": "boolean" }, - "items": { - "type": "array", - "items": { - "$ref": "#/components/schemas/SpeechToTextGetResponsesContentApplicationJsonSchemaItemsItems" - } - }, - "meta": { - "$ref": "#/components/schemas/SpeechToTextGetResponsesContentApplicationJsonSchemaMeta" + "message": { + "type": "string" } }, - "title": "Speech-to-Text_listTranscripts_Response_200" - }, - "SpeechToTextPostResponsesContentApplicationJsonSchemaItemStatus": { - "type": "string", - "enum": [ - "pending", - "processing", - "completed", - "failed" - ], - "title": "SpeechToTextPostResponsesContentApplicationJsonSchemaItemStatus" + "title": "Voices_buildVoice_Response_200" }, - "SpeechToTextPostResponsesContentApplicationJsonSchemaItem": { + "VoiceDesignPostResponsesContentApplicationJsonSchemaVoiceCandidatesItems": { "type": "object", "properties": { - "uuid": { + "audio_url": { "type": "string", - "format": "uuid" - }, - "status": { - "$ref": "#/components/schemas/SpeechToTextPostResponsesContentApplicationJsonSchemaItemStatus" - }, - "privacy_mode": { - "type": "boolean", - "description": "Whether the transcript was created with zero retention" + "format": "uri" }, - "created_at": { - "type": "string", - "format": "date-time" + "voice_sample_index": { + "type": "integer" }, - "updated_at": { - "type": "string", - "format": "date-time" + "uuid": { + "type": "string" } }, - "title": "SpeechToTextPostResponsesContentApplicationJsonSchemaItem" + "title": "VoiceDesignPostResponsesContentApplicationJsonSchemaVoiceCandidatesItems" }, - "Speech-to-Text_createTranscript_Response_200": { + "Voice Design_generateVoiceDesign_Response_200": { "type": "object", "properties": { - "success": { - "type": "boolean" - }, - "item": { - "$ref": "#/components/schemas/SpeechToTextPostResponsesContentApplicationJsonSchemaItem" + "voice_candidates": { + "type": "array", + "items": { + "$ref": "#/components/schemas/VoiceDesignPostResponsesContentApplicationJsonSchemaVoiceCandidatesItems" + } } }, - "title": "Speech-to-Text_createTranscript_Response_200" - }, - "SpeechToTextUuidGetResponsesContentApplicationJsonSchemaItemStatus": { - "type": "string", - "enum": [ - "pending", - "processing", - "completed", - "failed" - ], - "title": "SpeechToTextUuidGetResponsesContentApplicationJsonSchemaItemStatus" + "title": "Voice Design_generateVoiceDesign_Response_200" }, - "SpeechToTextUuidGetResponsesContentApplicationJsonSchemaItemWordsItems": { + "Voice Design_createVoiceFromCandidate_Response_200": { "type": "object", "properties": { - "text": { - "type": "string" - }, - "start_time": { - "type": "number", - "format": "double" - }, - "end_time": { - "type": "number", - "format": "double" + "success": { + "type": "boolean" }, - "speaker_id": { + "voice_uuid": { "type": "string" } }, - "title": "SpeechToTextUuidGetResponsesContentApplicationJsonSchemaItemWordsItems" + "title": "Voice Design_createVoiceFromCandidate_Response_200" }, - "SpeechToTextUuidGetResponsesContentApplicationJsonSchemaItem": { + "VoicesVoiceUuidRecordingsGetResponsesContentApplicationJsonSchemaItemsItems": { + "type": "object", + "properties": {}, + "title": "VoicesVoiceUuidRecordingsGetResponsesContentApplicationJsonSchemaItemsItems" + }, + "Recordings_listRecordings_Response_200": { "type": "object", "properties": { - "uuid": { - "type": "string", - "format": "uuid" - }, - "status": { - "$ref": "#/components/schemas/SpeechToTextUuidGetResponsesContentApplicationJsonSchemaItemStatus" - }, - "text": { - "type": "string", - "description": "Absent for zero-retention transcripts after the content purge" + "success": { + "type": "boolean" }, - "words": { + "items": { "type": "array", "items": { - "$ref": "#/components/schemas/SpeechToTextUuidGetResponsesContentApplicationJsonSchemaItemWordsItems" + "$ref": "#/components/schemas/VoicesVoiceUuidRecordingsGetResponsesContentApplicationJsonSchemaItemsItems" } - }, - "duration_seconds": { - "type": "number", - "format": "double" - }, - "file_url": { - "type": "string", - "format": "uri", - "description": "Absent once the media has been deleted (zero retention)" - }, - "query": { - "type": "string" - }, - "answer": { - "type": "string" - }, - "privacy_mode": { - "type": "boolean", - "description": "Whether the transcript was created with zero retention" - }, - "file_deleted_at": { - "type": "string", - "format": "date-time", - "description": "When the uploaded media was permanently deleted (zero retention)" - }, - "content_deleted_at": { - "type": "string", - "format": "date-time", - "description": "When the transcript content was permanently purged (zero retention)" - }, - "created_at": { - "type": "string", - "format": "date-time" - }, - "updated_at": { - "type": "string", - "format": "date-time" } }, - "title": "SpeechToTextUuidGetResponsesContentApplicationJsonSchemaItem" + "title": "Recordings_listRecordings_Response_200" }, - "Speech-to-Text_getTranscript_Response_200": { + "VoicesVoiceUuidRecordingsPostResponsesContentApplicationJsonSchemaItem": { + "type": "object", + "properties": {}, + "title": "VoicesVoiceUuidRecordingsPostResponsesContentApplicationJsonSchemaItem" + }, + "Recordings_createRecording_Response_200": { "type": "object", "properties": { "success": { "type": "boolean" }, "item": { - "$ref": "#/components/schemas/SpeechToTextUuidGetResponsesContentApplicationJsonSchemaItem" + "$ref": "#/components/schemas/VoicesVoiceUuidRecordingsPostResponsesContentApplicationJsonSchemaItem" } }, - "title": "Speech-to-Text_getTranscript_Response_200" + "title": "Recordings_createRecording_Response_200" }, - "SpeechToTextUuidAskPostResponsesContentApplicationJsonSchemaItem": { + "VoicesVoiceUuidRecordingsRecordingIdGetResponsesContentApplicationJsonSchemaItem": { + "type": "object", + "properties": {}, + "title": "VoicesVoiceUuidRecordingsRecordingIdGetResponsesContentApplicationJsonSchemaItem" + }, + "Recordings_getRecording_Response_200": { "type": "object", "properties": { - "uuid": { - "type": "string", - "format": "uuid" - }, - "transcript_uuid": { - "type": "string", - "format": "uuid" - }, - "query": { - "type": "string" - }, - "status": { - "type": "string" + "success": { + "type": "boolean" }, - "created_at": { - "type": "string", - "format": "date-time" + "item": { + "$ref": "#/components/schemas/VoicesVoiceUuidRecordingsRecordingIdGetResponsesContentApplicationJsonSchemaItem" } }, - "title": "SpeechToTextUuidAskPostResponsesContentApplicationJsonSchemaItem" + "title": "Recordings_getRecording_Response_200" }, - "Speech-to-Text_askTranscriptQuestion_Response_200": { + "Recordings_deleteRecording_Response_200": { "type": "object", "properties": { "success": { "type": "boolean" - }, - "item": { - "$ref": "#/components/schemas/SpeechToTextUuidAskPostResponsesContentApplicationJsonSchemaItem" } }, - "title": "Speech-to-Text_askTranscriptQuestion_Response_200" + "title": "Recordings_deleteRecording_Response_200" }, - "SpeechToTextUuidQuestionsGetResponsesContentApplicationJsonSchemaItemsItems": { + "VoicesVoiceUuidRecordingsRecordingIdPatchResponsesContentApplicationJsonSchemaItem": { + "type": "object", + "properties": {}, + "title": "VoicesVoiceUuidRecordingsRecordingIdPatchResponsesContentApplicationJsonSchemaItem" + }, + "Recordings_updateRecording_Response_200": { "type": "object", "properties": { - "uuid": { - "type": "string", - "format": "uuid" - }, - "query": { - "type": "string" - }, - "answer": { - "type": "string" - }, - "status": { - "type": "string" + "success": { + "type": "boolean" }, - "created_at": { - "type": "string", - "format": "date-time" + "item": { + "$ref": "#/components/schemas/VoicesVoiceUuidRecordingsRecordingIdPatchResponsesContentApplicationJsonSchemaItem" } }, - "title": "SpeechToTextUuidQuestionsGetResponsesContentApplicationJsonSchemaItemsItems" + "title": "Recordings_updateRecording_Response_200" }, - "SpeechToTextUuidQuestionsGetResponsesContentApplicationJsonSchemaMeta": { + "TermSubstitutionsGetResponsesContentApplicationJsonSchemaItemsItems": { "type": "object", "properties": {}, - "title": "SpeechToTextUuidQuestionsGetResponsesContentApplicationJsonSchemaMeta" + "title": "TermSubstitutionsGetResponsesContentApplicationJsonSchemaItemsItems" }, - "Speech-to-Text_listTranscriptQuestions_Response_200": { + "Term Substitutions_listTermSubstitutions_Response_200": { "type": "object", "properties": { "success": { @@ -9106,394 +11844,288 @@ "items": { "type": "array", "items": { - "$ref": "#/components/schemas/SpeechToTextUuidQuestionsGetResponsesContentApplicationJsonSchemaItemsItems" + "$ref": "#/components/schemas/TermSubstitutionsGetResponsesContentApplicationJsonSchemaItemsItems" } - }, - "meta": { - "$ref": "#/components/schemas/SpeechToTextUuidQuestionsGetResponsesContentApplicationJsonSchemaMeta" } }, - "title": "Speech-to-Text_listTranscriptQuestions_Response_200" + "title": "Term Substitutions_listTermSubstitutions_Response_200" }, - "SpeechToTextUuidQuestionsQuestionUuidGetResponsesContentApplicationJsonSchemaItem": { + "TermSubstitutionsPostResponsesContentApplicationJsonSchemaItem": { + "type": "object", + "properties": {}, + "title": "TermSubstitutionsPostResponsesContentApplicationJsonSchemaItem" + }, + "Term Substitutions_createTermSubstitution_Response_200": { "type": "object", "properties": { - "uuid": { - "type": "string", - "format": "uuid" - }, - "transcript_uuid": { - "type": "string", - "format": "uuid" - }, - "query": { - "type": "string" - }, - "answer": { - "type": "string" - }, - "status": { - "type": "string" - }, - "created_at": { - "type": "string", - "format": "date-time" + "success": { + "type": "boolean" }, - "updated_at": { - "type": "string", - "format": "date-time" + "item": { + "$ref": "#/components/schemas/TermSubstitutionsPostResponsesContentApplicationJsonSchemaItem" } }, - "title": "SpeechToTextUuidQuestionsQuestionUuidGetResponsesContentApplicationJsonSchemaItem" + "title": "Term Substitutions_createTermSubstitution_Response_200" }, - "Speech-to-Text_getTranscriptQuestion_Response_200": { + "TermSubstitutionsIdGetResponsesContentApplicationJsonSchemaItem": { + "type": "object", + "properties": {}, + "title": "TermSubstitutionsIdGetResponsesContentApplicationJsonSchemaItem" + }, + "Term Substitutions_getTermSubstitution_Response_200": { "type": "object", "properties": { "success": { "type": "boolean" }, "item": { - "$ref": "#/components/schemas/SpeechToTextUuidQuestionsQuestionUuidGetResponsesContentApplicationJsonSchemaItem" + "$ref": "#/components/schemas/TermSubstitutionsIdGetResponsesContentApplicationJsonSchemaItem" } }, - "title": "Speech-to-Text_getTranscriptQuestion_Response_200" + "title": "Term Substitutions_getTermSubstitution_Response_200" }, - "AudioEnhancementsGetResponsesContentApplicationJsonSchemaItemsItemsStatus": { + "Term Substitutions_deleteTermSubstitution_Response_200": { + "type": "object", + "properties": { + "success": { + "type": "boolean" + } + }, + "title": "Term Substitutions_deleteTermSubstitution_Response_200" + }, + "PronunciationsGetParametersStatus": { "type": "string", "enum": [ "pending", - "processing", - "completed", + "ready", "failed" ], - "title": "AudioEnhancementsGetResponsesContentApplicationJsonSchemaItemsItemsStatus" + "title": "PronunciationsGetParametersStatus" }, - "AudioEnhancementsGetResponsesContentApplicationJsonSchemaItemsItemsEnhancementEngine": { + "CustomPronunciationStatus": { "type": "string", "enum": [ - "v1", - "v2" + "pending", + "ready", + "failed" ], - "title": "AudioEnhancementsGetResponsesContentApplicationJsonSchemaItemsItemsEnhancementEngine" + "description": "Processing status. Only \"ready\" pronunciations are applied during synthesis.", + "title": "CustomPronunciationStatus" }, - "AudioEnhancementsGetResponsesContentApplicationJsonSchemaItemsItems": { + "CustomPronunciation": { "type": "object", "properties": { "uuid": { - "type": "string" - }, - "status": { - "$ref": "#/components/schemas/AudioEnhancementsGetResponsesContentApplicationJsonSchemaItemsItemsStatus" - }, - "enhancement_engine": { - "$ref": "#/components/schemas/AudioEnhancementsGetResponsesContentApplicationJsonSchemaItemsItemsEnhancementEngine" - }, - "error_message": { - "type": [ - "string", - "null" - ] + "type": "string", + "format": "uuid", + "description": "Unique identifier for the pronunciation" }, - "remove_noise": { - "type": "boolean", - "description": "Engine v2 only." + "word": { + "type": "string", + "description": "The word or phrase this pronunciation applies to" }, - "normalize": { - "type": "boolean", - "description": "Engine v2 only." + "status": { + "$ref": "#/components/schemas/CustomPronunciationStatus", + "description": "Processing status. Only \"ready\" pronunciations are applied during synthesis." }, - "studio_sound": { + "active": { "type": "boolean", - "description": "Engine v2 only." - }, - "loudness_target_level": { - "type": "integer", - "description": "Engine v1 only." - }, - "loudness_peak_limit": { - "type": "integer", - "description": "Engine v1 only." + "description": "Whether this pronunciation is active and will be applied during synthesis" }, - "enhancement_level": { - "type": "number", - "format": "double", - "description": "Engine v1 only." + "audio_url": { + "type": "string", + "format": "uri", + "description": "URL to the uploaded reference audio" }, - "original_audio_url": { + "created_at": { "type": "string", - "format": "uri" + "format": "date-time" }, - "enhanced_audio_url": { + "updated_at": { "type": "string", - "format": "uri" + "format": "date-time" } }, - "title": "AudioEnhancementsGetResponsesContentApplicationJsonSchemaItemsItems" + "title": "CustomPronunciation" }, - "Audio Enhancement_listAudioEnhancements_Response_200": { + "Custom Pronunciations_listPronunciations_Response_200": { "type": "object", "properties": { "success": { "type": "boolean" }, - "page": { - "type": "integer" + "items": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CustomPronunciation" + } + } + }, + "title": "Custom Pronunciations_listPronunciations_Response_200" + }, + "Custom Pronunciations_createPronunciation_Response_201": { + "type": "object", + "properties": { + "success": { + "type": "boolean" }, - "num_pages": { - "type": "integer" + "item": { + "$ref": "#/components/schemas/CustomPronunciation" + } + }, + "title": "Custom Pronunciations_createPronunciation_Response_201" + }, + "PronunciationsBulkPostResponsesContentApplicationJsonSchemaErrorsItems": { + "type": "object", + "properties": {}, + "title": "PronunciationsBulkPostResponsesContentApplicationJsonSchemaErrorsItems" + }, + "Custom Pronunciations_bulkCreatePronunciations_Response_201": { + "type": "object", + "properties": { + "success": { + "type": "boolean" }, - "page_size": { - "type": "integer" + "total_created": { + "type": "integer", + "description": "Number of pronunciations successfully created" }, - "total_count": { - "type": "integer" + "total_errors": { + "type": "integer", + "description": "Number of files that failed validation" }, "items": { "type": "array", "items": { - "$ref": "#/components/schemas/AudioEnhancementsGetResponsesContentApplicationJsonSchemaItemsItems" + "$ref": "#/components/schemas/CustomPronunciation" + } + }, + "errors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PronunciationsBulkPostResponsesContentApplicationJsonSchemaErrorsItems" } } }, - "title": "Audio Enhancement_listAudioEnhancements_Response_200" + "title": "Custom Pronunciations_bulkCreatePronunciations_Response_201" }, - "ListAudioEnhancementsRequestBadRequestError": { + "Custom Pronunciations_getPronunciation_Response_200": { "type": "object", "properties": { "success": { "type": "boolean" }, - "message": { - "type": "string" + "item": { + "$ref": "#/components/schemas/CustomPronunciation" } }, - "title": "ListAudioEnhancementsRequestBadRequestError" - }, - "AudioEnhancementsPostRequestBodyContentMultipartFormDataSchemaEnhancementEngine": { - "type": "string", - "enum": [ - "v1", - "v2" - ], - "default": "v2", - "description": "Enhancement engine to use. Default is v2.", - "title": "AudioEnhancementsPostRequestBodyContentMultipartFormDataSchemaEnhancementEngine" + "title": "Custom Pronunciations_getPronunciation_Response_200" }, - "AudioEnhancementsPostResponsesContentApplicationJsonSchemaStatus": { - "type": "string", - "enum": [ - "pending" - ], - "title": "AudioEnhancementsPostResponsesContentApplicationJsonSchemaStatus" + "Custom Pronunciations_deletePronunciation_Response_200": { + "type": "object", + "properties": { + "success": { + "type": "boolean" + } + }, + "title": "Custom Pronunciations_deletePronunciation_Response_200" }, - "Audio Enhancement_createAudioEnhancement_Response_202": { + "Custom Pronunciations_updatePronunciation_Response_200": { "type": "object", "properties": { "success": { "type": "boolean" }, - "uuid": { - "type": "string" - }, - "status": { - "$ref": "#/components/schemas/AudioEnhancementsPostResponsesContentApplicationJsonSchemaStatus" + "item": { + "$ref": "#/components/schemas/CustomPronunciation" } }, - "title": "Audio Enhancement_createAudioEnhancement_Response_202" + "title": "Custom Pronunciations_updatePronunciation_Response_200" }, - "CreateAudioEnhancementRequestBadRequestError": { + "VoiceSettingsPresetsGetResponsesContentApplicationJsonSchemaItemsItems": { + "type": "object", + "properties": {}, + "title": "VoiceSettingsPresetsGetResponsesContentApplicationJsonSchemaItemsItems" + }, + "Voice Settings Presets_listVoiceSettingsPresets_Response_200": { "type": "object", "properties": { "success": { "type": "boolean" }, - "message": { - "type": "string" + "items": { + "type": "array", + "items": { + "$ref": "#/components/schemas/VoiceSettingsPresetsGetResponsesContentApplicationJsonSchemaItemsItems" + } } }, - "title": "CreateAudioEnhancementRequestBadRequestError" + "title": "Voice Settings Presets_listVoiceSettingsPresets_Response_200" }, - "CreateAudioEnhancementRequestForbiddenError": { + "VoiceSettingsPresetsPostResponsesContentApplicationJsonSchemaData": { + "type": "object", + "properties": {}, + "title": "VoiceSettingsPresetsPostResponsesContentApplicationJsonSchemaData" + }, + "Voice Settings Presets_createVoiceSettingsPreset_Response_201": { "type": "object", "properties": { "success": { "type": "boolean" }, + "data": { + "$ref": "#/components/schemas/VoiceSettingsPresetsPostResponsesContentApplicationJsonSchemaData" + }, "message": { "type": "string" } }, - "title": "CreateAudioEnhancementRequestForbiddenError" + "title": "Voice Settings Presets_createVoiceSettingsPreset_Response_201" }, - "AudioEnhancementsEnhancementUuidGetResponsesContentApplicationJsonSchemaStatus": { - "type": "string", - "enum": [ - "pending", - "processing", - "completed", - "failed" - ], - "title": "AudioEnhancementsEnhancementUuidGetResponsesContentApplicationJsonSchemaStatus" + "VoiceSettingsPresetsUuidGetResponsesContentApplicationJsonSchemaData": { + "type": "object", + "properties": {}, + "title": "VoiceSettingsPresetsUuidGetResponsesContentApplicationJsonSchemaData" }, - "Audio Enhancement_getAudioEnhancement_Response_200": { + "Voice Settings Presets_getVoiceSettingsPreset_Response_200": { "type": "object", "properties": { "success": { "type": "boolean" }, - "uuid": { - "type": "string" - }, - "status": { - "$ref": "#/components/schemas/AudioEnhancementsEnhancementUuidGetResponsesContentApplicationJsonSchemaStatus" - }, - "enhanced_audio_url": { - "type": [ - "string", - "null" - ], - "format": "uri", - "description": "Download URL. Only present when status is completed. This is a temporary signed URL." - }, - "error_message": { - "type": [ - "string", - "null" - ], - "description": "Human-readable error. Only present when status is failed." + "data": { + "$ref": "#/components/schemas/VoiceSettingsPresetsUuidGetResponsesContentApplicationJsonSchemaData" } }, - "title": "Audio Enhancement_getAudioEnhancement_Response_200" + "title": "Voice Settings Presets_getVoiceSettingsPreset_Response_200" }, - "GetAudioEnhancementRequestNotFoundError": { + "Voice Settings Presets_deleteVoiceSettingsPreset_Response_200": { "type": "object", "properties": { "success": { "type": "boolean" - }, - "message": { - "type": "string" } }, - "title": "GetAudioEnhancementRequestNotFoundError" + "title": "Voice Settings Presets_deleteVoiceSettingsPreset_Response_200" }, - "VoicesGetResponsesContentApplicationJsonSchemaItemsItems": { + "VoiceSettingsPresetsUuidPatchResponsesContentApplicationJsonSchemaData": { "type": "object", - "properties": { - "uuid": { - "type": "string" - }, - "name": { - "type": "string" - }, - "status": { - "type": "string" - }, - "created_at": { - "type": "string", - "format": "date-time" - }, - "updated_at": { - "type": "string", - "format": "date-time" - }, - "default_language": { - "type": "string" - }, - "voice_type": { - "type": "string" - }, - "voice_status": { - "type": "string" - }, - "supported_languages": { - "type": "array", - "items": { - "type": "string" - } - }, - "component_status": { - "type": "object", - "properties": { - "text_to_speech": { - "type": "object", - "properties": { - "status": { - "type": "string" - } - }, - "title": "VoicesComponentStatusTextToSpeech" - }, - "fill": { - "type": "object", - "properties": { - "status": { - "type": "string" - } - }, - "title": "VoicesComponentStatusFill" - }, - "voice_conversion": { - "type": "object", - "properties": { - "status": { - "type": "string" - } - }, - "title": "VoicesComponentStatusVoiceConversion" - } - }, - "title": "VoicesComponentStatus" - }, - "api_support": { - "type": "object", - "properties": { - "sync": { - "type": "boolean" - }, - "async": { - "type": "boolean" - }, - "direct_synthesis": { - "type": "boolean" - }, - "streaming": { - "type": "boolean" - } - }, - "title": "VoicesApiSupport" - }, - "source": { - "type": "string" - } - }, - "title": "VoicesGetResponsesContentApplicationJsonSchemaItemsItems" + "properties": {}, + "title": "VoiceSettingsPresetsUuidPatchResponsesContentApplicationJsonSchemaData" }, - "Voices_listVoices_Response_200": { + "Voice Settings Presets_updateVoiceSettingsPreset_Response_200": { "type": "object", "properties": { "success": { "type": "boolean" }, - "page": { - "type": "integer" - }, - "num_pages": { - "type": "integer" - }, - "page_size": { - "type": "integer" - }, - "items": { - "type": "array", - "items": { - "$ref": "#/components/schemas/VoicesGetResponsesContentApplicationJsonSchemaItemsItems" - } + "data": { + "$ref": "#/components/schemas/VoiceSettingsPresetsUuidPatchResponsesContentApplicationJsonSchemaData" } }, - "title": "Voices_listVoices_Response_200" + "title": "Voice Settings Presets_updateVoiceSettingsPreset_Response_200" }, - "VoicesPostResponsesContentApplicationJsonSchemaItem": { + "ProjectsGetResponsesContentApplicationJsonSchemaItemsItems": { "type": "object", "properties": { "uuid": { @@ -9502,7 +12134,7 @@ "name": { "type": "string" }, - "status": { + "description": { "type": "string" }, "created_at": { @@ -9513,91 +12145,31 @@ "type": "string", "format": "date-time" }, - "default_language": { - "type": "string" - }, - "voice_type": { - "type": "string" - }, - "voice_status": { - "type": "string" - }, - "supported_languages": { - "type": "array", - "items": { - "type": "string" - } - }, - "component_status": { - "type": "object", - "properties": { - "text_to_speech": { - "type": "object", - "properties": { - "status": { - "type": "string" - } - }, - "title": "VoicesComponentStatusTextToSpeech" - }, - "fill": { - "type": "object", - "properties": { - "status": { - "type": "string" - } - }, - "title": "VoicesComponentStatusFill" - }, - "voice_conversion": { - "type": "object", - "properties": { - "status": { - "type": "string" - } - }, - "title": "VoicesComponentStatusVoiceConversion" - } - }, - "title": "VoicesComponentStatus" - }, - "api_support": { - "type": "object", - "properties": { - "sync": { - "type": "boolean" - }, - "async": { - "type": "boolean" - }, - "direct_synthesis": { - "type": "boolean" - }, - "streaming": { - "type": "boolean" - } - }, - "title": "VoicesApiSupport" + "is_collaborative": { + "type": "boolean" }, - "source": { - "type": "string" + "is_archived": { + "type": "boolean" } }, - "title": "VoicesPostResponsesContentApplicationJsonSchemaItem" + "title": "ProjectsGetResponsesContentApplicationJsonSchemaItemsItems" }, - "Voices_createVoice_Response_200": { + "Projects_listProjects_Response_200": { "type": "object", "properties": { "success": { "type": "boolean" }, - "item": { - "$ref": "#/components/schemas/VoicesPostResponsesContentApplicationJsonSchemaItem" + "items": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ProjectsGetResponsesContentApplicationJsonSchemaItemsItems" + } } }, - "title": "Voices_createVoice_Response_200" + "title": "Projects_listProjects_Response_200" }, - "VoicesVoiceUuidGetResponsesContentApplicationJsonSchemaItem": { + "ProjectsPostResponsesContentApplicationJsonSchemaItem": { "type": "object", "properties": { "uuid": { @@ -9606,7 +12178,7 @@ "name": { "type": "string" }, - "status": { + "description": { "type": "string" }, "created_at": { @@ -9617,157 +12189,124 @@ "type": "string", "format": "date-time" }, - "default_language": { - "type": "string" - }, - "voice_type": { - "type": "string" - }, - "voice_status": { - "type": "string" - }, - "supported_languages": { - "type": "array", - "items": { - "type": "string" - } - }, - "component_status": { - "type": "object", - "properties": { - "text_to_speech": { - "type": "object", - "properties": { - "status": { - "type": "string" - } - }, - "title": "VoicesComponentStatusTextToSpeech" - }, - "fill": { - "type": "object", - "properties": { - "status": { - "type": "string" - } - }, - "title": "VoicesComponentStatusFill" - }, - "voice_conversion": { - "type": "object", - "properties": { - "status": { - "type": "string" - } - }, - "title": "VoicesComponentStatusVoiceConversion" - } - }, - "title": "VoicesComponentStatus" - }, - "api_support": { - "type": "object", - "properties": { - "sync": { - "type": "boolean" - }, - "async": { - "type": "boolean" - }, - "direct_synthesis": { - "type": "boolean" - }, - "streaming": { - "type": "boolean" - } - }, - "title": "VoicesApiSupport" + "is_collaborative": { + "type": "boolean" }, - "source": { - "type": "string" + "is_archived": { + "type": "boolean" } }, - "title": "VoicesVoiceUuidGetResponsesContentApplicationJsonSchemaItem" + "title": "ProjectsPostResponsesContentApplicationJsonSchemaItem" }, - "Voices_getVoice_Response_200": { + "Projects_createProject_Response_200": { "type": "object", "properties": { "success": { "type": "boolean" }, "item": { - "$ref": "#/components/schemas/VoicesVoiceUuidGetResponsesContentApplicationJsonSchemaItem" + "$ref": "#/components/schemas/ProjectsPostResponsesContentApplicationJsonSchemaItem" } }, - "title": "Voices_getVoice_Response_200" + "title": "Projects_createProject_Response_200" }, - "Voices_deleteVoice_Response_200": { + "ProjectsProjectUuidGetResponsesContentApplicationJsonSchemaItem": { "type": "object", "properties": { - "success": { + "uuid": { + "type": "string" + }, + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + }, + "is_collaborative": { + "type": "boolean" + }, + "is_archived": { "type": "boolean" } }, - "title": "Voices_deleteVoice_Response_200" + "title": "ProjectsProjectUuidGetResponsesContentApplicationJsonSchemaItem" }, - "Voices_buildVoice_Response_200": { + "Projects_getProject_Response_200": { "type": "object", "properties": { "success": { "type": "boolean" }, - "message": { - "type": "string" + "item": { + "$ref": "#/components/schemas/ProjectsProjectUuidGetResponsesContentApplicationJsonSchemaItem" } }, - "title": "Voices_buildVoice_Response_200" + "title": "Projects_getProject_Response_200" }, - "VoiceDesignPostResponsesContentApplicationJsonSchemaVoiceCandidatesItems": { + "ProjectsProjectUuidPutResponsesContentApplicationJsonSchemaItem": { "type": "object", "properties": { - "audio_url": { - "type": "string", - "format": "uri" + "uuid": { + "type": "string" }, - "voice_sample_index": { - "type": "integer" + "name": { + "type": "string" }, - "uuid": { + "description": { "type": "string" + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + }, + "is_collaborative": { + "type": "boolean" + }, + "is_archived": { + "type": "boolean" } }, - "title": "VoiceDesignPostResponsesContentApplicationJsonSchemaVoiceCandidatesItems" + "title": "ProjectsProjectUuidPutResponsesContentApplicationJsonSchemaItem" }, - "Voice Design_generateVoiceDesign_Response_200": { + "Projects_updateProject_Response_200": { "type": "object", "properties": { - "voice_candidates": { - "type": "array", - "items": { - "$ref": "#/components/schemas/VoiceDesignPostResponsesContentApplicationJsonSchemaVoiceCandidatesItems" - } + "success": { + "type": "boolean" + }, + "item": { + "$ref": "#/components/schemas/ProjectsProjectUuidPutResponsesContentApplicationJsonSchemaItem" } }, - "title": "Voice Design_generateVoiceDesign_Response_200" + "title": "Projects_updateProject_Response_200" }, - "Voice Design_createVoiceFromCandidate_Response_200": { + "Projects_deleteProject_Response_200": { "type": "object", "properties": { "success": { "type": "boolean" - }, - "voice_uuid": { - "type": "string" } }, - "title": "Voice Design_createVoiceFromCandidate_Response_200" + "title": "Projects_deleteProject_Response_200" }, - "VoicesVoiceUuidRecordingsGetResponsesContentApplicationJsonSchemaItemsItems": { + "ProjectsProjectUuidClipsGetResponsesContentApplicationJsonSchemaItemsItems": { "type": "object", "properties": {}, - "title": "VoicesVoiceUuidRecordingsGetResponsesContentApplicationJsonSchemaItemsItems" + "title": "ProjectsProjectUuidClipsGetResponsesContentApplicationJsonSchemaItemsItems" }, - "Recordings_listRecordings_Response_200": { + "Clips_listClips_Response_200": { "type": "object", "properties": { "success": { @@ -9776,378 +12315,572 @@ "items": { "type": "array", "items": { - "$ref": "#/components/schemas/VoicesVoiceUuidRecordingsGetResponsesContentApplicationJsonSchemaItemsItems" + "$ref": "#/components/schemas/ProjectsProjectUuidClipsGetResponsesContentApplicationJsonSchemaItemsItems" } } }, - "title": "Recordings_listRecordings_Response_200" + "title": "Clips_listClips_Response_200" }, - "VoicesVoiceUuidRecordingsPostResponsesContentApplicationJsonSchemaItem": { + "ProjectsProjectUuidClipsClipUuidGetResponsesContentApplicationJsonSchemaItem": { "type": "object", "properties": {}, - "title": "VoicesVoiceUuidRecordingsPostResponsesContentApplicationJsonSchemaItem" + "title": "ProjectsProjectUuidClipsClipUuidGetResponsesContentApplicationJsonSchemaItem" }, - "Recordings_createRecording_Response_200": { + "Clips_getClip_Response_200": { "type": "object", "properties": { "success": { "type": "boolean" }, "item": { - "$ref": "#/components/schemas/VoicesVoiceUuidRecordingsPostResponsesContentApplicationJsonSchemaItem" + "$ref": "#/components/schemas/ProjectsProjectUuidClipsClipUuidGetResponsesContentApplicationJsonSchemaItem" } }, - "title": "Recordings_createRecording_Response_200" + "title": "Clips_getClip_Response_200" }, - "VoicesVoiceUuidRecordingsRecordingIdGetResponsesContentApplicationJsonSchemaItem": { + "Clips_deleteClip_Response_200": { + "type": "object", + "properties": { + "success": { + "type": "boolean" + } + }, + "title": "Clips_deleteClip_Response_200" + }, + "ProjectsProjectUuidClipsClipUuidPatchResponsesContentApplicationJsonSchemaItem": { "type": "object", "properties": {}, - "title": "VoicesVoiceUuidRecordingsRecordingIdGetResponsesContentApplicationJsonSchemaItem" + "title": "ProjectsProjectUuidClipsClipUuidPatchResponsesContentApplicationJsonSchemaItem" }, - "Recordings_getRecording_Response_200": { + "Clips_updateClip_Response_200": { "type": "object", "properties": { "success": { "type": "boolean" }, "item": { - "$ref": "#/components/schemas/VoicesVoiceUuidRecordingsRecordingIdGetResponsesContentApplicationJsonSchemaItem" + "$ref": "#/components/schemas/ProjectsProjectUuidClipsClipUuidPatchResponsesContentApplicationJsonSchemaItem" } }, - "title": "Recordings_getRecording_Response_200" + "title": "Clips_updateClip_Response_200" }, - "Recordings_deleteRecording_Response_200": { + "DuetVoicesGetResponsesContentApplicationJsonSchemaItemsItems": { + "type": "object", + "properties": {}, + "title": "DuetVoicesGetResponsesContentApplicationJsonSchemaItemsItems" + }, + "Duets_listDuetVoices_Response_200": { "type": "object", "properties": { "success": { "type": "boolean" + }, + "items": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DuetVoicesGetResponsesContentApplicationJsonSchemaItemsItems" + } } }, - "title": "Recordings_deleteRecording_Response_200" + "title": "Duets_listDuetVoices_Response_200" }, - "VoicesVoiceUuidRecordingsRecordingIdPatchResponsesContentApplicationJsonSchemaItem": { + "DuetVoicesPostResponsesContentApplicationJsonSchemaItem": { "type": "object", "properties": {}, - "title": "VoicesVoiceUuidRecordingsRecordingIdPatchResponsesContentApplicationJsonSchemaItem" + "title": "DuetVoicesPostResponsesContentApplicationJsonSchemaItem" }, - "Recordings_updateRecording_Response_200": { + "Duets_createDuetVoice_Response_200": { "type": "object", "properties": { "success": { "type": "boolean" }, "item": { - "$ref": "#/components/schemas/VoicesVoiceUuidRecordingsRecordingIdPatchResponsesContentApplicationJsonSchemaItem" + "$ref": "#/components/schemas/DuetVoicesPostResponsesContentApplicationJsonSchemaItem" } }, - "title": "Recordings_updateRecording_Response_200" + "title": "Duets_createDuetVoice_Response_200" }, - "TermSubstitutionsGetResponsesContentApplicationJsonSchemaItemsItems": { + "DuetVoicesIdPutResponsesContentApplicationJsonSchemaItem": { "type": "object", "properties": {}, - "title": "TermSubstitutionsGetResponsesContentApplicationJsonSchemaItemsItems" + "title": "DuetVoicesIdPutResponsesContentApplicationJsonSchemaItem" }, - "Term Substitutions_listTermSubstitutions_Response_200": { + "Duets_updateDuetVoice_Response_200": { "type": "object", "properties": { "success": { "type": "boolean" }, - "items": { - "type": "array", - "items": { - "$ref": "#/components/schemas/TermSubstitutionsGetResponsesContentApplicationJsonSchemaItemsItems" - } + "item": { + "$ref": "#/components/schemas/DuetVoicesIdPutResponsesContentApplicationJsonSchemaItem" } }, - "title": "Term Substitutions_listTermSubstitutions_Response_200" - }, - "TermSubstitutionsPostResponsesContentApplicationJsonSchemaItem": { - "type": "object", - "properties": {}, - "title": "TermSubstitutionsPostResponsesContentApplicationJsonSchemaItem" + "title": "Duets_updateDuetVoice_Response_200" }, - "Term Substitutions_createTermSubstitution_Response_200": { + "Duets_deleteDuetVoice_Response_200": { "type": "object", "properties": { "success": { "type": "boolean" - }, - "item": { - "$ref": "#/components/schemas/TermSubstitutionsPostResponsesContentApplicationJsonSchemaItem" } }, - "title": "Term Substitutions_createTermSubstitution_Response_200" + "title": "Duets_deleteDuetVoice_Response_200" }, - "TermSubstitutionsIdGetResponsesContentApplicationJsonSchemaItem": { + "DuetVoicePairsGetResponsesContentApplicationJsonSchemaItemsItems": { "type": "object", "properties": {}, - "title": "TermSubstitutionsIdGetResponsesContentApplicationJsonSchemaItem" + "title": "DuetVoicePairsGetResponsesContentApplicationJsonSchemaItemsItems" }, - "Term Substitutions_getTermSubstitution_Response_200": { + "Duets_listDuetVoicePairs_Response_200": { "type": "object", "properties": { "success": { "type": "boolean" }, - "item": { - "$ref": "#/components/schemas/TermSubstitutionsIdGetResponsesContentApplicationJsonSchemaItem" + "items": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DuetVoicePairsGetResponsesContentApplicationJsonSchemaItemsItems" + } } }, - "title": "Term Substitutions_getTermSubstitution_Response_200" + "title": "Duets_listDuetVoicePairs_Response_200" }, - "Term Substitutions_deleteTermSubstitution_Response_200": { + "DuetVoicePairsPostResponsesContentApplicationJsonSchemaItem": { + "type": "object", + "properties": {}, + "title": "DuetVoicePairsPostResponsesContentApplicationJsonSchemaItem" + }, + "Duets_createDuetVoicePair_Response_200": { "type": "object", "properties": { "success": { "type": "boolean" + }, + "item": { + "$ref": "#/components/schemas/DuetVoicePairsPostResponsesContentApplicationJsonSchemaItem" } }, - "title": "Term Substitutions_deleteTermSubstitution_Response_200" - }, - "PronunciationsGetParametersStatus": { - "type": "string", - "enum": [ - "pending", - "ready", - "failed" - ], - "title": "PronunciationsGetParametersStatus" + "title": "Duets_createDuetVoicePair_Response_200" }, - "CustomPronunciationStatus": { + "DuetPostRequestBodyContentApplicationJsonSchemaScriptItemsSpeaker": { "type": "string", "enum": [ - "pending", - "ready", - "failed" + "0", + "1" ], - "description": "Processing status. Only \"ready\" pronunciations are applied during synthesis.", - "title": "CustomPronunciationStatus" + "description": "Speaker index (0 or 1)", + "title": "DuetPostRequestBodyContentApplicationJsonSchemaScriptItemsSpeaker" }, - "CustomPronunciation": { + "DuetPostRequestBodyContentApplicationJsonSchemaScriptItems": { "type": "object", "properties": { - "uuid": { - "type": "string", - "format": "uuid", - "description": "Unique identifier for the pronunciation" - }, - "word": { - "type": "string", - "description": "The word or phrase this pronunciation applies to" - }, - "status": { - "$ref": "#/components/schemas/CustomPronunciationStatus", - "description": "Processing status. Only \"ready\" pronunciations are applied during synthesis." - }, - "active": { - "type": "boolean", - "description": "Whether this pronunciation is active and will be applied during synthesis" - }, - "audio_url": { - "type": "string", - "format": "uri", - "description": "URL to the uploaded reference audio" - }, - "created_at": { - "type": "string", - "format": "date-time" + "speaker": { + "$ref": "#/components/schemas/DuetPostRequestBodyContentApplicationJsonSchemaScriptItemsSpeaker", + "description": "Speaker index (0 or 1)" }, - "updated_at": { + "text": { "type": "string", - "format": "date-time" + "description": "Text for this speaker" } }, - "title": "CustomPronunciation" + "required": [ + "speaker", + "text" + ], + "title": "DuetPostRequestBodyContentApplicationJsonSchemaScriptItems" }, - "Custom Pronunciations_listPronunciations_Response_200": { + "DuetPostResponsesContentApplicationJsonSchemaItem": { "type": "object", "properties": { - "success": { - "type": "boolean" + "uuid": { + "type": "string" }, - "items": { - "type": "array", - "items": { - "$ref": "#/components/schemas/CustomPronunciation" - } + "status": { + "type": "string" } }, - "title": "Custom Pronunciations_listPronunciations_Response_200" + "title": "DuetPostResponsesContentApplicationJsonSchemaItem" }, - "Custom Pronunciations_createPronunciation_Response_201": { + "Duets_generateDuet_Response_200": { "type": "object", "properties": { "success": { "type": "boolean" }, "item": { - "$ref": "#/components/schemas/CustomPronunciation" + "$ref": "#/components/schemas/DuetPostResponsesContentApplicationJsonSchemaItem" } }, - "title": "Custom Pronunciations_createPronunciation_Response_201" - }, - "PronunciationsBulkPostResponsesContentApplicationJsonSchemaErrorsItems": { - "type": "object", - "properties": {}, - "title": "PronunciationsBulkPostResponsesContentApplicationJsonSchemaErrorsItems" + "title": "Duets_generateDuet_Response_200" }, - "Custom Pronunciations_bulkCreatePronunciations_Response_201": { + "AccountGetResponsesContentApplicationJsonSchemaItem": { "type": "object", "properties": { - "success": { - "type": "boolean" + "email": { + "type": "string" }, - "total_created": { - "type": "integer", - "description": "Number of pronunciations successfully created" + "first_name": { + "type": "string" }, - "total_errors": { - "type": "integer", - "description": "Number of files that failed validation" + "last_name": { + "type": "string" }, - "items": { - "type": "array", - "items": { - "$ref": "#/components/schemas/CustomPronunciation" - } + "created_at": { + "type": "string", + "format": "date-time" }, - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/PronunciationsBulkPostResponsesContentApplicationJsonSchemaErrorsItems" - } + "teams": { + "type": "integer" } }, - "title": "Custom Pronunciations_bulkCreatePronunciations_Response_201" + "title": "AccountGetResponsesContentApplicationJsonSchemaItem" }, - "Custom Pronunciations_getPronunciation_Response_200": { + "Account_getAccount_Response_200": { "type": "object", "properties": { "success": { "type": "boolean" }, "item": { - "$ref": "#/components/schemas/CustomPronunciation" + "$ref": "#/components/schemas/AccountGetResponsesContentApplicationJsonSchemaItem" } }, - "title": "Custom Pronunciations_getPronunciation_Response_200" + "title": "Account_getAccount_Response_200" }, - "Custom Pronunciations_deletePronunciation_Response_200": { + "AccountTeamsGetResponsesContentApplicationJsonSchemaItemsItems": { "type": "object", "properties": { - "success": { - "type": "boolean" + "uuid": { + "type": "string" + }, + "name": { + "type": "string" + }, + "plan": { + "type": "string" + }, + "voice_limit": { + "type": "integer" + }, + "units": { + "type": "string" + }, + "rate": { + "type": "number" + }, + "current_usage": { + "type": "integer" } }, - "title": "Custom Pronunciations_deletePronunciation_Response_200" + "title": "AccountTeamsGetResponsesContentApplicationJsonSchemaItemsItems" }, - "Custom Pronunciations_updatePronunciation_Response_200": { + "Account_getTeams_Response_200": { "type": "object", "properties": { "success": { "type": "boolean" }, - "item": { - "$ref": "#/components/schemas/CustomPronunciation" + "items": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AccountTeamsGetResponsesContentApplicationJsonSchemaItemsItems" + } } }, - "title": "Custom Pronunciations_updatePronunciation_Response_200" + "title": "Account_getTeams_Response_200" }, - "VoiceSettingsPresetsGetResponsesContentApplicationJsonSchemaItemsItems": { + "AccountTeamsTeamUuidGetResponsesContentApplicationJsonSchemaItem": { "type": "object", - "properties": {}, - "title": "VoiceSettingsPresetsGetResponsesContentApplicationJsonSchemaItemsItems" + "properties": { + "uuid": { + "type": "string", + "format": "uuid" + }, + "name": { + "type": "string" + }, + "plan": { + "type": "string" + }, + "voice_limit": { + "type": "integer" + }, + "units": { + "type": "string" + }, + "rate": { + "type": "number", + "format": "double" + }, + "current_usage": { + "type": "integer" + } + }, + "title": "AccountTeamsTeamUuidGetResponsesContentApplicationJsonSchemaItem" }, - "Voice Settings Presets_listVoiceSettingsPresets_Response_200": { + "Account_getTeam_Response_200": { "type": "object", "properties": { "success": { "type": "boolean" }, - "items": { - "type": "array", - "items": { - "$ref": "#/components/schemas/VoiceSettingsPresetsGetResponsesContentApplicationJsonSchemaItemsItems" - } + "item": { + "$ref": "#/components/schemas/AccountTeamsTeamUuidGetResponsesContentApplicationJsonSchemaItem" } }, - "title": "Voice Settings Presets_listVoiceSettingsPresets_Response_200" + "title": "Account_getTeam_Response_200" }, - "VoiceSettingsPresetsPostResponsesContentApplicationJsonSchemaData": { - "type": "object", - "properties": {}, - "title": "VoiceSettingsPresetsPostResponsesContentApplicationJsonSchemaData" + "BillingPlanPlanType": { + "type": "string", + "enum": [ + "self_serve", + "custom", + "default" + ], + "title": "BillingPlanPlanType" }, - "Voice Settings Presets_createVoiceSettingsPreset_Response_201": { + "BillingPlanBillingInterval": { + "type": "string", + "enum": [ + "monthly", + "quarterly", + "annual" + ], + "title": "BillingPlanBillingInterval" + }, + "BillingPlanFamily": { "type": "object", "properties": { - "success": { - "type": "boolean" - }, - "data": { - "$ref": "#/components/schemas/VoiceSettingsPresetsPostResponsesContentApplicationJsonSchemaData" + "key": { + "type": "string" }, - "message": { + "name": { "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "position": { + "type": [ + "integer", + "null" + ] } }, - "title": "Voice Settings Presets_createVoiceSettingsPreset_Response_201" + "title": "BillingPlanFamily" }, - "VoiceSettingsPresetsUuidGetResponsesContentApplicationJsonSchemaData": { - "type": "object", - "properties": {}, - "title": "VoiceSettingsPresetsUuidGetResponsesContentApplicationJsonSchemaData" + "BillingPlanProductCategory": { + "type": "string", + "enum": [ + "metered", + "subscription", + "base_fee", + "included_credits" + ], + "title": "BillingPlanProductCategory" }, - "Voice Settings Presets_getVoiceSettingsPreset_Response_200": { + "BillingProductRateTier": { "type": "object", "properties": { - "success": { - "type": "boolean" + "tier_order": { + "type": "integer" }, - "data": { - "$ref": "#/components/schemas/VoiceSettingsPresetsUuidGetResponsesContentApplicationJsonSchemaData" + "min_quantity": { + "type": "number", + "format": "double" + }, + "max_quantity": { + "type": [ + "number", + "null" + ], + "format": "double" + }, + "rate_per_unit_cents": { + "type": "integer" + }, + "rate_per_unit_dollars": { + "type": "number", + "format": "double" } }, - "title": "Voice Settings Presets_getVoiceSettingsPreset_Response_200" + "title": "BillingProductRateTier" }, - "Voice Settings Presets_deleteVoiceSettingsPreset_Response_200": { + "BillingProductFamily": { "type": "object", "properties": { - "success": { - "type": "boolean" + "key": { + "type": "string" + }, + "name": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "position": { + "type": [ + "integer", + "null" + ] } }, - "title": "Voice Settings Presets_deleteVoiceSettingsPreset_Response_200" - }, - "VoiceSettingsPresetsUuidPatchResponsesContentApplicationJsonSchemaData": { - "type": "object", - "properties": {}, - "title": "VoiceSettingsPresetsUuidPatchResponsesContentApplicationJsonSchemaData" + "title": "BillingProductFamily" }, - "Voice Settings Presets_updateVoiceSettingsPreset_Response_200": { + "BillingPlanProduct": { "type": "object", "properties": { - "success": { + "id": { + "type": "integer", + "format": "int64" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string", + "description": "Stable product identifier used in product_quantities and changes requests." + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "unit_type": { + "type": "string" + }, + "category": { + "$ref": "#/components/schemas/BillingPlanProductCategory" + }, + "rate_per_unit_cents": { + "type": "integer" + }, + "rate_per_unit_dollars": { + "type": "number", + "format": "double" + }, + "has_tiers": { "type": "boolean" }, - "data": { - "$ref": "#/components/schemas/VoiceSettingsPresetsUuidPatchResponsesContentApplicationJsonSchemaData" + "tiers": { + "type": "array", + "items": { + "$ref": "#/components/schemas/BillingProductRateTier" + } + }, + "included_quantity": { + "type": [ + "number", + "null" + ], + "format": "double" + }, + "allow_additional_usage": { + "type": "boolean", + "description": "Whether the plan permits the product quantity to be changed." + }, + "min_usage_per_period": { + "type": [ + "number", + "null" + ], + "format": "double", + "description": "Minimum allowed quantity for this product on the plan." + }, + "max_usage_per_period": { + "type": [ + "number", + "null" + ], + "format": "double", + "description": "Maximum allowed quantity for this product on the plan. Null means no plan-specific maximum." + }, + "ui_visible": { + "type": "boolean", + "description": "Whether the product is displayed in Resemble billing interfaces." + }, + "product_family": { + "oneOf": [ + { + "$ref": "#/components/schemas/BillingProductFamily" + }, + { + "type": "null" + } + ] } }, - "title": "Voice Settings Presets_updateVoiceSettingsPreset_Response_200" + "description": "A product and its pricing and quantity rules on a plan.", + "title": "BillingPlanProduct" }, - "ProjectsGetResponsesContentApplicationJsonSchemaItemsItems": { + "BillingPlan": { "type": "object", "properties": { - "uuid": { - "type": "string" + "id": { + "type": "integer", + "format": "int64" }, "name": { "type": "string" }, - "description": { - "type": "string" + "slug": { + "type": "string", + "description": "Stable plan identifier used when creating or changing a subscription." + }, + "plan_type": { + "$ref": "#/components/schemas/BillingPlanPlanType" + }, + "base_fee_cents": { + "type": "integer" + }, + "base_fee_dollars": { + "type": "number", + "format": "double" + }, + "total_base_cost_cents": { + "type": "integer" + }, + "total_base_cost_dollars": { + "type": "number", + "format": "double" + }, + "included_dollar_balance_cents": { + "type": "integer" + }, + "included_dollar_balance_dollars": { + "type": "number", + "format": "double" + }, + "billing_interval": { + "$ref": "#/components/schemas/BillingPlanBillingInterval" + }, + "plan_family": { + "oneOf": [ + { + "$ref": "#/components/schemas/BillingPlanFamily" + }, + { + "type": "null" + } + ] + }, + "active": { + "type": "boolean" + }, + "products": { + "type": "array", + "items": { + "$ref": "#/components/schemas/BillingPlanProduct" + } }, "created_at": { "type": "string", @@ -10156,493 +12889,711 @@ "updated_at": { "type": "string", "format": "date-time" - }, - "is_collaborative": { - "type": "boolean" - }, - "is_archived": { - "type": "boolean" } }, - "title": "ProjectsGetResponsesContentApplicationJsonSchemaItemsItems" + "title": "BillingPlan" }, - "Projects_listProjects_Response_200": { + "BillingPlansResponse": { "type": "object", "properties": { - "success": { - "type": "boolean" - }, - "items": { + "plans": { "type": "array", "items": { - "$ref": "#/components/schemas/ProjectsGetResponsesContentApplicationJsonSchemaItemsItems" + "$ref": "#/components/schemas/BillingPlan" } } }, - "title": "Projects_listProjects_Response_200" + "required": [ + "plans" + ], + "title": "BillingPlansResponse" }, - "ProjectsPostResponsesContentApplicationJsonSchemaItem": { + "BillingError": { "type": "object", "properties": { - "uuid": { - "type": "string" + "error": { + "type": "string", + "description": "Human-readable error message." + } + }, + "required": [ + "error" + ], + "title": "BillingError" + }, + "BillingPlanResponse": { + "type": "object", + "properties": { + "plan": { + "$ref": "#/components/schemas/BillingPlan" + } + }, + "required": [ + "plan" + ], + "title": "BillingPlanResponse" + }, + "BillingSubscriptionStatus": { + "type": "string", + "enum": [ + "pending_payment", + "active_pending_payment", + "active", + "trialing", + "cancelled", + "expired", + "past_due", + "delinquent" + ], + "title": "BillingSubscriptionStatus" + }, + "BillingSubscriptionProductCategory": { + "type": "string", + "enum": [ + "metered", + "subscription", + "base_fee", + "included_credits" + ], + "title": "BillingSubscriptionProductCategory" + }, + "BillingSubscriptionProduct": { + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" }, "name": { "type": "string" }, - "description": { + "slug": { + "type": "string", + "description": "Product identifier to send as product_slug when updating quantities." + }, + "unit_type": { "type": "string" }, - "created_at": { - "type": "string", - "format": "date-time" + "category": { + "$ref": "#/components/schemas/BillingSubscriptionProductCategory" }, - "updated_at": { - "type": "string", - "format": "date-time" + "description": { + "type": [ + "string", + "null" + ] }, - "is_collaborative": { + "active": { "type": "boolean" }, - "is_archived": { - "type": "boolean" + "min_purchase_quantity": { + "type": [ + "number", + "null" + ], + "format": "double" + }, + "max_purchase_quantity": { + "type": [ + "number", + "null" + ], + "format": "double" } }, - "title": "ProjectsPostResponsesContentApplicationJsonSchemaItem" + "title": "BillingSubscriptionProduct" }, - "Projects_createProject_Response_200": { + "BillingSubscriptionPlanProduct": { "type": "object", "properties": { - "success": { + "included_quantity": { + "type": [ + "number", + "null" + ], + "format": "double" + }, + "allow_additional_usage": { "type": "boolean" }, - "item": { - "$ref": "#/components/schemas/ProjectsPostResponsesContentApplicationJsonSchemaItem" + "min_usage_per_period": { + "type": [ + "number", + "null" + ], + "format": "double" + }, + "max_usage_per_period": { + "type": [ + "number", + "null" + ], + "format": "double" } }, - "title": "Projects_createProject_Response_200" + "description": "Quantity rules inherited from the subscription's current plan.", + "title": "BillingSubscriptionPlanProduct" }, - "ProjectsProjectUuidGetResponsesContentApplicationJsonSchemaItem": { + "BillingSubscriptionItem": { "type": "object", "properties": { - "uuid": { - "type": "string" + "id": { + "type": "integer", + "format": "int64" }, - "name": { - "type": "string" + "quantity": { + "type": "number", + "format": "double", + "description": "Current absolute quantity on the subscription." }, - "description": { - "type": "string" + "consumed_quantity": { + "type": "number", + "format": "double", + "description": "Quantity currently in use. A product cannot be reduced below this value." }, - "created_at": { - "type": "string", - "format": "date-time" + "product": { + "$ref": "#/components/schemas/BillingSubscriptionProduct" }, - "updated_at": { - "type": "string", - "format": "date-time" + "plan_product": { + "oneOf": [ + { + "$ref": "#/components/schemas/BillingSubscriptionPlanProduct" + }, + { + "type": "null" + } + ] }, - "is_collaborative": { - "type": "boolean" + "rate_per_unit_cents": { + "type": "number", + "format": "double", + "description": "Locked-in unit rate for this subscription item." }, - "is_archived": { - "type": "boolean" - } - }, - "title": "ProjectsProjectUuidGetResponsesContentApplicationJsonSchemaItem" - }, - "Projects_getProject_Response_200": { - "type": "object", - "properties": { - "success": { + "current_rate_per_unit_cents": { + "type": "number", + "format": "double", + "description": "Current catalog unit rate for comparison." + }, + "is_grandfathered": { "type": "boolean" }, - "item": { - "$ref": "#/components/schemas/ProjectsProjectUuidGetResponsesContentApplicationJsonSchemaItem" + "rate_locked_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" + }, + "ui_visible": { + "type": "boolean" } }, - "title": "Projects_getProject_Response_200" + "title": "BillingSubscriptionItem" }, - "ProjectsProjectUuidPutResponsesContentApplicationJsonSchemaItem": { + "BillingSubscription": { "type": "object", "properties": { - "uuid": { - "type": "string" + "id": { + "type": "integer", + "format": "int64" }, - "name": { - "type": "string" + "plan": { + "$ref": "#/components/schemas/BillingPlan" }, - "description": { - "type": "string" + "status": { + "$ref": "#/components/schemas/BillingSubscriptionStatus" }, - "created_at": { + "current_period_start": { "type": "string", "format": "date-time" }, - "updated_at": { + "current_period_end": { "type": "string", "format": "date-time" }, - "is_collaborative": { + "cancel_at_period_end": { "type": "boolean" }, - "is_archived": { - "type": "boolean" - } - }, - "title": "ProjectsProjectUuidPutResponsesContentApplicationJsonSchemaItem" - }, - "Projects_updateProject_Response_200": { - "type": "object", - "properties": { - "success": { - "type": "boolean" + "cancel_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" }, - "item": { - "$ref": "#/components/schemas/ProjectsProjectUuidPutResponsesContentApplicationJsonSchemaItem" - } - }, - "title": "Projects_updateProject_Response_200" - }, - "Projects_deleteProject_Response_200": { - "type": "object", - "properties": { - "success": { - "type": "boolean" - } - }, - "title": "Projects_deleteProject_Response_200" - }, - "ProjectsProjectUuidClipsGetResponsesContentApplicationJsonSchemaItemsItems": { - "type": "object", - "properties": {}, - "title": "ProjectsProjectUuidClipsGetResponsesContentApplicationJsonSchemaItemsItems" - }, - "Clips_listClips_Response_200": { - "type": "object", - "properties": { - "success": { - "type": "boolean" + "activated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" }, - "items": { + "invoice_due_date": { + "type": [ + "string", + "null" + ], + "format": "date" + }, + "delinquent_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" + }, + "subscription_items": { "type": "array", "items": { - "$ref": "#/components/schemas/ProjectsProjectUuidClipsGetResponsesContentApplicationJsonSchemaItemsItems" + "$ref": "#/components/schemas/BillingSubscriptionItem" } + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" } }, - "title": "Clips_listClips_Response_200" - }, - "ProjectsProjectUuidClipsClipUuidGetResponsesContentApplicationJsonSchemaItem": { - "type": "object", - "properties": {}, - "title": "ProjectsProjectUuidClipsClipUuidGetResponsesContentApplicationJsonSchemaItem" + "title": "BillingSubscription" }, - "Clips_getClip_Response_200": { + "BillingSubscriptionResponse": { "type": "object", "properties": { - "success": { - "type": "boolean" - }, - "item": { - "$ref": "#/components/schemas/ProjectsProjectUuidClipsClipUuidGetResponsesContentApplicationJsonSchemaItem" + "subscription": { + "oneOf": [ + { + "$ref": "#/components/schemas/BillingSubscription" + }, + { + "type": "null" + } + ] } }, - "title": "Clips_getClip_Response_200" + "required": [ + "subscription" + ], + "title": "BillingSubscriptionResponse" }, - "Clips_deleteClip_Response_200": { + "BillingForbiddenError": { "type": "object", "properties": { - "success": { - "type": "boolean" + "error": { + "type": "string", + "description": "Human-readable authorization or eligibility error." + }, + "error_code": { + "type": [ + "string", + "null" + ], + "description": "Machine-readable error code when one is available." } }, - "title": "Clips_deleteClip_Response_200" - }, - "ProjectsProjectUuidClipsClipUuidPatchResponsesContentApplicationJsonSchemaItem": { - "type": "object", - "properties": {}, - "title": "ProjectsProjectUuidClipsClipUuidPatchResponsesContentApplicationJsonSchemaItem" + "required": [ + "error" + ], + "title": "BillingForbiddenError" }, - "Clips_updateClip_Response_200": { + "BillingProductQuantityChange": { "type": "object", "properties": { - "success": { - "type": "boolean" + "product_slug": { + "type": "string", + "description": "Product slug returned by the subscription response." }, - "item": { - "$ref": "#/components/schemas/ProjectsProjectUuidClipsClipUuidPatchResponsesContentApplicationJsonSchemaItem" + "new_quantity": { + "type": "number", + "format": "double", + "description": "Desired absolute total, not an increment or decrement." } }, - "title": "Clips_updateClip_Response_200" - }, - "DuetVoicesGetResponsesContentApplicationJsonSchemaItemsItems": { - "type": "object", - "properties": {}, - "title": "DuetVoicesGetResponsesContentApplicationJsonSchemaItemsItems" + "required": [ + "product_slug", + "new_quantity" + ], + "title": "BillingProductQuantityChange" }, - "Duets_listDuetVoices_Response_200": { + "BillingUpdateProductsRequest": { "type": "object", "properties": { - "success": { - "type": "boolean" - }, - "items": { + "changes": { "type": "array", "items": { - "$ref": "#/components/schemas/DuetVoicesGetResponsesContentApplicationJsonSchemaItemsItems" + "$ref": "#/components/schemas/BillingProductQuantityChange" } } }, - "title": "Duets_listDuetVoices_Response_200" - }, - "DuetVoicesPostResponsesContentApplicationJsonSchemaItem": { - "type": "object", - "properties": {}, - "title": "DuetVoicesPostResponsesContentApplicationJsonSchemaItem" - }, - "Duets_createDuetVoice_Response_200": { - "type": "object", - "properties": { - "success": { - "type": "boolean" - }, - "item": { - "$ref": "#/components/schemas/DuetVoicesPostResponsesContentApplicationJsonSchemaItem" - } - }, - "title": "Duets_createDuetVoice_Response_200" - }, - "DuetVoicesIdPutResponsesContentApplicationJsonSchemaItem": { - "type": "object", - "properties": {}, - "title": "DuetVoicesIdPutResponsesContentApplicationJsonSchemaItem" + "required": [ + "changes" + ], + "title": "BillingUpdateProductsRequest" }, - "Duets_updateDuetVoice_Response_200": { + "BillingPaymentActionRequired": { "type": "object", "properties": { - "success": { + "requires_action": { "type": "boolean" }, - "item": { - "$ref": "#/components/schemas/DuetVoicesIdPutResponsesContentApplicationJsonSchemaItem" - } - }, - "title": "Duets_updateDuetVoice_Response_200" - }, - "Duets_deleteDuetVoice_Response_200": { - "type": "object", - "properties": { - "success": { - "type": "boolean" + "client_secret": { + "type": "string", + "description": "Client secret used to complete the required payment authentication." } }, - "title": "Duets_deleteDuetVoice_Response_200" - }, - "DuetVoicePairsGetResponsesContentApplicationJsonSchemaItemsItems": { - "type": "object", - "properties": {}, - "title": "DuetVoicePairsGetResponsesContentApplicationJsonSchemaItemsItems" - }, - "Duets_listDuetVoicePairs_Response_200": { - "type": "object", - "properties": { - "success": { - "type": "boolean" - }, - "items": { + "required": [ + "requires_action", + "client_secret" + ], + "title": "BillingPaymentActionRequired" + }, + "BillingValidationErrors": { + "type": "object", + "properties": { + "errors": { "type": "array", "items": { - "$ref": "#/components/schemas/DuetVoicePairsGetResponsesContentApplicationJsonSchemaItemsItems" + "type": "string" } } }, - "title": "Duets_listDuetVoicePairs_Response_200" + "required": [ + "errors" + ], + "title": "BillingValidationErrors" }, - "DuetVoicePairsPostResponsesContentApplicationJsonSchemaItem": { - "type": "object", - "properties": {}, - "title": "DuetVoicePairsPostResponsesContentApplicationJsonSchemaItem" + "UpdateBillingSubscriptionProductsRequestUnprocessableEntityError": { + "oneOf": [ + { + "$ref": "#/components/schemas/BillingError" + }, + { + "$ref": "#/components/schemas/BillingValidationErrors" + } + ], + "title": "UpdateBillingSubscriptionProductsRequestUnprocessableEntityError" }, - "Duets_createDuetVoicePair_Response_200": { + "BillingConfirmPaymentRequest": { "type": "object", "properties": { - "success": { - "type": "boolean" - }, - "item": { - "$ref": "#/components/schemas/DuetVoicePairsPostResponsesContentApplicationJsonSchemaItem" + "payment_intent_id": { + "type": "string", + "description": "Payment intent identifier completed by the customer." } }, - "title": "Duets_createDuetVoicePair_Response_200" + "required": [ + "payment_intent_id" + ], + "title": "BillingConfirmPaymentRequest" }, - "DuetPostRequestBodyContentApplicationJsonSchemaScriptItemsSpeaker": { - "type": "string", - "enum": [ - "0", - "1" + "ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError": { + "oneOf": [ + { + "$ref": "#/components/schemas/BillingError" + }, + { + "$ref": "#/components/schemas/BillingValidationErrors" + } ], - "description": "Speaker index (0 or 1)", - "title": "DuetPostRequestBodyContentApplicationJsonSchemaScriptItemsSpeaker" + "title": "ConfirmBillingSubscriptionPaymentRequestUnprocessableEntityError" }, - "DuetPostRequestBodyContentApplicationJsonSchemaScriptItems": { + "BillingChangePlanRequest": { "type": "object", "properties": { - "speaker": { - "$ref": "#/components/schemas/DuetPostRequestBodyContentApplicationJsonSchemaScriptItemsSpeaker", - "description": "Speaker index (0 or 1)" + "plan_slug": { + "type": "string" }, - "text": { - "type": "string", - "description": "Text for this speaker" + "product_quantities": { + "type": "object", + "additionalProperties": { + "type": "number", + "format": "double" + }, + "description": "Optional map of product slugs to desired quantities on the new plan." } }, "required": [ - "speaker", - "text" + "plan_slug" ], - "title": "DuetPostRequestBodyContentApplicationJsonSchemaScriptItems" + "title": "BillingChangePlanRequest" }, - "DuetPostResponsesContentApplicationJsonSchemaItem": { + "ChangeBillingPlanRequestUnprocessableEntityError": { + "oneOf": [ + { + "$ref": "#/components/schemas/BillingError" + }, + { + "$ref": "#/components/schemas/BillingValidationErrors" + } + ], + "title": "ChangeBillingPlanRequestUnprocessableEntityError" + }, + "BillingWallet": { "type": "object", "properties": { - "uuid": { - "type": "string" + "balance_cents": { + "type": "number", + "format": "double" }, - "status": { - "type": "string" + "balance_dollars": { + "type": "number", + "format": "double" + }, + "cash_balance_cents": { + "type": "number", + "format": "double" + }, + "cash_balance_dollars": { + "type": "number", + "format": "double" + }, + "promotional_balance_cents": { + "type": "number", + "format": "double" + }, + "promotional_balance_dollars": { + "type": "number", + "format": "double" + }, + "lifetime_loaded_cents": { + "type": "number", + "format": "double" + }, + "lifetime_loaded_dollars": { + "type": "number", + "format": "double" + }, + "lifetime_consumed_cents": { + "type": "number", + "format": "double" + }, + "lifetime_consumed_dollars": { + "type": "number", + "format": "double" + }, + "low_balance": { + "type": "boolean" } }, - "title": "DuetPostResponsesContentApplicationJsonSchemaItem" + "title": "BillingWallet" }, - "Duets_generateDuet_Response_200": { + "BillingWalletResponse": { "type": "object", "properties": { - "success": { - "type": "boolean" - }, - "item": { - "$ref": "#/components/schemas/DuetPostResponsesContentApplicationJsonSchemaItem" + "wallet": { + "$ref": "#/components/schemas/BillingWallet" } }, - "title": "Duets_generateDuet_Response_200" + "title": "BillingWalletResponse" }, - "AccountGetResponsesContentApplicationJsonSchemaItem": { + "BillingWalletTransactionTransactionType": { + "type": "string", + "enum": [ + "credit_purchase", + "trial_credit", + "promotion_bonus", + "usage_deduction", + "refund", + "manual_adjustment", + "subscription_renewal_credit", + "promotional_credit_adjustment", + "plan_change", + "plan_subscription", + "subscription_cancellation" + ], + "title": "BillingWalletTransactionTransactionType" + }, + "BillingWalletTransaction": { "type": "object", "properties": { - "email": { - "type": "string" + "id": { + "type": "integer", + "format": "int64" }, - "first_name": { - "type": "string" + "transaction_type": { + "$ref": "#/components/schemas/BillingWalletTransactionTransactionType" }, - "last_name": { - "type": "string" + "amount_cents": { + "type": "number", + "format": "double", + "description": "Positive for credits and negative for debits." + }, + "balance_after_cents": { + "type": "number", + "format": "double" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "metadata": { + "type": "object", + "additionalProperties": { + "description": "Any type" + } }, "created_at": { "type": "string", "format": "date-time" + } + }, + "title": "BillingWalletTransaction" + }, + "BillingPagination": { + "type": "object", + "properties": { + "page": { + "type": "integer" }, - "teams": { + "per_page": { + "type": "integer" + }, + "total_count": { + "type": "integer" + }, + "total_pages": { "type": "integer" } }, - "title": "AccountGetResponsesContentApplicationJsonSchemaItem" + "title": "BillingPagination" }, - "Account_getAccount_Response_200": { + "BillingTransactionsResponse": { "type": "object", "properties": { - "success": { - "type": "boolean" + "transactions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/BillingWalletTransaction" + } }, - "item": { - "$ref": "#/components/schemas/AccountGetResponsesContentApplicationJsonSchemaItem" + "pagination": { + "$ref": "#/components/schemas/BillingPagination" } }, - "title": "Account_getAccount_Response_200" + "required": [ + "transactions" + ], + "title": "BillingTransactionsResponse" }, - "AccountTeamsGetResponsesContentApplicationJsonSchemaItemsItems": { + "BillingAutoReloadSetting": { "type": "object", "properties": { - "uuid": { - "type": "string" + "enabled": { + "type": "boolean" }, - "name": { - "type": "string" + "reload_amount_cents": { + "type": "integer" }, - "plan": { - "type": "string" + "reload_amount_dollars": { + "type": "number", + "format": "double" }, - "voice_limit": { + "minimum_balance_threshold_cents": { "type": "integer" }, - "units": { - "type": "string" + "minimum_balance_threshold_dollars": { + "type": "number", + "format": "double" }, - "rate": { - "type": "number" + "maximum_monthly_spend_cents": { + "type": "integer" }, - "current_usage": { + "maximum_monthly_spend_dollars": { + "type": "number", + "format": "double" + }, + "current_month_spend_cents": { "type": "integer" + }, + "current_month_spend_dollars": { + "type": "number", + "format": "double" + }, + "remaining_monthly_allowance_cents": { + "type": "integer" + }, + "remaining_monthly_allowance_dollars": { + "type": "number", + "format": "double" + }, + "has_payment_method": { + "type": "boolean" + }, + "can_reload": { + "type": "boolean" } }, - "title": "AccountTeamsGetResponsesContentApplicationJsonSchemaItemsItems" + "title": "BillingAutoReloadSetting" }, - "Account_getTeams_Response_200": { + "BillingAutoReloadResponse": { "type": "object", "properties": { - "success": { - "type": "boolean" + "auto_reload": { + "oneOf": [ + { + "$ref": "#/components/schemas/BillingAutoReloadSetting" + }, + { + "type": "null" + } + ] }, - "items": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AccountTeamsGetResponsesContentApplicationJsonSchemaItemsItems" - } + "minimum_reload_amount_cents": { + "type": "integer" + }, + "maximum_reload_amount_cents": { + "type": "integer" } }, - "title": "Account_getTeams_Response_200" + "title": "BillingAutoReloadResponse" }, - "AccountTeamsTeamUuidGetResponsesContentApplicationJsonSchemaItem": { + "BillingUpdateAutoReloadRequest": { "type": "object", "properties": { - "uuid": { - "type": "string", - "format": "uuid" - }, - "name": { - "type": "string" - }, - "plan": { - "type": "string" + "enabled": { + "type": "boolean" }, - "voice_limit": { + "reload_amount_cents": { "type": "integer" }, - "units": { - "type": "string" - }, - "rate": { - "type": "number", - "format": "double" + "minimum_balance_threshold_cents": { + "type": "integer" }, - "current_usage": { + "maximum_monthly_spend_cents": { "type": "integer" } }, - "title": "AccountTeamsTeamUuidGetResponsesContentApplicationJsonSchemaItem" + "required": [ + "enabled", + "reload_amount_cents", + "minimum_balance_threshold_cents", + "maximum_monthly_spend_cents" + ], + "title": "BillingUpdateAutoReloadRequest" }, - "Account_getTeam_Response_200": { + "Billing Wallet_updateBillingAutoReload_Response_200": { "type": "object", "properties": { - "success": { - "type": "boolean" - }, - "item": { - "$ref": "#/components/schemas/AccountTeamsTeamUuidGetResponsesContentApplicationJsonSchemaItem" + "auto_reload": { + "$ref": "#/components/schemas/BillingAutoReloadSetting" } }, - "title": "Account_getTeam_Response_200" + "title": "Billing Wallet_updateBillingAutoReload_Response_200" + }, + "UpdateBillingAutoReloadRequestUnprocessableEntityError": { + "oneOf": [ + { + "$ref": "#/components/schemas/BillingError" + }, + { + "$ref": "#/components/schemas/BillingValidationErrors" + } + ], + "title": "UpdateBillingAutoReloadRequestUnprocessableEntityError" }, "AccountBillingUsageGetResponsesContentApplicationJsonSchemaItem": { "type": "object", @@ -10657,7 +13608,6 @@ "title": "AccountBillingUsageGetResponsesContentApplicationJsonSchemaItem" }, "Account_getBillingUsage_Response_200": { - "type": "object", "properties": { "success": { "type": "boolean" @@ -10665,15 +13615,14 @@ "items": { "$ref": "#/components/schemas/AccountBillingUsageGetResponsesContentApplicationJsonSchemaItem" } - }, - "title": "Account_getBillingUsage_Response_200" + } } }, "securitySchemes": { "BearerAuth": { "type": "http", "scheme": "bearer", - "description": "API token from https://app.resemble.ai/account/api" + "description": "API key from https://app.resemble.ai/hub/api" } } }