// Generated Beladed Java API client 0.1.0-beta.1.
// API version: 2026-07-11; operations: 283; contract: sha256:478f3385fbfb86f845f794fe3e71f4f6411059faab2ad4605087d4e219bc6377.
// Source: reviewed public OpenAPI only. Unlisted operations are intentionally unavailable.
package com.beladed;

import java.io.IOException;
import java.net.URI;
import java.net.URLEncoder;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.nio.charset.StandardCharsets;
import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public final class BeladedClient {
    private static final Map<String, String> BASE_URLS = Map.of(
        "development", "https://api.beladed.dev",
        "production", "https://api.beladed.com"
    );
    private static final Pattern PATH_PARAMETER = Pattern.compile("\\{([^}]+)}");
    private static final Pattern CREDENTIAL_QUERY_KEY = Pattern.compile("^(?:api[_-]?key|public[_-]?key|secret[_-]?key|access[_-]?token|session[_-]?token|client[_-]?secret)$", Pattern.CASE_INSENSITIVE);
    private static final Map<String, Operation> OPERATIONS = createOperations();

    private final String baseUrl;
    private final String executionContext;
    private final Credentials credentials;
    private final HttpClient httpClient;

    public BeladedClient(String environment, String executionContext, Credentials credentials) {
        this(environment, executionContext, credentials, HttpClient.newHttpClient());
    }

    public BeladedClient(String environment, String executionContext, Credentials credentials, HttpClient httpClient) {
        if (!BASE_URLS.containsKey(environment)) throw new BeladedApiException("Unknown environment " + environment, null, null, null);
        if (!executionContext.equals("server")) throw new BeladedApiException("The Java SDK supports only server execution", null, null, null);
        this.baseUrl = BASE_URLS.get(environment);
        this.executionContext = executionContext;
        this.credentials = credentials == null ? Credentials.empty() : credentials;
        this.httpClient = httpClient;
    }

    private static Map<String, Operation> createOperations() {
        Map<String, Operation> values = new HashMap<>();
        values.put("accountsAccountGeneralForgotPost", new Operation("accountsAccountGeneralForgotPost", "POST", "/api/account/general/forgot", "public", false));
        values.put("accountsAccountGeneralGetAccountidGet", new Operation("accountsAccountGeneralGetAccountidGet", "GET", "/api/account/general/get/{accountId}", "authenticated_session", false));
        values.put("accountsAccountGeneralGetSessionsGet", new Operation("accountsAccountGeneralGetSessionsGet", "GET", "/api/account/general/get-sessions", "authenticated_session", false));
        values.put("accountsAccountGeneralLogoutDevicePost", new Operation("accountsAccountGeneralLogoutDevicePost", "POST", "/api/account/general/logout-device", "authenticated_session", false));
        values.put("accountsAccountGeneralLogoutEverywherePost", new Operation("accountsAccountGeneralLogoutEverywherePost", "POST", "/api/account/general/logout-everywhere", "authenticated_session", false));
        values.put("accountsAccountGeneralLogoutPost", new Operation("accountsAccountGeneralLogoutPost", "POST", "/api/account/general/logout", "authenticated_session", false));
        values.put("accountsAccountGeneralResetPut", new Operation("accountsAccountGeneralResetPut", "PUT", "/api/account/general/reset", "authenticated_session", false));
        values.put("accountsAccountGeneralSessionGet", new Operation("accountsAccountGeneralSessionGet", "GET", "/api/account/general/session", "authenticated_session", false));
        values.put("accountsAccountGeneralSetPasswordPost", new Operation("accountsAccountGeneralSetPasswordPost", "POST", "/api/account/general/set-password", "authenticated_session", false));
        values.put("accountsCreate", new Operation("accountsCreate", "POST", "/api/account/general/create", "public", false));
        values.put("accountsListTypes", new Operation("accountsListTypes", "GET", "/api/account/types/get", "public", false));
        values.put("accountsLogin", new Operation("accountsLogin", "POST", "/api/account/general/login", "public", false));
        values.put("adsAdsAdvertisementCreatePost", new Operation("adsAdsAdvertisementCreatePost", "POST", "/api/ads/advertisement/create", "secret_key", false));
        values.put("adsAdsAdvertisementGetPost", new Operation("adsAdsAdvertisementGetPost", "POST", "/api/ads/advertisement/get", "secret_key", false));
        values.put("adsAdsAttributionAllGet", new Operation("adsAdsAttributionAllGet", "GET", "/api/ads/attribution/all", "secret_key", false));
        values.put("adsAdsAttributionCreatePost", new Operation("adsAdsAttributionCreatePost", "POST", "/api/ads/attribution/create", "secret_key", false));
        values.put("adsAdsAttributionDeleteAttributionidDelete", new Operation("adsAdsAttributionDeleteAttributionidDelete", "DELETE", "/api/ads/attribution/delete/{attributionId}", "secret_key", false));
        values.put("adsAdsAttributionGetAttributionidGet", new Operation("adsAdsAttributionGetAttributionidGet", "GET", "/api/ads/attribution/get/{attributionId}", "secret_key", false));
        values.put("adsAdsAttributionUpdateAttributionidPut", new Operation("adsAdsAttributionUpdateAttributionidPut", "PUT", "/api/ads/attribution/update/{attributionId}", "secret_key", false));
        values.put("adsAdsBiddingAllGet", new Operation("adsAdsBiddingAllGet", "GET", "/api/ads/bidding/all", "secret_key", false));
        values.put("adsAdsBiddingCreatePost", new Operation("adsAdsBiddingCreatePost", "POST", "/api/ads/bidding/create", "secret_key", false));
        values.put("adsAdsInteractionCreatePost", new Operation("adsAdsInteractionCreatePost", "POST", "/api/ads/interaction/create", "secret_key", false));
        values.put("adsAdsInventoryAllGet", new Operation("adsAdsInventoryAllGet", "GET", "/api/ads/inventory/all", "secret_key", false));
        values.put("adsAdsInventoryCreatePost", new Operation("adsAdsInventoryCreatePost", "POST", "/api/ads/inventory/create", "secret_key", false));
        values.put("adsAdsPlacementAllGet", new Operation("adsAdsPlacementAllGet", "GET", "/api/ads/placement/all", "secret_key", false));
        values.put("adsAdsPlacementChoicePlacementidPost", new Operation("adsAdsPlacementChoicePlacementidPost", "POST", "/api/ads/placement/choice/{placementId}", "public", false));
        values.put("adsAdsPlacementInteractPlacementidPost", new Operation("adsAdsPlacementInteractPlacementidPost", "POST", "/api/ads/placement/interact/{placementId}", "public", false));
        values.put("adsAdsPlacementVotePlacementidPost", new Operation("adsAdsPlacementVotePlacementidPost", "POST", "/api/ads/placement/vote/{placementId}", "public", false));
        values.put("adsCreatePlacement", new Operation("adsCreatePlacement", "POST", "/api/ads/placement/create", "secret_key", false));
        values.put("embedsGet", new Operation("embedsGet", "POST", "/api/vote/embed/get", "publishable_key", true));
        values.put("embedsList", new Operation("embedsList", "POST", "/api/vote/embed/all", "publishable_key", true));
        values.put("embedsVoteEmbedCreatePost", new Operation("embedsVoteEmbedCreatePost", "POST", "/api/vote/embed/create", "secret_key", false));
        values.put("embedsVoteEmbedDeletePost", new Operation("embedsVoteEmbedDeletePost", "POST", "/api/vote/embed/delete", "secret_key", false));
        values.put("embedsVoteEmbedUpdatePut", new Operation("embedsVoteEmbedUpdatePut", "PUT", "/api/vote/embed/update", "secret_key", false));
        values.put("eventsCreate", new Operation("eventsCreate", "POST", "/api/events/general/create", "secret_key", false));
        values.put("eventsEventsGeneralDeletePost", new Operation("eventsEventsGeneralDeletePost", "POST", "/api/events/general/delete", "secret_key", false));
        values.put("eventsGetPublic", new Operation("eventsGetPublic", "GET", "/api/events/general/get", "public", false));
        values.put("eventsListPublic", new Operation("eventsListPublic", "GET", "/api/events/general/all", "public", false));
        values.put("eventsUpdate", new Operation("eventsUpdate", "PUT", "/api/events/general/update", "secret_key", false));
        values.put("livestreamCreate", new Operation("livestreamCreate", "POST", "/api/video/stream/create", "secret_key", false));
        values.put("livestreamGet", new Operation("livestreamGet", "GET", "/api/video/stream/get", "secret_key", false));
        values.put("livestreamVideoCategoryAllGet", new Operation("livestreamVideoCategoryAllGet", "GET", "/api/video/category/all", "secret_key", false));
        values.put("livestreamVideoCategoryCreatePost", new Operation("livestreamVideoCategoryCreatePost", "POST", "/api/video/category/create", "secret_key", false));
        values.put("livestreamVideoCategoryDeletePost", new Operation("livestreamVideoCategoryDeletePost", "POST", "/api/video/category/delete", "secret_key", false));
        values.put("livestreamVideoCategoryGetGet", new Operation("livestreamVideoCategoryGetGet", "GET", "/api/video/category/get", "secret_key", false));
        values.put("livestreamVideoCategoryUpdatePut", new Operation("livestreamVideoCategoryUpdatePut", "PUT", "/api/video/category/update", "secret_key", false));
        values.put("livestreamVideoChannelAllGet", new Operation("livestreamVideoChannelAllGet", "GET", "/api/video/channel/all", "secret_key", false));
        values.put("livestreamVideoChannelCreatePost", new Operation("livestreamVideoChannelCreatePost", "POST", "/api/video/channel/create", "secret_key", false));
        values.put("livestreamVideoChannelDeletePost", new Operation("livestreamVideoChannelDeletePost", "POST", "/api/video/channel/delete", "secret_key", false));
        values.put("livestreamVideoChannelGetGet", new Operation("livestreamVideoChannelGetGet", "GET", "/api/video/channel/get", "secret_key", false));
        values.put("livestreamVideoChannelUpdatePut", new Operation("livestreamVideoChannelUpdatePut", "PUT", "/api/video/channel/update", "secret_key", false));
        values.put("livestreamVideoDetailsAllGet", new Operation("livestreamVideoDetailsAllGet", "GET", "/api/video/details/all", "secret_key", false));
        values.put("livestreamVideoDetailsCreatePost", new Operation("livestreamVideoDetailsCreatePost", "POST", "/api/video/details/create", "secret_key", false));
        values.put("livestreamVideoDetailsDeletePost", new Operation("livestreamVideoDetailsDeletePost", "POST", "/api/video/details/delete", "secret_key", false));
        values.put("livestreamVideoDetailsGetGet", new Operation("livestreamVideoDetailsGetGet", "GET", "/api/video/details/get", "secret_key", false));
        values.put("livestreamVideoDetailsUpdatePut", new Operation("livestreamVideoDetailsUpdatePut", "PUT", "/api/video/details/update", "secret_key", false));
        values.put("livestreamVideoEventCreatePost", new Operation("livestreamVideoEventCreatePost", "POST", "/api/video/event/create", "secret_key", false));
        values.put("livestreamVideoEventDeletePost", new Operation("livestreamVideoEventDeletePost", "POST", "/api/video/event/delete", "secret_key", false));
        values.put("livestreamVideoEventUpdatePut", new Operation("livestreamVideoEventUpdatePut", "PUT", "/api/video/event/update", "secret_key", false));
        values.put("livestreamVideoStaticAllGet", new Operation("livestreamVideoStaticAllGet", "GET", "/api/video/static/all", "secret_key", false));
        values.put("livestreamVideoStaticCreatePost", new Operation("livestreamVideoStaticCreatePost", "POST", "/api/video/static/create", "secret_key", false));
        values.put("livestreamVideoStaticDeletePost", new Operation("livestreamVideoStaticDeletePost", "POST", "/api/video/static/delete", "secret_key", false));
        values.put("livestreamVideoStaticGetGet", new Operation("livestreamVideoStaticGetGet", "GET", "/api/video/static/get", "secret_key", false));
        values.put("livestreamVideoStaticUpdatePut", new Operation("livestreamVideoStaticUpdatePut", "PUT", "/api/video/static/update", "secret_key", false));
        values.put("livestreamVideoStreamAllGet", new Operation("livestreamVideoStreamAllGet", "GET", "/api/video/stream/all", "secret_key", false));
        values.put("livestreamVideoStreamCreateclipPost", new Operation("livestreamVideoStreamCreateclipPost", "POST", "/api/video/stream/createClip", "secret_key", false));
        values.put("livestreamVideoStreamDeletePost", new Operation("livestreamVideoStreamDeletePost", "POST", "/api/video/stream/delete", "secret_key", false));
        values.put("livestreamVideoStreamGetanalyticsPost", new Operation("livestreamVideoStreamGetanalyticsPost", "POST", "/api/video/stream/getAnalytics", "secret_key", false));
        values.put("livestreamVideoStreamGetembedcodePost", new Operation("livestreamVideoStreamGetembedcodePost", "POST", "/api/video/stream/getEmbedCode", "secret_key", false));
        values.put("livestreamVideoStreamGetstatusPost", new Operation("livestreamVideoStreamGetstatusPost", "POST", "/api/video/stream/getStatus", "secret_key", false));
        values.put("livestreamVideoStreamUpdatePut", new Operation("livestreamVideoStreamUpdatePut", "PUT", "/api/video/stream/update", "secret_key", false));
        values.put("livestreamVideoSubcategoryAllGet", new Operation("livestreamVideoSubcategoryAllGet", "GET", "/api/video/subcategory/all", "secret_key", false));
        values.put("livestreamVideoSubcategoryCreatePost", new Operation("livestreamVideoSubcategoryCreatePost", "POST", "/api/video/subcategory/create", "secret_key", false));
        values.put("livestreamVideoSubcategoryDeletePost", new Operation("livestreamVideoSubcategoryDeletePost", "POST", "/api/video/subcategory/delete", "secret_key", false));
        values.put("livestreamVideoSubcategoryGetGet", new Operation("livestreamVideoSubcategoryGetGet", "GET", "/api/video/subcategory/get", "secret_key", false));
        values.put("livestreamVideoSubcategoryUpdatePut", new Operation("livestreamVideoSubcategoryUpdatePut", "PUT", "/api/video/subcategory/update", "secret_key", false));
        values.put("loyaltyCreateItem", new Operation("loyaltyCreateItem", "POST", "/api/incentive/loyalty/create", "secret_key", false));
        values.put("loyaltyIncentiveLoyaltyAllGet", new Operation("loyaltyIncentiveLoyaltyAllGet", "GET", "/api/incentive/loyalty/all", "secret_key", false));
        values.put("loyaltyIncentiveLoyaltyDeletePost", new Operation("loyaltyIncentiveLoyaltyDeletePost", "POST", "/api/incentive/loyalty/delete", "secret_key", false));
        values.put("loyaltyIncentiveLoyaltyGetGet", new Operation("loyaltyIncentiveLoyaltyGetGet", "GET", "/api/incentive/loyalty/get", "secret_key", false));
        values.put("loyaltyIncentiveLoyaltyUpdatePut", new Operation("loyaltyIncentiveLoyaltyUpdatePut", "PUT", "/api/incentive/loyalty/update", "secret_key", false));
        values.put("loyaltyIncentivePromotionAllGet", new Operation("loyaltyIncentivePromotionAllGet", "GET", "/api/incentive/promotion/all", "secret_key", false));
        values.put("loyaltyIncentivePromotionCreatePost", new Operation("loyaltyIncentivePromotionCreatePost", "POST", "/api/incentive/promotion/create", "secret_key", false));
        values.put("loyaltyIncentivePromotionDeletePost", new Operation("loyaltyIncentivePromotionDeletePost", "POST", "/api/incentive/promotion/delete", "secret_key", false));
        values.put("loyaltyIncentivePromotionGetGet", new Operation("loyaltyIncentivePromotionGetGet", "GET", "/api/incentive/promotion/get", "secret_key", false));
        values.put("loyaltyIncentivePromotionUpdatePut", new Operation("loyaltyIncentivePromotionUpdatePut", "PUT", "/api/incentive/promotion/update", "secret_key", false));
        values.put("loyaltyIncentiveRewardAllGet", new Operation("loyaltyIncentiveRewardAllGet", "GET", "/api/incentive/reward/all", "secret_key", false));
        values.put("loyaltyIncentiveRewardCreatePost", new Operation("loyaltyIncentiveRewardCreatePost", "POST", "/api/incentive/reward/create", "secret_key", false));
        values.put("loyaltyIncentiveRewardDeletePost", new Operation("loyaltyIncentiveRewardDeletePost", "POST", "/api/incentive/reward/delete", "secret_key", false));
        values.put("loyaltyIncentiveRewardGetGet", new Operation("loyaltyIncentiveRewardGetGet", "GET", "/api/incentive/reward/get", "secret_key", false));
        values.put("loyaltyIncentiveRewardUpdatePut", new Operation("loyaltyIncentiveRewardUpdatePut", "PUT", "/api/incentive/reward/update", "secret_key", false));
        values.put("marketingCreateCampaign", new Operation("marketingCreateCampaign", "POST", "/api/marketing/campaign/create", "secret_key", false));
        values.put("marketingMarketingAutomationCreatePost", new Operation("marketingMarketingAutomationCreatePost", "POST", "/api/marketing/automation/create", "secret_key", false));
        values.put("marketingMarketingAutomationDeletePost", new Operation("marketingMarketingAutomationDeletePost", "POST", "/api/marketing/automation/delete", "secret_key", false));
        values.put("marketingMarketingAutomationGetPost", new Operation("marketingMarketingAutomationGetPost", "POST", "/api/marketing/automation/get", "secret_key", false));
        values.put("marketingMarketingAutomationUpdatePost", new Operation("marketingMarketingAutomationUpdatePost", "POST", "/api/marketing/automation/update", "secret_key", false));
        values.put("marketingMarketingCampaignAllPost", new Operation("marketingMarketingCampaignAllPost", "POST", "/api/marketing/campaign/all", "secret_key", false));
        values.put("marketingMarketingCampaignGetPost", new Operation("marketingMarketingCampaignGetPost", "POST", "/api/marketing/campaign/get", "secret_key", false));
        values.put("marketingMarketingContactAllPost", new Operation("marketingMarketingContactAllPost", "POST", "/api/marketing/contact/all", "secret_key", false));
        values.put("marketingMarketingContactCreatePost", new Operation("marketingMarketingContactCreatePost", "POST", "/api/marketing/contact/create", "secret_key", false));
        values.put("marketingMarketingContactDeletePost", new Operation("marketingMarketingContactDeletePost", "POST", "/api/marketing/contact/delete", "secret_key", false));
        values.put("marketingMarketingContactGetPost", new Operation("marketingMarketingContactGetPost", "POST", "/api/marketing/contact/get", "secret_key", false));
        values.put("marketingMarketingContactUpdatePost", new Operation("marketingMarketingContactUpdatePost", "POST", "/api/marketing/contact/update", "secret_key", false));
        values.put("marketingMarketingEmailsequenceCreatePost", new Operation("marketingMarketingEmailsequenceCreatePost", "POST", "/api/marketing/emailSequence/create", "secret_key", false));
        values.put("marketingMarketingEmailsequenceDeletePost", new Operation("marketingMarketingEmailsequenceDeletePost", "POST", "/api/marketing/emailSequence/delete", "secret_key", false));
        values.put("marketingMarketingEmailsequenceGetPost", new Operation("marketingMarketingEmailsequenceGetPost", "POST", "/api/marketing/emailSequence/get", "secret_key", false));
        values.put("marketingMarketingIntegrationAllPost", new Operation("marketingMarketingIntegrationAllPost", "POST", "/api/marketing/integration/all", "secret_key", false));
        values.put("marketingMarketingIntegrationCreatePost", new Operation("marketingMarketingIntegrationCreatePost", "POST", "/api/marketing/integration/create", "secret_key", false));
        values.put("marketingMarketingIntegrationDeletePost", new Operation("marketingMarketingIntegrationDeletePost", "POST", "/api/marketing/integration/delete", "secret_key", false));
        values.put("marketingMarketingIntegrationGetPost", new Operation("marketingMarketingIntegrationGetPost", "POST", "/api/marketing/integration/get", "secret_key", false));
        values.put("marketingMarketingIntegrationUpdatePost", new Operation("marketingMarketingIntegrationUpdatePost", "POST", "/api/marketing/integration/update", "secret_key", false));
        values.put("marketingMarketingLeadscoreGetPost", new Operation("marketingMarketingLeadscoreGetPost", "POST", "/api/marketing/leadScore/get", "secret_key", false));
        values.put("marketingMarketingLeadscoreUpdatePost", new Operation("marketingMarketingLeadscoreUpdatePost", "POST", "/api/marketing/leadScore/update", "secret_key", false));
        values.put("marketingMarketingSegmentAllPost", new Operation("marketingMarketingSegmentAllPost", "POST", "/api/marketing/segment/all", "secret_key", false));
        values.put("marketingMarketingSegmentCreatePost", new Operation("marketingMarketingSegmentCreatePost", "POST", "/api/marketing/segment/create", "secret_key", false));
        values.put("marketingMarketingSegmentDeletePost", new Operation("marketingMarketingSegmentDeletePost", "POST", "/api/marketing/segment/delete", "secret_key", false));
        values.put("marketingMarketingSegmentGetPost", new Operation("marketingMarketingSegmentGetPost", "POST", "/api/marketing/segment/get", "secret_key", false));
        values.put("marketingMarketingSegmentUpdatePost", new Operation("marketingMarketingSegmentUpdatePost", "POST", "/api/marketing/segment/update", "secret_key", false));
        values.put("marketingMarketingTemplateAllPost", new Operation("marketingMarketingTemplateAllPost", "POST", "/api/marketing/template/all", "secret_key", false));
        values.put("marketingMarketingTemplateCreatePost", new Operation("marketingMarketingTemplateCreatePost", "POST", "/api/marketing/template/create", "secret_key", false));
        values.put("marketingMarketingTemplateDeletePost", new Operation("marketingMarketingTemplateDeletePost", "POST", "/api/marketing/template/delete", "secret_key", false));
        values.put("marketingMarketingTemplateGetPost", new Operation("marketingMarketingTemplateGetPost", "POST", "/api/marketing/template/get", "secret_key", false));
        values.put("marketingMarketingTemplateUpdatePost", new Operation("marketingMarketingTemplateUpdatePost", "POST", "/api/marketing/template/update", "secret_key", false));
        values.put("pagesCreate", new Operation("pagesCreate", "POST", "/api/pages/general/create", "secret_key", false));
        values.put("pagesCreateLead", new Operation("pagesCreateLead", "POST", "/api/pages/leads/create", "public", false));
        values.put("pagesGetPublic", new Operation("pagesGetPublic", "GET", "/api/pages/general/get", "public", false));
        values.put("pagesListPublic", new Operation("pagesListPublic", "GET", "/api/pages/general/all", "public", false));
        values.put("pagesPagesGeneralAnalyticsGet", new Operation("pagesPagesGeneralAnalyticsGet", "GET", "/api/pages/general/analytics", "secret_key", false));
        values.put("pagesPagesGeneralDeleteDelete", new Operation("pagesPagesGeneralDeleteDelete", "DELETE", "/api/pages/general/delete", "secret_key", false));
        values.put("pagesPagesGeneralStatsGet", new Operation("pagesPagesGeneralStatsGet", "GET", "/api/pages/general/stats", "secret_key", false));
        values.put("pagesPagesGeneralUpdatePut", new Operation("pagesPagesGeneralUpdatePut", "PUT", "/api/pages/general/update", "secret_key", false));
        values.put("pagesPagesLeadsAllGet", new Operation("pagesPagesLeadsAllGet", "GET", "/api/pages/leads/all", "public", false));
        values.put("pagesPagesLeadsDeleteDelete", new Operation("pagesPagesLeadsDeleteDelete", "DELETE", "/api/pages/leads/delete", "secret_key", false));
        values.put("pagesPagesLeadsGetGet", new Operation("pagesPagesLeadsGetGet", "GET", "/api/pages/leads/get", "public", false));
        values.put("pagesPagesLeadsUpdatePut", new Operation("pagesPagesLeadsUpdatePut", "PUT", "/api/pages/leads/update", "secret_key", false));
        values.put("paymentsCreateCustomer", new Operation("paymentsCreateCustomer", "POST", "/api/payment/customer/create", "secret_key", false));
        values.put("paymentsCreateLink", new Operation("paymentsCreateLink", "POST", "/api/payment/link/create", "secret_key", false));
        values.put("paymentsCreateSubscription", new Operation("paymentsCreateSubscription", "POST", "/api/payment/subscription/create", "secret_key", false));
        values.put("paymentsGetSubscription", new Operation("paymentsGetSubscription", "POST", "/api/payment/subscription/get", "secret_key", false));
        values.put("paymentsGetTransaction", new Operation("paymentsGetTransaction", "POST", "/api/payment/transaction/get", "secret_key", false));
        values.put("paymentsPaySShortidGet", new Operation("paymentsPaySShortidGet", "GET", "/api/pay/s/{shortId}", "public", false));
        values.put("paymentsPayShortidGet", new Operation("paymentsPayShortidGet", "GET", "/api/pay/{shortId}", "public", false));
        values.put("paymentsPaymentChargeAllPost", new Operation("paymentsPaymentChargeAllPost", "POST", "/api/payment/charge/all", "secret_key", false));
        values.put("paymentsPaymentChargeCreatePost", new Operation("paymentsPaymentChargeCreatePost", "POST", "/api/payment/charge/create", "secret_key", false));
        values.put("paymentsPaymentChargeDeletePost", new Operation("paymentsPaymentChargeDeletePost", "POST", "/api/payment/charge/delete", "secret_key", false));
        values.put("paymentsPaymentChargeGetPost", new Operation("paymentsPaymentChargeGetPost", "POST", "/api/payment/charge/get", "secret_key", false));
        values.put("paymentsPaymentChargeRefundPost", new Operation("paymentsPaymentChargeRefundPost", "POST", "/api/payment/charge/refund", "secret_key", false));
        values.put("paymentsPaymentChargeReversePost", new Operation("paymentsPaymentChargeReversePost", "POST", "/api/payment/charge/reverse", "secret_key", false));
        values.put("paymentsPaymentChargeUpdatePost", new Operation("paymentsPaymentChargeUpdatePost", "POST", "/api/payment/charge/update", "secret_key", false));
        values.put("paymentsPaymentChargeUpdatePut", new Operation("paymentsPaymentChargeUpdatePut", "PUT", "/api/payment/charge/update", "secret_key", false));
        values.put("paymentsPaymentCustomerAllPost", new Operation("paymentsPaymentCustomerAllPost", "POST", "/api/payment/customer/all", "secret_key", false));
        values.put("paymentsPaymentCustomerDeletePost", new Operation("paymentsPaymentCustomerDeletePost", "POST", "/api/payment/customer/delete", "secret_key", false));
        values.put("paymentsPaymentCustomerGetPost", new Operation("paymentsPaymentCustomerGetPost", "POST", "/api/payment/customer/get", "secret_key", false));
        values.put("paymentsPaymentCustomerSearchPost", new Operation("paymentsPaymentCustomerSearchPost", "POST", "/api/payment/customer/search", "secret_key", false));
        values.put("paymentsPaymentCustomerUpdatePost", new Operation("paymentsPaymentCustomerUpdatePost", "POST", "/api/payment/customer/update", "secret_key", false));
        values.put("paymentsPaymentInvoiceChargePost", new Operation("paymentsPaymentInvoiceChargePost", "POST", "/api/payment/invoice/charge", "secret_key", false));
        values.put("paymentsPaymentInvoiceCreatePost", new Operation("paymentsPaymentInvoiceCreatePost", "POST", "/api/payment/invoice/create", "secret_key", false));
        values.put("paymentsPaymentInvoiceDeletePost", new Operation("paymentsPaymentInvoiceDeletePost", "POST", "/api/payment/invoice/delete", "secret_key", false));
        values.put("paymentsPaymentInvoiceGetGet", new Operation("paymentsPaymentInvoiceGetGet", "GET", "/api/payment/invoice/get", "secret_key", false));
        values.put("paymentsPaymentInvoiceGetallGet", new Operation("paymentsPaymentInvoiceGetallGet", "GET", "/api/payment/invoice/getAll", "secret_key", false));
        values.put("paymentsPaymentInvoiceResendPost", new Operation("paymentsPaymentInvoiceResendPost", "POST", "/api/payment/invoice/resend", "secret_key", false));
        values.put("paymentsPaymentInvoiceSearchGet", new Operation("paymentsPaymentInvoiceSearchGet", "GET", "/api/payment/invoice/search", "secret_key", false));
        values.put("paymentsPaymentInvoiceSearchbycustomerGet", new Operation("paymentsPaymentInvoiceSearchbycustomerGet", "GET", "/api/payment/invoice/searchByCustomer", "secret_key", false));
        values.put("paymentsPaymentInvoiceSearchbydaterangeGet", new Operation("paymentsPaymentInvoiceSearchbydaterangeGet", "GET", "/api/payment/invoice/searchByDateRange", "secret_key", false));
        values.put("paymentsPaymentInvoiceSearchbystatusGet", new Operation("paymentsPaymentInvoiceSearchbystatusGet", "GET", "/api/payment/invoice/searchByStatus", "secret_key", false));
        values.put("paymentsPaymentInvoiceSendPost", new Operation("paymentsPaymentInvoiceSendPost", "POST", "/api/payment/invoice/send", "secret_key", false));
        values.put("paymentsPaymentInvoiceUpdatePost", new Operation("paymentsPaymentInvoiceUpdatePost", "POST", "/api/payment/invoice/update", "secret_key", false));
        values.put("paymentsPaymentLinkAllPost", new Operation("paymentsPaymentLinkAllPost", "POST", "/api/payment/link/all", "secret_key", false));
        values.put("paymentsPaymentLinkGetPost", new Operation("paymentsPaymentLinkGetPost", "POST", "/api/payment/link/get", "secret_key", false));
        values.put("paymentsPaymentLinkUpdatePost", new Operation("paymentsPaymentLinkUpdatePost", "POST", "/api/payment/link/update", "secret_key", false));
        values.put("paymentsPaymentPaymentlinkClonePost", new Operation("paymentsPaymentPaymentlinkClonePost", "POST", "/api/payment/paymentLink/clone", "secret_key", false));
        values.put("paymentsPaymentPaymentlinkDeletePost", new Operation("paymentsPaymentPaymentlinkDeletePost", "POST", "/api/payment/paymentLink/delete", "secret_key", false));
        values.put("paymentsPaymentPaymentlinkGenerateqrPost", new Operation("paymentsPaymentPaymentlinkGenerateqrPost", "POST", "/api/payment/paymentLink/generateQr", "secret_key", false));
        values.put("paymentsPaymentPaymentlinkGetdonorsPaymentlinkidGet", new Operation("paymentsPaymentPaymentlinkGetdonorsPaymentlinkidGet", "GET", "/api/payment/paymentLink/getDonors/{paymentLinkId}", "secret_key", false));
        values.put("paymentsPaymentPaymentlinkGetgoalprogressPaymentlinkidGet", new Operation("paymentsPaymentPaymentlinkGetgoalprogressPaymentlinkidGet", "GET", "/api/payment/paymentLink/getGoalProgress/{paymentLinkId}", "secret_key", false));
        values.put("paymentsPaymentPaymentlinkGetpaymentsPost", new Operation("paymentsPaymentPaymentlinkGetpaymentsPost", "POST", "/api/payment/paymentLink/getPayments", "secret_key", false));
        values.put("paymentsPaymentPaymentlinkGetsubscriptionsGet", new Operation("paymentsPaymentPaymentlinkGetsubscriptionsGet", "GET", "/api/payment/paymentLink/getSubscriptions", "secret_key", false));
        values.put("paymentsPaymentPaymentlinkSharePost", new Operation("paymentsPaymentPaymentlinkSharePost", "POST", "/api/payment/paymentLink/share", "secret_key", false));
        values.put("paymentsPaymentPromotionAllGet", new Operation("paymentsPaymentPromotionAllGet", "GET", "/api/payment/promotion/all", "secret_key", false));
        values.put("paymentsPaymentPromotionCreatePost", new Operation("paymentsPaymentPromotionCreatePost", "POST", "/api/payment/promotion/create", "secret_key", false));
        values.put("paymentsPaymentPromotionDeleteDelete", new Operation("paymentsPaymentPromotionDeleteDelete", "DELETE", "/api/payment/promotion/delete", "secret_key", false));
        values.put("paymentsPaymentPromotionGetGet", new Operation("paymentsPaymentPromotionGetGet", "GET", "/api/payment/promotion/get", "secret_key", false));
        values.put("paymentsPaymentPromotionUpdatePut", new Operation("paymentsPaymentPromotionUpdatePut", "PUT", "/api/payment/promotion/update", "secret_key", false));
        values.put("paymentsPaymentReceiptCreatePost", new Operation("paymentsPaymentReceiptCreatePost", "POST", "/api/payment/receipt/create", "secret_key", false));
        values.put("paymentsPaymentReceiptDownloadPost", new Operation("paymentsPaymentReceiptDownloadPost", "POST", "/api/payment/receipt/download", "secret_key", false));
        values.put("paymentsPaymentReceiptFormatPost", new Operation("paymentsPaymentReceiptFormatPost", "POST", "/api/payment/receipt/format", "secret_key", false));
        values.put("paymentsPaymentReceiptGetPost", new Operation("paymentsPaymentReceiptGetPost", "POST", "/api/payment/receipt/get", "secret_key", false));
        values.put("paymentsPaymentReceiptGetallPost", new Operation("paymentsPaymentReceiptGetallPost", "POST", "/api/payment/receipt/getAll", "secret_key", false));
        values.put("paymentsPaymentReceiptResendPost", new Operation("paymentsPaymentReceiptResendPost", "POST", "/api/payment/receipt/resend", "secret_key", false));
        values.put("paymentsPaymentReceiptSearchPost", new Operation("paymentsPaymentReceiptSearchPost", "POST", "/api/payment/receipt/search", "secret_key", false));
        values.put("paymentsPaymentReceiptSendPost", new Operation("paymentsPaymentReceiptSendPost", "POST", "/api/payment/receipt/send", "secret_key", false));
        values.put("paymentsPaymentRefundAllPost", new Operation("paymentsPaymentRefundAllPost", "POST", "/api/payment/refund/all", "secret_key", false));
        values.put("paymentsPaymentRefundCreatePost", new Operation("paymentsPaymentRefundCreatePost", "POST", "/api/payment/refund/create", "secret_key", false));
        values.put("paymentsPaymentRefundDeletePost", new Operation("paymentsPaymentRefundDeletePost", "POST", "/api/payment/refund/delete", "secret_key", false));
        values.put("paymentsPaymentRefundFullrefundPost", new Operation("paymentsPaymentRefundFullrefundPost", "POST", "/api/payment/refund/fullrefund", "secret_key", false));
        values.put("paymentsPaymentRefundGetPost", new Operation("paymentsPaymentRefundGetPost", "POST", "/api/payment/refund/get", "secret_key", false));
        values.put("paymentsPaymentRefundPartialrefundPost", new Operation("paymentsPaymentRefundPartialrefundPost", "POST", "/api/payment/refund/partialrefund", "secret_key", false));
        values.put("paymentsPaymentRefundProcessrefundPost", new Operation("paymentsPaymentRefundProcessrefundPost", "POST", "/api/payment/refund/processrefund", "secret_key", false));
        values.put("paymentsPaymentRefundSearchPost", new Operation("paymentsPaymentRefundSearchPost", "POST", "/api/payment/refund/search", "secret_key", false));
        values.put("paymentsPaymentRefundSearchbychargePost", new Operation("paymentsPaymentRefundSearchbychargePost", "POST", "/api/payment/refund/searchbycharge", "secret_key", false));
        values.put("paymentsPaymentRefundSearchbycustomerPost", new Operation("paymentsPaymentRefundSearchbycustomerPost", "POST", "/api/payment/refund/searchbycustomer", "secret_key", false));
        values.put("paymentsPaymentRefundSearchbydaterangePost", new Operation("paymentsPaymentRefundSearchbydaterangePost", "POST", "/api/payment/refund/searchbydaterange", "secret_key", false));
        values.put("paymentsPaymentRefundSearchbystatusPost", new Operation("paymentsPaymentRefundSearchbystatusPost", "POST", "/api/payment/refund/searchbystatus", "secret_key", false));
        values.put("paymentsPaymentRefundUpdatePost", new Operation("paymentsPaymentRefundUpdatePost", "POST", "/api/payment/refund/update", "secret_key", false));
        values.put("paymentsPaymentSubscriptionAllPost", new Operation("paymentsPaymentSubscriptionAllPost", "POST", "/api/payment/subscription/all", "secret_key", false));
        values.put("paymentsPaymentSubscriptionCancelPost", new Operation("paymentsPaymentSubscriptionCancelPost", "POST", "/api/payment/subscription/cancel", "secret_key", false));
        values.put("paymentsPaymentSubscriptionChangeplanPost", new Operation("paymentsPaymentSubscriptionChangeplanPost", "POST", "/api/payment/subscription/changePlan", "secret_key", false));
        values.put("paymentsPaymentSubscriptionDeleteDelete", new Operation("paymentsPaymentSubscriptionDeleteDelete", "DELETE", "/api/payment/subscription/delete", "secret_key", false));
        values.put("paymentsPaymentSubscriptionDeletePost", new Operation("paymentsPaymentSubscriptionDeletePost", "POST", "/api/payment/subscription/delete", "secret_key", false));
        values.put("paymentsPaymentSubscriptionEndtrialPost", new Operation("paymentsPaymentSubscriptionEndtrialPost", "POST", "/api/payment/subscription/endTrial", "secret_key", false));
        values.put("paymentsPaymentSubscriptionGetGet", new Operation("paymentsPaymentSubscriptionGetGet", "GET", "/api/payment/subscription/get", "secret_key", false));
        values.put("paymentsPaymentSubscriptionGetallGet", new Operation("paymentsPaymentSubscriptionGetallGet", "GET", "/api/payment/subscription/getAll", "secret_key", false));
        values.put("paymentsPaymentSubscriptionGethistoryGet", new Operation("paymentsPaymentSubscriptionGethistoryGet", "GET", "/api/payment/subscription/getHistory", "secret_key", false));
        values.put("paymentsPaymentSubscriptionGetinvoicesGet", new Operation("paymentsPaymentSubscriptionGetinvoicesGet", "GET", "/api/payment/subscription/getInvoices", "secret_key", false));
        values.put("paymentsPaymentSubscriptionGetnextbillingGet", new Operation("paymentsPaymentSubscriptionGetnextbillingGet", "GET", "/api/payment/subscription/getNextBilling", "secret_key", false));
        values.put("paymentsPaymentSubscriptionGetstatusGet", new Operation("paymentsPaymentSubscriptionGetstatusGet", "GET", "/api/payment/subscription/getStatus", "secret_key", false));
        values.put("paymentsPaymentSubscriptionGetusageGet", new Operation("paymentsPaymentSubscriptionGetusageGet", "GET", "/api/payment/subscription/getUsage", "secret_key", false));
        values.put("paymentsPaymentSubscriptionPausePost", new Operation("paymentsPaymentSubscriptionPausePost", "POST", "/api/payment/subscription/pause", "secret_key", false));
        values.put("paymentsPaymentSubscriptionReactivatePost", new Operation("paymentsPaymentSubscriptionReactivatePost", "POST", "/api/payment/subscription/reactivate", "secret_key", false));
        values.put("paymentsPaymentSubscriptionResumePost", new Operation("paymentsPaymentSubscriptionResumePost", "POST", "/api/payment/subscription/resume", "secret_key", false));
        values.put("paymentsPaymentSubscriptionSearchGet", new Operation("paymentsPaymentSubscriptionSearchGet", "GET", "/api/payment/subscription/search", "secret_key", false));
        values.put("paymentsPaymentSubscriptionSearchbycustomerGet", new Operation("paymentsPaymentSubscriptionSearchbycustomerGet", "GET", "/api/payment/subscription/searchByCustomer", "secret_key", false));
        values.put("paymentsPaymentSubscriptionSearchbyplanGet", new Operation("paymentsPaymentSubscriptionSearchbyplanGet", "GET", "/api/payment/subscription/searchByPlan", "secret_key", false));
        values.put("paymentsPaymentSubscriptionSearchbystatusGet", new Operation("paymentsPaymentSubscriptionSearchbystatusGet", "GET", "/api/payment/subscription/searchByStatus", "secret_key", false));
        values.put("paymentsPaymentSubscriptionStarttrialPost", new Operation("paymentsPaymentSubscriptionStarttrialPost", "POST", "/api/payment/subscription/startTrial", "secret_key", false));
        values.put("paymentsPaymentSubscriptionUpdatePost", new Operation("paymentsPaymentSubscriptionUpdatePost", "POST", "/api/payment/subscription/update", "secret_key", false));
        values.put("paymentsPaymentSubscriptionUpdatePut", new Operation("paymentsPaymentSubscriptionUpdatePut", "PUT", "/api/payment/subscription/update", "secret_key", false));
        values.put("paymentsPaymentSubscriptionUpdatepaymentmethodPost", new Operation("paymentsPaymentSubscriptionUpdatepaymentmethodPost", "POST", "/api/payment/subscription/updatePaymentMethod", "secret_key", false));
        values.put("paymentsPaymentSubscriptionplanAllPost", new Operation("paymentsPaymentSubscriptionplanAllPost", "POST", "/api/payment/subscriptionplan/all", "secret_key", false));
        values.put("paymentsPaymentSubscriptionplanCalculatepricePost", new Operation("paymentsPaymentSubscriptionplanCalculatepricePost", "POST", "/api/payment/subscriptionPlan/calculatePrice", "secret_key", false));
        values.put("paymentsPaymentSubscriptionplanCreatePost", new Operation("paymentsPaymentSubscriptionplanCreatePost", "POST", "/api/payment/subscriptionplan/create", "secret_key", false));
        values.put("paymentsPaymentSubscriptionplanDeleteDelete", new Operation("paymentsPaymentSubscriptionplanDeleteDelete", "DELETE", "/api/payment/subscriptionPlan/delete", "secret_key", false));
        values.put("paymentsPaymentSubscriptionplanDeletePost", new Operation("paymentsPaymentSubscriptionplanDeletePost", "POST", "/api/payment/subscriptionplan/delete", "secret_key", false));
        values.put("paymentsPaymentSubscriptionplanGetGet", new Operation("paymentsPaymentSubscriptionplanGetGet", "GET", "/api/payment/subscriptionPlan/get", "secret_key", false));
        values.put("paymentsPaymentSubscriptionplanGetPost", new Operation("paymentsPaymentSubscriptionplanGetPost", "POST", "/api/payment/subscriptionplan/get", "secret_key", false));
        values.put("paymentsPaymentSubscriptionplanGetallGet", new Operation("paymentsPaymentSubscriptionplanGetallGet", "GET", "/api/payment/subscriptionPlan/getall", "secret_key", false));
        values.put("paymentsPaymentSubscriptionplanGetfeaturesGet", new Operation("paymentsPaymentSubscriptionplanGetfeaturesGet", "GET", "/api/payment/subscriptionPlan/getFeatures", "secret_key", false));
        values.put("paymentsPaymentSubscriptionplanUpdatePost", new Operation("paymentsPaymentSubscriptionplanUpdatePost", "POST", "/api/payment/subscriptionplan/update", "secret_key", false));
        values.put("paymentsPaymentSubscriptionplanUpdatePut", new Operation("paymentsPaymentSubscriptionplanUpdatePut", "PUT", "/api/payment/subscriptionPlan/update", "secret_key", false));
        values.put("paymentsPaymentSubscriptionplanUpdatefeaturesPut", new Operation("paymentsPaymentSubscriptionplanUpdatefeaturesPut", "PUT", "/api/payment/subscriptionPlan/updateFeatures", "secret_key", false));
        values.put("paymentsPaymentTransactionCalculatefeePost", new Operation("paymentsPaymentTransactionCalculatefeePost", "POST", "/api/payment/transaction/calculateFee", "secret_key", false));
        values.put("paymentsPaymentTransactionCheckstatusPost", new Operation("paymentsPaymentTransactionCheckstatusPost", "POST", "/api/payment/transaction/checkStatus", "secret_key", false));
        values.put("paymentsPaymentTransactionCreatePost", new Operation("paymentsPaymentTransactionCreatePost", "POST", "/api/payment/transaction/create", "secret_key", false));
        values.put("paymentsPaymentTransactionDeletePost", new Operation("paymentsPaymentTransactionDeletePost", "POST", "/api/payment/transaction/delete", "secret_key", false));
        values.put("paymentsPaymentTransactionGetallPost", new Operation("paymentsPaymentTransactionGetallPost", "POST", "/api/payment/transaction/getAll", "secret_key", false));
        values.put("paymentsPaymentTransactionGetdetailsPost", new Operation("paymentsPaymentTransactionGetdetailsPost", "POST", "/api/payment/transaction/getDetails", "secret_key", false));
        values.put("paymentsPaymentTransactionGeteventsPost", new Operation("paymentsPaymentTransactionGeteventsPost", "POST", "/api/payment/transaction/getEvents", "secret_key", false));
        values.put("paymentsPaymentTransactionHistoryPost", new Operation("paymentsPaymentTransactionHistoryPost", "POST", "/api/payment/transaction/history", "secret_key", false));
        values.put("paymentsPaymentTransactionRefundPost", new Operation("paymentsPaymentTransactionRefundPost", "POST", "/api/payment/transaction/refund", "secret_key", false));
        values.put("paymentsPaymentTransactionUpdatePost", new Operation("paymentsPaymentTransactionUpdatePost", "POST", "/api/payment/transaction/update", "secret_key", false));
        values.put("paymentsPaymentTransactionVoidPost", new Operation("paymentsPaymentTransactionVoidPost", "POST", "/api/payment/transaction/void", "secret_key", false));
        values.put("placesCreate", new Operation("placesCreate", "POST", "/api/places/general/create", "secret_key", false));
        values.put("placesGetPublic", new Operation("placesGetPublic", "GET", "/api/places/general/get", "public", false));
        values.put("placesListPublic", new Operation("placesListPublic", "GET", "/api/places/general/all", "public", false));
        values.put("placesPlacesGeneralDeletePost", new Operation("placesPlacesGeneralDeletePost", "POST", "/api/places/general/delete", "secret_key", false));
        values.put("placesUpdate", new Operation("placesUpdate", "PUT", "/api/places/general/update", "secret_key", false));
        values.put("pollsCastVote", new Operation("pollsCastVote", "POST", "/api/vote/cast/create", "publishable_key", true));
        values.put("pollsVoteCastGetPost", new Operation("pollsVoteCastGetPost", "POST", "/api/vote/cast/get", "secret_key", false));
        values.put("pollsVoteCastGetallPost", new Operation("pollsVoteCastGetallPost", "POST", "/api/vote/cast/getall", "secret_key", false));
        values.put("sponsorsCreate", new Operation("sponsorsCreate", "POST", "/api/sponsor/general/create", "secret_key", false));
        values.put("sponsorsGetPublic", new Operation("sponsorsGetPublic", "GET", "/api/sponsor/general/get", "public", false));
        values.put("sponsorsSponsorGeneralAllGet", new Operation("sponsorsSponsorGeneralAllGet", "GET", "/api/sponsor/general/all", "public", false));
        values.put("sponsorsSponsorGeneralDeletePost", new Operation("sponsorsSponsorGeneralDeletePost", "POST", "/api/sponsor/general/delete", "secret_key", false));
        values.put("sponsorsSponsorGeneralUpdatePut", new Operation("sponsorsSponsorGeneralUpdatePut", "PUT", "/api/sponsor/general/update", "secret_key", false));
        values.put("teamsCreate", new Operation("teamsCreate", "POST", "/api/team/general/create", "secret_key", false));
        values.put("teamsTeamCategoryAllGet", new Operation("teamsTeamCategoryAllGet", "GET", "/api/team/category/all", "secret_key", false));
        values.put("teamsTeamCategoryCreatePost", new Operation("teamsTeamCategoryCreatePost", "POST", "/api/team/category/create", "secret_key", false));
        values.put("teamsTeamCategoryDeletePost", new Operation("teamsTeamCategoryDeletePost", "POST", "/api/team/category/delete", "secret_key", false));
        values.put("teamsTeamCategoryGetGet", new Operation("teamsTeamCategoryGetGet", "GET", "/api/team/category/get", "secret_key", false));
        values.put("teamsTeamCategoryUpdatePut", new Operation("teamsTeamCategoryUpdatePut", "PUT", "/api/team/category/update", "secret_key", false));
        values.put("teamsTeamGeneralAllGet", new Operation("teamsTeamGeneralAllGet", "GET", "/api/team/general/all", "secret_key", false));
        values.put("teamsTeamGeneralDeletePost", new Operation("teamsTeamGeneralDeletePost", "POST", "/api/team/general/delete", "secret_key", false));
        values.put("teamsTeamGeneralGetGet", new Operation("teamsTeamGeneralGetGet", "GET", "/api/team/general/get", "secret_key", false));
        values.put("teamsTeamGeneralUpdatePut", new Operation("teamsTeamGeneralUpdatePut", "PUT", "/api/team/general/update", "secret_key", false));
        values.put("teamsTeamSubcategoryAllGet", new Operation("teamsTeamSubcategoryAllGet", "GET", "/api/team/subcategory/all", "secret_key", false));
        values.put("teamsTeamSubcategoryCreatePost", new Operation("teamsTeamSubcategoryCreatePost", "POST", "/api/team/subcategory/create", "secret_key", false));
        values.put("teamsTeamSubcategoryDeletePost", new Operation("teamsTeamSubcategoryDeletePost", "POST", "/api/team/subcategory/delete", "secret_key", false));
        values.put("teamsTeamSubcategoryGetGet", new Operation("teamsTeamSubcategoryGetGet", "GET", "/api/team/subcategory/get", "secret_key", false));
        values.put("teamsTeamSubcategoryUpdatePut", new Operation("teamsTeamSubcategoryUpdatePut", "PUT", "/api/team/subcategory/update", "secret_key", false));
        values.put("vendorsCreate", new Operation("vendorsCreate", "POST", "/api/vendor/general/create", "secret_key", false));
        values.put("vendorsGetPublic", new Operation("vendorsGetPublic", "GET", "/api/vendor/general/get", "public", false));
        values.put("vendorsVendorGeneralAllGet", new Operation("vendorsVendorGeneralAllGet", "GET", "/api/vendor/general/all", "public", false));
        values.put("vendorsVendorGeneralUpdatePut", new Operation("vendorsVendorGeneralUpdatePut", "PUT", "/api/vendor/general/update", "secret_key", false));
        return Collections.unmodifiableMap(values);
    }

    private static String encode(String value) {
        return URLEncoder.encode(value, StandardCharsets.UTF_8).replace("+", "%20");
    }

    private String resolvePath(Operation operation, Map<String, String> pathValues) {
        Matcher matcher = PATH_PARAMETER.matcher(operation.path);
        StringBuffer result = new StringBuffer();
        while (matcher.find()) {
            String name = matcher.group(1);
            String value = pathValues.get(name);
            if (value == null || value.isEmpty()) throw new BeladedApiException("Missing path parameter " + name, null, operation.operationId, null);
            matcher.appendReplacement(result, Matcher.quoteReplacement(encode(value)));
        }
        matcher.appendTail(result);
        return result.toString();
    }

    private void authorize(Operation operation, HttpRequest.Builder builder) {
        String type = operation.credentialType;
        if (executionContext.equals("client") && (type.equals("secret_key") || type.equals("oauth_client"))) {
            throw new BeladedApiException("Operation requires a server-side credential", null, operation.operationId, null);
        }
        if (type.equals("publishable_key") && !operation.originRestricted) {
            throw new BeladedApiException("Operation is not approved for a publishable key", null, operation.operationId, null);
        }
        if (type.equals("public")) return;
        String credential = switch (type) {
            case "publishable_key" -> credentials.publishableKey;
            case "secret_key" -> credentials.secretKey;
            case "oauth_client" -> credentials.accessToken;
            case "authenticated_session" -> credentials.sessionToken;
            default -> null;
        };
        if (credential == null || credential.isEmpty()) throw new BeladedApiException("Missing " + type + " credential", null, operation.operationId, null);
        if (type.equals("publishable_key")) builder.header("X-Beladed-Public-Key", credential);
        else if (type.equals("secret_key")) builder.header("X-Beladed-API-Key", credential);
        else builder.header("Authorization", "Bearer " + credential);
    }

    public HttpResponse<String> request(String operationId, RequestOptions options) throws IOException, InterruptedException {
        Operation operation = OPERATIONS.get(operationId);
        if (operation == null) throw new BeladedApiException("Unknown or unpublished operation " + operationId, null, operationId, null);
        RequestOptions safeOptions = options == null ? RequestOptions.empty() : options;
        StringBuilder url = new StringBuilder(baseUrl).append(resolvePath(operation, safeOptions.path));
        boolean first = true;
        for (Map.Entry<String, String> entry : safeOptions.query.entrySet()) {
            if (CREDENTIAL_QUERY_KEY.matcher(entry.getKey()).matches()) throw new BeladedApiException("Credential query parameter " + entry.getKey() + " is forbidden", null, operationId, null);
            if (entry.getValue() == null) continue;
            url.append(first ? '?' : '&').append(encode(entry.getKey())).append('=').append(encode(entry.getValue()));
            first = false;
        }
        HttpRequest.BodyPublisher publisher = safeOptions.bodyJson == null ? HttpRequest.BodyPublishers.noBody() : HttpRequest.BodyPublishers.ofString(safeOptions.bodyJson);
        HttpRequest.Builder builder = HttpRequest.newBuilder(URI.create(url.toString())).header("Accept", "application/json").method(operation.method, publisher);
        if (safeOptions.bodyJson != null) builder.header("Content-Type", "application/json");
        authorize(operation, builder);
        HttpResponse<String> response = httpClient.send(builder.build(), HttpResponse.BodyHandlers.ofString());
        if (response.statusCode() >= 400) throw new BeladedApiException("Beladed request failed with HTTP " + response.statusCode(), response.statusCode(), operationId, response.body());
        return response;
    }

    public HttpResponse<String> accountsAccountGeneralForgotPost(RequestOptions options) throws IOException, InterruptedException { return request("accountsAccountGeneralForgotPost", options); }
    public HttpResponse<String> accountsAccountGeneralGetAccountidGet(RequestOptions options) throws IOException, InterruptedException { return request("accountsAccountGeneralGetAccountidGet", options); }
    public HttpResponse<String> accountsAccountGeneralGetSessionsGet(RequestOptions options) throws IOException, InterruptedException { return request("accountsAccountGeneralGetSessionsGet", options); }
    public HttpResponse<String> accountsAccountGeneralLogoutDevicePost(RequestOptions options) throws IOException, InterruptedException { return request("accountsAccountGeneralLogoutDevicePost", options); }
    public HttpResponse<String> accountsAccountGeneralLogoutEverywherePost(RequestOptions options) throws IOException, InterruptedException { return request("accountsAccountGeneralLogoutEverywherePost", options); }
    public HttpResponse<String> accountsAccountGeneralLogoutPost(RequestOptions options) throws IOException, InterruptedException { return request("accountsAccountGeneralLogoutPost", options); }
    public HttpResponse<String> accountsAccountGeneralResetPut(RequestOptions options) throws IOException, InterruptedException { return request("accountsAccountGeneralResetPut", options); }
    public HttpResponse<String> accountsAccountGeneralSessionGet(RequestOptions options) throws IOException, InterruptedException { return request("accountsAccountGeneralSessionGet", options); }
    public HttpResponse<String> accountsAccountGeneralSetPasswordPost(RequestOptions options) throws IOException, InterruptedException { return request("accountsAccountGeneralSetPasswordPost", options); }
    public HttpResponse<String> accountsCreate(RequestOptions options) throws IOException, InterruptedException { return request("accountsCreate", options); }
    public HttpResponse<String> accountsListTypes(RequestOptions options) throws IOException, InterruptedException { return request("accountsListTypes", options); }
    public HttpResponse<String> accountsLogin(RequestOptions options) throws IOException, InterruptedException { return request("accountsLogin", options); }
    public HttpResponse<String> adsAdsAdvertisementCreatePost(RequestOptions options) throws IOException, InterruptedException { return request("adsAdsAdvertisementCreatePost", options); }
    public HttpResponse<String> adsAdsAdvertisementGetPost(RequestOptions options) throws IOException, InterruptedException { return request("adsAdsAdvertisementGetPost", options); }
    public HttpResponse<String> adsAdsAttributionAllGet(RequestOptions options) throws IOException, InterruptedException { return request("adsAdsAttributionAllGet", options); }
    public HttpResponse<String> adsAdsAttributionCreatePost(RequestOptions options) throws IOException, InterruptedException { return request("adsAdsAttributionCreatePost", options); }
    public HttpResponse<String> adsAdsAttributionDeleteAttributionidDelete(RequestOptions options) throws IOException, InterruptedException { return request("adsAdsAttributionDeleteAttributionidDelete", options); }
    public HttpResponse<String> adsAdsAttributionGetAttributionidGet(RequestOptions options) throws IOException, InterruptedException { return request("adsAdsAttributionGetAttributionidGet", options); }
    public HttpResponse<String> adsAdsAttributionUpdateAttributionidPut(RequestOptions options) throws IOException, InterruptedException { return request("adsAdsAttributionUpdateAttributionidPut", options); }
    public HttpResponse<String> adsAdsBiddingAllGet(RequestOptions options) throws IOException, InterruptedException { return request("adsAdsBiddingAllGet", options); }
    public HttpResponse<String> adsAdsBiddingCreatePost(RequestOptions options) throws IOException, InterruptedException { return request("adsAdsBiddingCreatePost", options); }
    public HttpResponse<String> adsAdsInteractionCreatePost(RequestOptions options) throws IOException, InterruptedException { return request("adsAdsInteractionCreatePost", options); }
    public HttpResponse<String> adsAdsInventoryAllGet(RequestOptions options) throws IOException, InterruptedException { return request("adsAdsInventoryAllGet", options); }
    public HttpResponse<String> adsAdsInventoryCreatePost(RequestOptions options) throws IOException, InterruptedException { return request("adsAdsInventoryCreatePost", options); }
    public HttpResponse<String> adsAdsPlacementAllGet(RequestOptions options) throws IOException, InterruptedException { return request("adsAdsPlacementAllGet", options); }
    public HttpResponse<String> adsAdsPlacementChoicePlacementidPost(RequestOptions options) throws IOException, InterruptedException { return request("adsAdsPlacementChoicePlacementidPost", options); }
    public HttpResponse<String> adsAdsPlacementInteractPlacementidPost(RequestOptions options) throws IOException, InterruptedException { return request("adsAdsPlacementInteractPlacementidPost", options); }
    public HttpResponse<String> adsAdsPlacementVotePlacementidPost(RequestOptions options) throws IOException, InterruptedException { return request("adsAdsPlacementVotePlacementidPost", options); }
    public HttpResponse<String> adsCreatePlacement(RequestOptions options) throws IOException, InterruptedException { return request("adsCreatePlacement", options); }
    public HttpResponse<String> embedsGet(RequestOptions options) throws IOException, InterruptedException { return request("embedsGet", options); }
    public HttpResponse<String> embedsList(RequestOptions options) throws IOException, InterruptedException { return request("embedsList", options); }
    public HttpResponse<String> embedsVoteEmbedCreatePost(RequestOptions options) throws IOException, InterruptedException { return request("embedsVoteEmbedCreatePost", options); }
    public HttpResponse<String> embedsVoteEmbedDeletePost(RequestOptions options) throws IOException, InterruptedException { return request("embedsVoteEmbedDeletePost", options); }
    public HttpResponse<String> embedsVoteEmbedUpdatePut(RequestOptions options) throws IOException, InterruptedException { return request("embedsVoteEmbedUpdatePut", options); }
    public HttpResponse<String> eventsCreate(RequestOptions options) throws IOException, InterruptedException { return request("eventsCreate", options); }
    public HttpResponse<String> eventsEventsGeneralDeletePost(RequestOptions options) throws IOException, InterruptedException { return request("eventsEventsGeneralDeletePost", options); }
    public HttpResponse<String> eventsGetPublic(RequestOptions options) throws IOException, InterruptedException { return request("eventsGetPublic", options); }
    public HttpResponse<String> eventsListPublic(RequestOptions options) throws IOException, InterruptedException { return request("eventsListPublic", options); }
    public HttpResponse<String> eventsUpdate(RequestOptions options) throws IOException, InterruptedException { return request("eventsUpdate", options); }
    public HttpResponse<String> livestreamCreate(RequestOptions options) throws IOException, InterruptedException { return request("livestreamCreate", options); }
    public HttpResponse<String> livestreamGet(RequestOptions options) throws IOException, InterruptedException { return request("livestreamGet", options); }
    public HttpResponse<String> livestreamVideoCategoryAllGet(RequestOptions options) throws IOException, InterruptedException { return request("livestreamVideoCategoryAllGet", options); }
    public HttpResponse<String> livestreamVideoCategoryCreatePost(RequestOptions options) throws IOException, InterruptedException { return request("livestreamVideoCategoryCreatePost", options); }
    public HttpResponse<String> livestreamVideoCategoryDeletePost(RequestOptions options) throws IOException, InterruptedException { return request("livestreamVideoCategoryDeletePost", options); }
    public HttpResponse<String> livestreamVideoCategoryGetGet(RequestOptions options) throws IOException, InterruptedException { return request("livestreamVideoCategoryGetGet", options); }
    public HttpResponse<String> livestreamVideoCategoryUpdatePut(RequestOptions options) throws IOException, InterruptedException { return request("livestreamVideoCategoryUpdatePut", options); }
    public HttpResponse<String> livestreamVideoChannelAllGet(RequestOptions options) throws IOException, InterruptedException { return request("livestreamVideoChannelAllGet", options); }
    public HttpResponse<String> livestreamVideoChannelCreatePost(RequestOptions options) throws IOException, InterruptedException { return request("livestreamVideoChannelCreatePost", options); }
    public HttpResponse<String> livestreamVideoChannelDeletePost(RequestOptions options) throws IOException, InterruptedException { return request("livestreamVideoChannelDeletePost", options); }
    public HttpResponse<String> livestreamVideoChannelGetGet(RequestOptions options) throws IOException, InterruptedException { return request("livestreamVideoChannelGetGet", options); }
    public HttpResponse<String> livestreamVideoChannelUpdatePut(RequestOptions options) throws IOException, InterruptedException { return request("livestreamVideoChannelUpdatePut", options); }
    public HttpResponse<String> livestreamVideoDetailsAllGet(RequestOptions options) throws IOException, InterruptedException { return request("livestreamVideoDetailsAllGet", options); }
    public HttpResponse<String> livestreamVideoDetailsCreatePost(RequestOptions options) throws IOException, InterruptedException { return request("livestreamVideoDetailsCreatePost", options); }
    public HttpResponse<String> livestreamVideoDetailsDeletePost(RequestOptions options) throws IOException, InterruptedException { return request("livestreamVideoDetailsDeletePost", options); }
    public HttpResponse<String> livestreamVideoDetailsGetGet(RequestOptions options) throws IOException, InterruptedException { return request("livestreamVideoDetailsGetGet", options); }
    public HttpResponse<String> livestreamVideoDetailsUpdatePut(RequestOptions options) throws IOException, InterruptedException { return request("livestreamVideoDetailsUpdatePut", options); }
    public HttpResponse<String> livestreamVideoEventCreatePost(RequestOptions options) throws IOException, InterruptedException { return request("livestreamVideoEventCreatePost", options); }
    public HttpResponse<String> livestreamVideoEventDeletePost(RequestOptions options) throws IOException, InterruptedException { return request("livestreamVideoEventDeletePost", options); }
    public HttpResponse<String> livestreamVideoEventUpdatePut(RequestOptions options) throws IOException, InterruptedException { return request("livestreamVideoEventUpdatePut", options); }
    public HttpResponse<String> livestreamVideoStaticAllGet(RequestOptions options) throws IOException, InterruptedException { return request("livestreamVideoStaticAllGet", options); }
    public HttpResponse<String> livestreamVideoStaticCreatePost(RequestOptions options) throws IOException, InterruptedException { return request("livestreamVideoStaticCreatePost", options); }
    public HttpResponse<String> livestreamVideoStaticDeletePost(RequestOptions options) throws IOException, InterruptedException { return request("livestreamVideoStaticDeletePost", options); }
    public HttpResponse<String> livestreamVideoStaticGetGet(RequestOptions options) throws IOException, InterruptedException { return request("livestreamVideoStaticGetGet", options); }
    public HttpResponse<String> livestreamVideoStaticUpdatePut(RequestOptions options) throws IOException, InterruptedException { return request("livestreamVideoStaticUpdatePut", options); }
    public HttpResponse<String> livestreamVideoStreamAllGet(RequestOptions options) throws IOException, InterruptedException { return request("livestreamVideoStreamAllGet", options); }
    public HttpResponse<String> livestreamVideoStreamCreateclipPost(RequestOptions options) throws IOException, InterruptedException { return request("livestreamVideoStreamCreateclipPost", options); }
    public HttpResponse<String> livestreamVideoStreamDeletePost(RequestOptions options) throws IOException, InterruptedException { return request("livestreamVideoStreamDeletePost", options); }
    public HttpResponse<String> livestreamVideoStreamGetanalyticsPost(RequestOptions options) throws IOException, InterruptedException { return request("livestreamVideoStreamGetanalyticsPost", options); }
    public HttpResponse<String> livestreamVideoStreamGetembedcodePost(RequestOptions options) throws IOException, InterruptedException { return request("livestreamVideoStreamGetembedcodePost", options); }
    public HttpResponse<String> livestreamVideoStreamGetstatusPost(RequestOptions options) throws IOException, InterruptedException { return request("livestreamVideoStreamGetstatusPost", options); }
    public HttpResponse<String> livestreamVideoStreamUpdatePut(RequestOptions options) throws IOException, InterruptedException { return request("livestreamVideoStreamUpdatePut", options); }
    public HttpResponse<String> livestreamVideoSubcategoryAllGet(RequestOptions options) throws IOException, InterruptedException { return request("livestreamVideoSubcategoryAllGet", options); }
    public HttpResponse<String> livestreamVideoSubcategoryCreatePost(RequestOptions options) throws IOException, InterruptedException { return request("livestreamVideoSubcategoryCreatePost", options); }
    public HttpResponse<String> livestreamVideoSubcategoryDeletePost(RequestOptions options) throws IOException, InterruptedException { return request("livestreamVideoSubcategoryDeletePost", options); }
    public HttpResponse<String> livestreamVideoSubcategoryGetGet(RequestOptions options) throws IOException, InterruptedException { return request("livestreamVideoSubcategoryGetGet", options); }
    public HttpResponse<String> livestreamVideoSubcategoryUpdatePut(RequestOptions options) throws IOException, InterruptedException { return request("livestreamVideoSubcategoryUpdatePut", options); }
    public HttpResponse<String> loyaltyCreateItem(RequestOptions options) throws IOException, InterruptedException { return request("loyaltyCreateItem", options); }
    public HttpResponse<String> loyaltyIncentiveLoyaltyAllGet(RequestOptions options) throws IOException, InterruptedException { return request("loyaltyIncentiveLoyaltyAllGet", options); }
    public HttpResponse<String> loyaltyIncentiveLoyaltyDeletePost(RequestOptions options) throws IOException, InterruptedException { return request("loyaltyIncentiveLoyaltyDeletePost", options); }
    public HttpResponse<String> loyaltyIncentiveLoyaltyGetGet(RequestOptions options) throws IOException, InterruptedException { return request("loyaltyIncentiveLoyaltyGetGet", options); }
    public HttpResponse<String> loyaltyIncentiveLoyaltyUpdatePut(RequestOptions options) throws IOException, InterruptedException { return request("loyaltyIncentiveLoyaltyUpdatePut", options); }
    public HttpResponse<String> loyaltyIncentivePromotionAllGet(RequestOptions options) throws IOException, InterruptedException { return request("loyaltyIncentivePromotionAllGet", options); }
    public HttpResponse<String> loyaltyIncentivePromotionCreatePost(RequestOptions options) throws IOException, InterruptedException { return request("loyaltyIncentivePromotionCreatePost", options); }
    public HttpResponse<String> loyaltyIncentivePromotionDeletePost(RequestOptions options) throws IOException, InterruptedException { return request("loyaltyIncentivePromotionDeletePost", options); }
    public HttpResponse<String> loyaltyIncentivePromotionGetGet(RequestOptions options) throws IOException, InterruptedException { return request("loyaltyIncentivePromotionGetGet", options); }
    public HttpResponse<String> loyaltyIncentivePromotionUpdatePut(RequestOptions options) throws IOException, InterruptedException { return request("loyaltyIncentivePromotionUpdatePut", options); }
    public HttpResponse<String> loyaltyIncentiveRewardAllGet(RequestOptions options) throws IOException, InterruptedException { return request("loyaltyIncentiveRewardAllGet", options); }
    public HttpResponse<String> loyaltyIncentiveRewardCreatePost(RequestOptions options) throws IOException, InterruptedException { return request("loyaltyIncentiveRewardCreatePost", options); }
    public HttpResponse<String> loyaltyIncentiveRewardDeletePost(RequestOptions options) throws IOException, InterruptedException { return request("loyaltyIncentiveRewardDeletePost", options); }
    public HttpResponse<String> loyaltyIncentiveRewardGetGet(RequestOptions options) throws IOException, InterruptedException { return request("loyaltyIncentiveRewardGetGet", options); }
    public HttpResponse<String> loyaltyIncentiveRewardUpdatePut(RequestOptions options) throws IOException, InterruptedException { return request("loyaltyIncentiveRewardUpdatePut", options); }
    public HttpResponse<String> marketingCreateCampaign(RequestOptions options) throws IOException, InterruptedException { return request("marketingCreateCampaign", options); }
    public HttpResponse<String> marketingMarketingAutomationCreatePost(RequestOptions options) throws IOException, InterruptedException { return request("marketingMarketingAutomationCreatePost", options); }
    public HttpResponse<String> marketingMarketingAutomationDeletePost(RequestOptions options) throws IOException, InterruptedException { return request("marketingMarketingAutomationDeletePost", options); }
    public HttpResponse<String> marketingMarketingAutomationGetPost(RequestOptions options) throws IOException, InterruptedException { return request("marketingMarketingAutomationGetPost", options); }
    public HttpResponse<String> marketingMarketingAutomationUpdatePost(RequestOptions options) throws IOException, InterruptedException { return request("marketingMarketingAutomationUpdatePost", options); }
    public HttpResponse<String> marketingMarketingCampaignAllPost(RequestOptions options) throws IOException, InterruptedException { return request("marketingMarketingCampaignAllPost", options); }
    public HttpResponse<String> marketingMarketingCampaignGetPost(RequestOptions options) throws IOException, InterruptedException { return request("marketingMarketingCampaignGetPost", options); }
    public HttpResponse<String> marketingMarketingContactAllPost(RequestOptions options) throws IOException, InterruptedException { return request("marketingMarketingContactAllPost", options); }
    public HttpResponse<String> marketingMarketingContactCreatePost(RequestOptions options) throws IOException, InterruptedException { return request("marketingMarketingContactCreatePost", options); }
    public HttpResponse<String> marketingMarketingContactDeletePost(RequestOptions options) throws IOException, InterruptedException { return request("marketingMarketingContactDeletePost", options); }
    public HttpResponse<String> marketingMarketingContactGetPost(RequestOptions options) throws IOException, InterruptedException { return request("marketingMarketingContactGetPost", options); }
    public HttpResponse<String> marketingMarketingContactUpdatePost(RequestOptions options) throws IOException, InterruptedException { return request("marketingMarketingContactUpdatePost", options); }
    public HttpResponse<String> marketingMarketingEmailsequenceCreatePost(RequestOptions options) throws IOException, InterruptedException { return request("marketingMarketingEmailsequenceCreatePost", options); }
    public HttpResponse<String> marketingMarketingEmailsequenceDeletePost(RequestOptions options) throws IOException, InterruptedException { return request("marketingMarketingEmailsequenceDeletePost", options); }
    public HttpResponse<String> marketingMarketingEmailsequenceGetPost(RequestOptions options) throws IOException, InterruptedException { return request("marketingMarketingEmailsequenceGetPost", options); }
    public HttpResponse<String> marketingMarketingIntegrationAllPost(RequestOptions options) throws IOException, InterruptedException { return request("marketingMarketingIntegrationAllPost", options); }
    public HttpResponse<String> marketingMarketingIntegrationCreatePost(RequestOptions options) throws IOException, InterruptedException { return request("marketingMarketingIntegrationCreatePost", options); }
    public HttpResponse<String> marketingMarketingIntegrationDeletePost(RequestOptions options) throws IOException, InterruptedException { return request("marketingMarketingIntegrationDeletePost", options); }
    public HttpResponse<String> marketingMarketingIntegrationGetPost(RequestOptions options) throws IOException, InterruptedException { return request("marketingMarketingIntegrationGetPost", options); }
    public HttpResponse<String> marketingMarketingIntegrationUpdatePost(RequestOptions options) throws IOException, InterruptedException { return request("marketingMarketingIntegrationUpdatePost", options); }
    public HttpResponse<String> marketingMarketingLeadscoreGetPost(RequestOptions options) throws IOException, InterruptedException { return request("marketingMarketingLeadscoreGetPost", options); }
    public HttpResponse<String> marketingMarketingLeadscoreUpdatePost(RequestOptions options) throws IOException, InterruptedException { return request("marketingMarketingLeadscoreUpdatePost", options); }
    public HttpResponse<String> marketingMarketingSegmentAllPost(RequestOptions options) throws IOException, InterruptedException { return request("marketingMarketingSegmentAllPost", options); }
    public HttpResponse<String> marketingMarketingSegmentCreatePost(RequestOptions options) throws IOException, InterruptedException { return request("marketingMarketingSegmentCreatePost", options); }
    public HttpResponse<String> marketingMarketingSegmentDeletePost(RequestOptions options) throws IOException, InterruptedException { return request("marketingMarketingSegmentDeletePost", options); }
    public HttpResponse<String> marketingMarketingSegmentGetPost(RequestOptions options) throws IOException, InterruptedException { return request("marketingMarketingSegmentGetPost", options); }
    public HttpResponse<String> marketingMarketingSegmentUpdatePost(RequestOptions options) throws IOException, InterruptedException { return request("marketingMarketingSegmentUpdatePost", options); }
    public HttpResponse<String> marketingMarketingTemplateAllPost(RequestOptions options) throws IOException, InterruptedException { return request("marketingMarketingTemplateAllPost", options); }
    public HttpResponse<String> marketingMarketingTemplateCreatePost(RequestOptions options) throws IOException, InterruptedException { return request("marketingMarketingTemplateCreatePost", options); }
    public HttpResponse<String> marketingMarketingTemplateDeletePost(RequestOptions options) throws IOException, InterruptedException { return request("marketingMarketingTemplateDeletePost", options); }
    public HttpResponse<String> marketingMarketingTemplateGetPost(RequestOptions options) throws IOException, InterruptedException { return request("marketingMarketingTemplateGetPost", options); }
    public HttpResponse<String> marketingMarketingTemplateUpdatePost(RequestOptions options) throws IOException, InterruptedException { return request("marketingMarketingTemplateUpdatePost", options); }
    public HttpResponse<String> pagesCreate(RequestOptions options) throws IOException, InterruptedException { return request("pagesCreate", options); }
    public HttpResponse<String> pagesCreateLead(RequestOptions options) throws IOException, InterruptedException { return request("pagesCreateLead", options); }
    public HttpResponse<String> pagesGetPublic(RequestOptions options) throws IOException, InterruptedException { return request("pagesGetPublic", options); }
    public HttpResponse<String> pagesListPublic(RequestOptions options) throws IOException, InterruptedException { return request("pagesListPublic", options); }
    public HttpResponse<String> pagesPagesGeneralAnalyticsGet(RequestOptions options) throws IOException, InterruptedException { return request("pagesPagesGeneralAnalyticsGet", options); }
    public HttpResponse<String> pagesPagesGeneralDeleteDelete(RequestOptions options) throws IOException, InterruptedException { return request("pagesPagesGeneralDeleteDelete", options); }
    public HttpResponse<String> pagesPagesGeneralStatsGet(RequestOptions options) throws IOException, InterruptedException { return request("pagesPagesGeneralStatsGet", options); }
    public HttpResponse<String> pagesPagesGeneralUpdatePut(RequestOptions options) throws IOException, InterruptedException { return request("pagesPagesGeneralUpdatePut", options); }
    public HttpResponse<String> pagesPagesLeadsAllGet(RequestOptions options) throws IOException, InterruptedException { return request("pagesPagesLeadsAllGet", options); }
    public HttpResponse<String> pagesPagesLeadsDeleteDelete(RequestOptions options) throws IOException, InterruptedException { return request("pagesPagesLeadsDeleteDelete", options); }
    public HttpResponse<String> pagesPagesLeadsGetGet(RequestOptions options) throws IOException, InterruptedException { return request("pagesPagesLeadsGetGet", options); }
    public HttpResponse<String> pagesPagesLeadsUpdatePut(RequestOptions options) throws IOException, InterruptedException { return request("pagesPagesLeadsUpdatePut", options); }
    public HttpResponse<String> paymentsCreateCustomer(RequestOptions options) throws IOException, InterruptedException { return request("paymentsCreateCustomer", options); }
    public HttpResponse<String> paymentsCreateLink(RequestOptions options) throws IOException, InterruptedException { return request("paymentsCreateLink", options); }
    public HttpResponse<String> paymentsCreateSubscription(RequestOptions options) throws IOException, InterruptedException { return request("paymentsCreateSubscription", options); }
    public HttpResponse<String> paymentsGetSubscription(RequestOptions options) throws IOException, InterruptedException { return request("paymentsGetSubscription", options); }
    public HttpResponse<String> paymentsGetTransaction(RequestOptions options) throws IOException, InterruptedException { return request("paymentsGetTransaction", options); }
    public HttpResponse<String> paymentsPaySShortidGet(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaySShortidGet", options); }
    public HttpResponse<String> paymentsPayShortidGet(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPayShortidGet", options); }
    public HttpResponse<String> paymentsPaymentChargeAllPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentChargeAllPost", options); }
    public HttpResponse<String> paymentsPaymentChargeCreatePost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentChargeCreatePost", options); }
    public HttpResponse<String> paymentsPaymentChargeDeletePost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentChargeDeletePost", options); }
    public HttpResponse<String> paymentsPaymentChargeGetPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentChargeGetPost", options); }
    public HttpResponse<String> paymentsPaymentChargeRefundPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentChargeRefundPost", options); }
    public HttpResponse<String> paymentsPaymentChargeReversePost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentChargeReversePost", options); }
    public HttpResponse<String> paymentsPaymentChargeUpdatePost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentChargeUpdatePost", options); }
    public HttpResponse<String> paymentsPaymentChargeUpdatePut(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentChargeUpdatePut", options); }
    public HttpResponse<String> paymentsPaymentCustomerAllPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentCustomerAllPost", options); }
    public HttpResponse<String> paymentsPaymentCustomerDeletePost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentCustomerDeletePost", options); }
    public HttpResponse<String> paymentsPaymentCustomerGetPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentCustomerGetPost", options); }
    public HttpResponse<String> paymentsPaymentCustomerSearchPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentCustomerSearchPost", options); }
    public HttpResponse<String> paymentsPaymentCustomerUpdatePost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentCustomerUpdatePost", options); }
    public HttpResponse<String> paymentsPaymentInvoiceChargePost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentInvoiceChargePost", options); }
    public HttpResponse<String> paymentsPaymentInvoiceCreatePost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentInvoiceCreatePost", options); }
    public HttpResponse<String> paymentsPaymentInvoiceDeletePost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentInvoiceDeletePost", options); }
    public HttpResponse<String> paymentsPaymentInvoiceGetGet(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentInvoiceGetGet", options); }
    public HttpResponse<String> paymentsPaymentInvoiceGetallGet(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentInvoiceGetallGet", options); }
    public HttpResponse<String> paymentsPaymentInvoiceResendPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentInvoiceResendPost", options); }
    public HttpResponse<String> paymentsPaymentInvoiceSearchGet(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentInvoiceSearchGet", options); }
    public HttpResponse<String> paymentsPaymentInvoiceSearchbycustomerGet(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentInvoiceSearchbycustomerGet", options); }
    public HttpResponse<String> paymentsPaymentInvoiceSearchbydaterangeGet(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentInvoiceSearchbydaterangeGet", options); }
    public HttpResponse<String> paymentsPaymentInvoiceSearchbystatusGet(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentInvoiceSearchbystatusGet", options); }
    public HttpResponse<String> paymentsPaymentInvoiceSendPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentInvoiceSendPost", options); }
    public HttpResponse<String> paymentsPaymentInvoiceUpdatePost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentInvoiceUpdatePost", options); }
    public HttpResponse<String> paymentsPaymentLinkAllPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentLinkAllPost", options); }
    public HttpResponse<String> paymentsPaymentLinkGetPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentLinkGetPost", options); }
    public HttpResponse<String> paymentsPaymentLinkUpdatePost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentLinkUpdatePost", options); }
    public HttpResponse<String> paymentsPaymentPaymentlinkClonePost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentPaymentlinkClonePost", options); }
    public HttpResponse<String> paymentsPaymentPaymentlinkDeletePost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentPaymentlinkDeletePost", options); }
    public HttpResponse<String> paymentsPaymentPaymentlinkGenerateqrPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentPaymentlinkGenerateqrPost", options); }
    public HttpResponse<String> paymentsPaymentPaymentlinkGetdonorsPaymentlinkidGet(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentPaymentlinkGetdonorsPaymentlinkidGet", options); }
    public HttpResponse<String> paymentsPaymentPaymentlinkGetgoalprogressPaymentlinkidGet(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentPaymentlinkGetgoalprogressPaymentlinkidGet", options); }
    public HttpResponse<String> paymentsPaymentPaymentlinkGetpaymentsPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentPaymentlinkGetpaymentsPost", options); }
    public HttpResponse<String> paymentsPaymentPaymentlinkGetsubscriptionsGet(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentPaymentlinkGetsubscriptionsGet", options); }
    public HttpResponse<String> paymentsPaymentPaymentlinkSharePost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentPaymentlinkSharePost", options); }
    public HttpResponse<String> paymentsPaymentPromotionAllGet(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentPromotionAllGet", options); }
    public HttpResponse<String> paymentsPaymentPromotionCreatePost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentPromotionCreatePost", options); }
    public HttpResponse<String> paymentsPaymentPromotionDeleteDelete(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentPromotionDeleteDelete", options); }
    public HttpResponse<String> paymentsPaymentPromotionGetGet(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentPromotionGetGet", options); }
    public HttpResponse<String> paymentsPaymentPromotionUpdatePut(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentPromotionUpdatePut", options); }
    public HttpResponse<String> paymentsPaymentReceiptCreatePost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentReceiptCreatePost", options); }
    public HttpResponse<String> paymentsPaymentReceiptDownloadPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentReceiptDownloadPost", options); }
    public HttpResponse<String> paymentsPaymentReceiptFormatPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentReceiptFormatPost", options); }
    public HttpResponse<String> paymentsPaymentReceiptGetPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentReceiptGetPost", options); }
    public HttpResponse<String> paymentsPaymentReceiptGetallPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentReceiptGetallPost", options); }
    public HttpResponse<String> paymentsPaymentReceiptResendPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentReceiptResendPost", options); }
    public HttpResponse<String> paymentsPaymentReceiptSearchPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentReceiptSearchPost", options); }
    public HttpResponse<String> paymentsPaymentReceiptSendPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentReceiptSendPost", options); }
    public HttpResponse<String> paymentsPaymentRefundAllPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentRefundAllPost", options); }
    public HttpResponse<String> paymentsPaymentRefundCreatePost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentRefundCreatePost", options); }
    public HttpResponse<String> paymentsPaymentRefundDeletePost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentRefundDeletePost", options); }
    public HttpResponse<String> paymentsPaymentRefundFullrefundPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentRefundFullrefundPost", options); }
    public HttpResponse<String> paymentsPaymentRefundGetPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentRefundGetPost", options); }
    public HttpResponse<String> paymentsPaymentRefundPartialrefundPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentRefundPartialrefundPost", options); }
    public HttpResponse<String> paymentsPaymentRefundProcessrefundPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentRefundProcessrefundPost", options); }
    public HttpResponse<String> paymentsPaymentRefundSearchPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentRefundSearchPost", options); }
    public HttpResponse<String> paymentsPaymentRefundSearchbychargePost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentRefundSearchbychargePost", options); }
    public HttpResponse<String> paymentsPaymentRefundSearchbycustomerPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentRefundSearchbycustomerPost", options); }
    public HttpResponse<String> paymentsPaymentRefundSearchbydaterangePost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentRefundSearchbydaterangePost", options); }
    public HttpResponse<String> paymentsPaymentRefundSearchbystatusPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentRefundSearchbystatusPost", options); }
    public HttpResponse<String> paymentsPaymentRefundUpdatePost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentRefundUpdatePost", options); }
    public HttpResponse<String> paymentsPaymentSubscriptionAllPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentSubscriptionAllPost", options); }
    public HttpResponse<String> paymentsPaymentSubscriptionCancelPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentSubscriptionCancelPost", options); }
    public HttpResponse<String> paymentsPaymentSubscriptionChangeplanPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentSubscriptionChangeplanPost", options); }
    public HttpResponse<String> paymentsPaymentSubscriptionDeleteDelete(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentSubscriptionDeleteDelete", options); }
    public HttpResponse<String> paymentsPaymentSubscriptionDeletePost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentSubscriptionDeletePost", options); }
    public HttpResponse<String> paymentsPaymentSubscriptionEndtrialPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentSubscriptionEndtrialPost", options); }
    public HttpResponse<String> paymentsPaymentSubscriptionGetGet(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentSubscriptionGetGet", options); }
    public HttpResponse<String> paymentsPaymentSubscriptionGetallGet(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentSubscriptionGetallGet", options); }
    public HttpResponse<String> paymentsPaymentSubscriptionGethistoryGet(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentSubscriptionGethistoryGet", options); }
    public HttpResponse<String> paymentsPaymentSubscriptionGetinvoicesGet(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentSubscriptionGetinvoicesGet", options); }
    public HttpResponse<String> paymentsPaymentSubscriptionGetnextbillingGet(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentSubscriptionGetnextbillingGet", options); }
    public HttpResponse<String> paymentsPaymentSubscriptionGetstatusGet(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentSubscriptionGetstatusGet", options); }
    public HttpResponse<String> paymentsPaymentSubscriptionGetusageGet(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentSubscriptionGetusageGet", options); }
    public HttpResponse<String> paymentsPaymentSubscriptionPausePost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentSubscriptionPausePost", options); }
    public HttpResponse<String> paymentsPaymentSubscriptionReactivatePost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentSubscriptionReactivatePost", options); }
    public HttpResponse<String> paymentsPaymentSubscriptionResumePost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentSubscriptionResumePost", options); }
    public HttpResponse<String> paymentsPaymentSubscriptionSearchGet(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentSubscriptionSearchGet", options); }
    public HttpResponse<String> paymentsPaymentSubscriptionSearchbycustomerGet(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentSubscriptionSearchbycustomerGet", options); }
    public HttpResponse<String> paymentsPaymentSubscriptionSearchbyplanGet(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentSubscriptionSearchbyplanGet", options); }
    public HttpResponse<String> paymentsPaymentSubscriptionSearchbystatusGet(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentSubscriptionSearchbystatusGet", options); }
    public HttpResponse<String> paymentsPaymentSubscriptionStarttrialPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentSubscriptionStarttrialPost", options); }
    public HttpResponse<String> paymentsPaymentSubscriptionUpdatePost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentSubscriptionUpdatePost", options); }
    public HttpResponse<String> paymentsPaymentSubscriptionUpdatePut(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentSubscriptionUpdatePut", options); }
    public HttpResponse<String> paymentsPaymentSubscriptionUpdatepaymentmethodPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentSubscriptionUpdatepaymentmethodPost", options); }
    public HttpResponse<String> paymentsPaymentSubscriptionplanAllPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentSubscriptionplanAllPost", options); }
    public HttpResponse<String> paymentsPaymentSubscriptionplanCalculatepricePost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentSubscriptionplanCalculatepricePost", options); }
    public HttpResponse<String> paymentsPaymentSubscriptionplanCreatePost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentSubscriptionplanCreatePost", options); }
    public HttpResponse<String> paymentsPaymentSubscriptionplanDeleteDelete(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentSubscriptionplanDeleteDelete", options); }
    public HttpResponse<String> paymentsPaymentSubscriptionplanDeletePost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentSubscriptionplanDeletePost", options); }
    public HttpResponse<String> paymentsPaymentSubscriptionplanGetGet(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentSubscriptionplanGetGet", options); }
    public HttpResponse<String> paymentsPaymentSubscriptionplanGetPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentSubscriptionplanGetPost", options); }
    public HttpResponse<String> paymentsPaymentSubscriptionplanGetallGet(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentSubscriptionplanGetallGet", options); }
    public HttpResponse<String> paymentsPaymentSubscriptionplanGetfeaturesGet(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentSubscriptionplanGetfeaturesGet", options); }
    public HttpResponse<String> paymentsPaymentSubscriptionplanUpdatePost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentSubscriptionplanUpdatePost", options); }
    public HttpResponse<String> paymentsPaymentSubscriptionplanUpdatePut(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentSubscriptionplanUpdatePut", options); }
    public HttpResponse<String> paymentsPaymentSubscriptionplanUpdatefeaturesPut(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentSubscriptionplanUpdatefeaturesPut", options); }
    public HttpResponse<String> paymentsPaymentTransactionCalculatefeePost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentTransactionCalculatefeePost", options); }
    public HttpResponse<String> paymentsPaymentTransactionCheckstatusPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentTransactionCheckstatusPost", options); }
    public HttpResponse<String> paymentsPaymentTransactionCreatePost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentTransactionCreatePost", options); }
    public HttpResponse<String> paymentsPaymentTransactionDeletePost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentTransactionDeletePost", options); }
    public HttpResponse<String> paymentsPaymentTransactionGetallPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentTransactionGetallPost", options); }
    public HttpResponse<String> paymentsPaymentTransactionGetdetailsPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentTransactionGetdetailsPost", options); }
    public HttpResponse<String> paymentsPaymentTransactionGeteventsPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentTransactionGeteventsPost", options); }
    public HttpResponse<String> paymentsPaymentTransactionHistoryPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentTransactionHistoryPost", options); }
    public HttpResponse<String> paymentsPaymentTransactionRefundPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentTransactionRefundPost", options); }
    public HttpResponse<String> paymentsPaymentTransactionUpdatePost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentTransactionUpdatePost", options); }
    public HttpResponse<String> paymentsPaymentTransactionVoidPost(RequestOptions options) throws IOException, InterruptedException { return request("paymentsPaymentTransactionVoidPost", options); }
    public HttpResponse<String> placesCreate(RequestOptions options) throws IOException, InterruptedException { return request("placesCreate", options); }
    public HttpResponse<String> placesGetPublic(RequestOptions options) throws IOException, InterruptedException { return request("placesGetPublic", options); }
    public HttpResponse<String> placesListPublic(RequestOptions options) throws IOException, InterruptedException { return request("placesListPublic", options); }
    public HttpResponse<String> placesPlacesGeneralDeletePost(RequestOptions options) throws IOException, InterruptedException { return request("placesPlacesGeneralDeletePost", options); }
    public HttpResponse<String> placesUpdate(RequestOptions options) throws IOException, InterruptedException { return request("placesUpdate", options); }
    public HttpResponse<String> pollsCastVote(RequestOptions options) throws IOException, InterruptedException { return request("pollsCastVote", options); }
    public HttpResponse<String> pollsVoteCastGetPost(RequestOptions options) throws IOException, InterruptedException { return request("pollsVoteCastGetPost", options); }
    public HttpResponse<String> pollsVoteCastGetallPost(RequestOptions options) throws IOException, InterruptedException { return request("pollsVoteCastGetallPost", options); }
    public HttpResponse<String> sponsorsCreate(RequestOptions options) throws IOException, InterruptedException { return request("sponsorsCreate", options); }
    public HttpResponse<String> sponsorsGetPublic(RequestOptions options) throws IOException, InterruptedException { return request("sponsorsGetPublic", options); }
    public HttpResponse<String> sponsorsSponsorGeneralAllGet(RequestOptions options) throws IOException, InterruptedException { return request("sponsorsSponsorGeneralAllGet", options); }
    public HttpResponse<String> sponsorsSponsorGeneralDeletePost(RequestOptions options) throws IOException, InterruptedException { return request("sponsorsSponsorGeneralDeletePost", options); }
    public HttpResponse<String> sponsorsSponsorGeneralUpdatePut(RequestOptions options) throws IOException, InterruptedException { return request("sponsorsSponsorGeneralUpdatePut", options); }
    public HttpResponse<String> teamsCreate(RequestOptions options) throws IOException, InterruptedException { return request("teamsCreate", options); }
    public HttpResponse<String> teamsTeamCategoryAllGet(RequestOptions options) throws IOException, InterruptedException { return request("teamsTeamCategoryAllGet", options); }
    public HttpResponse<String> teamsTeamCategoryCreatePost(RequestOptions options) throws IOException, InterruptedException { return request("teamsTeamCategoryCreatePost", options); }
    public HttpResponse<String> teamsTeamCategoryDeletePost(RequestOptions options) throws IOException, InterruptedException { return request("teamsTeamCategoryDeletePost", options); }
    public HttpResponse<String> teamsTeamCategoryGetGet(RequestOptions options) throws IOException, InterruptedException { return request("teamsTeamCategoryGetGet", options); }
    public HttpResponse<String> teamsTeamCategoryUpdatePut(RequestOptions options) throws IOException, InterruptedException { return request("teamsTeamCategoryUpdatePut", options); }
    public HttpResponse<String> teamsTeamGeneralAllGet(RequestOptions options) throws IOException, InterruptedException { return request("teamsTeamGeneralAllGet", options); }
    public HttpResponse<String> teamsTeamGeneralDeletePost(RequestOptions options) throws IOException, InterruptedException { return request("teamsTeamGeneralDeletePost", options); }
    public HttpResponse<String> teamsTeamGeneralGetGet(RequestOptions options) throws IOException, InterruptedException { return request("teamsTeamGeneralGetGet", options); }
    public HttpResponse<String> teamsTeamGeneralUpdatePut(RequestOptions options) throws IOException, InterruptedException { return request("teamsTeamGeneralUpdatePut", options); }
    public HttpResponse<String> teamsTeamSubcategoryAllGet(RequestOptions options) throws IOException, InterruptedException { return request("teamsTeamSubcategoryAllGet", options); }
    public HttpResponse<String> teamsTeamSubcategoryCreatePost(RequestOptions options) throws IOException, InterruptedException { return request("teamsTeamSubcategoryCreatePost", options); }
    public HttpResponse<String> teamsTeamSubcategoryDeletePost(RequestOptions options) throws IOException, InterruptedException { return request("teamsTeamSubcategoryDeletePost", options); }
    public HttpResponse<String> teamsTeamSubcategoryGetGet(RequestOptions options) throws IOException, InterruptedException { return request("teamsTeamSubcategoryGetGet", options); }
    public HttpResponse<String> teamsTeamSubcategoryUpdatePut(RequestOptions options) throws IOException, InterruptedException { return request("teamsTeamSubcategoryUpdatePut", options); }
    public HttpResponse<String> vendorsCreate(RequestOptions options) throws IOException, InterruptedException { return request("vendorsCreate", options); }
    public HttpResponse<String> vendorsGetPublic(RequestOptions options) throws IOException, InterruptedException { return request("vendorsGetPublic", options); }
    public HttpResponse<String> vendorsVendorGeneralAllGet(RequestOptions options) throws IOException, InterruptedException { return request("vendorsVendorGeneralAllGet", options); }
    public HttpResponse<String> vendorsVendorGeneralUpdatePut(RequestOptions options) throws IOException, InterruptedException { return request("vendorsVendorGeneralUpdatePut", options); }

    private static final class Operation {
        final String operationId;
        final String method;
        final String path;
        final String credentialType;
        final boolean originRestricted;

        Operation(String operationId, String method, String path, String credentialType, boolean originRestricted) {
            this.operationId = operationId;
            this.method = method;
            this.path = path;
            this.credentialType = credentialType;
            this.originRestricted = originRestricted;
        }
    }

    public static final class Credentials {
        public final String publishableKey;
        public final String secretKey;
        public final String accessToken;
        public final String sessionToken;

        public Credentials(String publishableKey, String secretKey, String accessToken, String sessionToken) {
            this.publishableKey = publishableKey;
            this.secretKey = secretKey;
            this.accessToken = accessToken;
            this.sessionToken = sessionToken;
        }

        public static Credentials empty() { return new Credentials(null, null, null, null); }
    }

    public static final class RequestOptions {
        public final Map<String, String> path;
        public final Map<String, String> query;
        public final String bodyJson;

        public RequestOptions(Map<String, String> path, Map<String, String> query, String bodyJson) {
            this.path = path == null ? Map.of() : Map.copyOf(path);
            this.query = query == null ? Map.of() : Map.copyOf(query);
            this.bodyJson = bodyJson;
        }

        public static RequestOptions empty() { return new RequestOptions(Map.of(), Map.of(), null); }
    }

    public static final class BeladedApiException extends RuntimeException {
        public final Integer status;
        public final String operationId;
        public final String responseBody;

        BeladedApiException(String message, Integer status, String operationId, String responseBody) {
            super(message);
            this.status = status;
            this.operationId = operationId;
            this.responseBody = responseBody;
        }
    }
}
