From ca8e4e34061da02776c4cfa4c5bb0d8c9fdebf62 Mon Sep 17 00:00:00 2001 From: novalisdenahi Date: Fri, 14 Nov 2025 10:17:41 +0100 Subject: [PATCH 1/2] regenerate --- .openapi-generator/FILES | 17 + api.ts | 1 + api/feature-flags-settings-api.ts | 6 +- api/proxy-profiles-api.ts | 849 ++++++++++++++++++ model/audit-log-type.ts | 2 +- model/connection-preferences.ts | 39 + ...create-or-update-connection-preferences.ts | 39 + .../create-or-update-proxy-profile-request.ts | 54 ++ .../create-or-update-webhook-notification.ts | 30 + model/index.ts | 16 + model/predefined-variations-model.ts | 39 + model/proxy-profile-list-model.ts | 33 + model/proxy-profile-model.ts | 66 ++ model/proxy-profile-sdk-key-item.ts | 54 ++ model/proxy-profile-sdk-key-request-item.ts | 36 + model/proxy-profile-sdk-keys-list-model.ts | 33 + model/proxy-profile-sdk-keys-request.ts | 33 + model/proxy-profile-secret-model.ts | 30 + model/proxy-profile-selection-rule.ts | 71 ++ model/selection-rule-kind.ts | 31 + model/update-proxy-profile-selection-rule.ts | 71 ++ model/webhook-notification.ts | 42 + 22 files changed, 1589 insertions(+), 3 deletions(-) create mode 100644 api/proxy-profiles-api.ts create mode 100644 model/connection-preferences.ts create mode 100644 model/create-or-update-connection-preferences.ts create mode 100644 model/create-or-update-proxy-profile-request.ts create mode 100644 model/create-or-update-webhook-notification.ts create mode 100644 model/predefined-variations-model.ts create mode 100644 model/proxy-profile-list-model.ts create mode 100644 model/proxy-profile-model.ts create mode 100644 model/proxy-profile-sdk-key-item.ts create mode 100644 model/proxy-profile-sdk-key-request-item.ts create mode 100644 model/proxy-profile-sdk-keys-list-model.ts create mode 100644 model/proxy-profile-sdk-keys-request.ts create mode 100644 model/proxy-profile-secret-model.ts create mode 100644 model/proxy-profile-selection-rule.ts create mode 100644 model/selection-rule-kind.ts create mode 100644 model/update-proxy-profile-selection-rule.ts create mode 100644 model/webhook-notification.ts diff --git a/.openapi-generator/FILES b/.openapi-generator/FILES index 61ffcd9..39b03c5 100644 --- a/.openapi-generator/FILES +++ b/.openapi-generator/FILES @@ -17,6 +17,7 @@ api/members-api.ts api/organizations-api.ts api/permission-groups-api.ts api/products-api.ts +api/proxy-profiles-api.ts api/sdkkeys-api.ts api/segments-api.ts api/tags-api.ts @@ -43,10 +44,14 @@ model/config-setting-formulas-model.ts model/config-setting-value-model.ts model/config-setting-values-model.ts model/connect-request.ts +model/connection-preferences.ts model/create-config-request.ts model/create-environment-model.ts model/create-integration-model.ts +model/create-or-update-connection-preferences.ts model/create-or-update-environment-access-model.ts +model/create-or-update-proxy-profile-request.ts +model/create-or-update-webhook-notification.ts model/create-permission-group-request.ts model/create-predefined-variation-model.ts model/create-predefined-variation-value-model.ts @@ -92,10 +97,19 @@ model/percentage-option-model.ts model/permission-group-model.ts model/predefined-variation-model.ts model/predefined-variation-value-model.ts +model/predefined-variations-model.ts model/preferences-model.ts model/prerequisite-comparator.ts model/prerequisite-flag-condition-model.ts model/product-model.ts +model/proxy-profile-list-model.ts +model/proxy-profile-model.ts +model/proxy-profile-sdk-key-item.ts +model/proxy-profile-sdk-key-request-item.ts +model/proxy-profile-sdk-keys-list-model.ts +model/proxy-profile-sdk-keys-request.ts +model/proxy-profile-secret-model.ts +model/proxy-profile-selection-rule.ts model/reason-required-environment-model.ts model/reference-line-model.ts model/reference-line-request.ts @@ -110,6 +124,7 @@ model/segment-comparator.ts model/segment-condition-model.ts model/segment-list-model.ts model/segment-model.ts +model/selection-rule-kind.ts model/setting-data-model.ts model/setting-data-v2-model.ts model/setting-formula-model.ts @@ -145,6 +160,7 @@ model/update-predefined-variations-request.ts model/update-preferences-request.ts model/update-prerequisite-flag-condition-model.ts model/update-product-request.ts +model/update-proxy-profile-selection-rule.ts model/update-reason-required-environment-model.ts model/update-rollout-percentage-item-model.ts model/update-rollout-rule-model.ts @@ -167,5 +183,6 @@ model/webhook-config.ts model/webhook-environment.ts model/webhook-header-model.ts model/webhook-header-response-model.ts +model/webhook-notification.ts model/webhook-response-model.ts model/webhook-signing-keys-model.ts diff --git a/api.ts b/api.ts index 92b1dd6..9b8a8bf 100644 --- a/api.ts +++ b/api.ts @@ -30,6 +30,7 @@ export * from './api/members-api'; export * from './api/organizations-api'; export * from './api/permission-groups-api'; export * from './api/products-api'; +export * from './api/proxy-profiles-api'; export * from './api/sdkkeys-api'; export * from './api/segments-api'; export * from './api/tags-api'; diff --git a/api/feature-flags-settings-api.ts b/api/feature-flags-settings-api.ts index 75961ac..9e4d3ad 100644 --- a/api/feature-flags-settings-api.ts +++ b/api/feature-flags-settings-api.ts @@ -26,6 +26,8 @@ import { CreateSettingInitialValues } from '../model'; // @ts-ignore import { JsonPatchOperation } from '../model'; // @ts-ignore +import { PredefinedVariationsModel } from '../model'; +// @ts-ignore import { ReplaceSettingModel } from '../model'; // @ts-ignore import { SettingModel } from '../model'; @@ -412,7 +414,7 @@ export const FeatureFlagsSettingsApiFp = function(configuration?: Configuration) * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async updatePredefinedVariations(settingId: number, updatePredefinedVariationsRequest: UpdatePredefinedVariationsRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async updatePredefinedVariations(settingId: number, updatePredefinedVariationsRequest: UpdatePredefinedVariationsRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.updatePredefinedVariations(settingId, updatePredefinedVariationsRequest, options); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['FeatureFlagsSettingsApi.updatePredefinedVariations']?.[localVarOperationServerIndex]?.url; @@ -502,7 +504,7 @@ export const FeatureFlagsSettingsApiFactory = function (configuration?: Configur * @param {*} [options] Override http request option. * @throws {RequiredError} */ - updatePredefinedVariations(settingId: number, updatePredefinedVariationsRequest: UpdatePredefinedVariationsRequest, options?: any): AxiosPromise { + updatePredefinedVariations(settingId: number, updatePredefinedVariationsRequest: UpdatePredefinedVariationsRequest, options?: any): AxiosPromise { return localVarFp.updatePredefinedVariations(settingId, updatePredefinedVariationsRequest, options).then((request) => request(axios, basePath)); }, /** diff --git a/api/proxy-profiles-api.ts b/api/proxy-profiles-api.ts new file mode 100644 index 0000000..2761764 --- /dev/null +++ b/api/proxy-profiles-api.ts @@ -0,0 +1,849 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * ConfigCat Public Management API + * The purpose of this API is to access the ConfigCat platform programmatically. You can **Create**, **Read**, **Update** and **Delete** any entities like **Feature Flags, Configs, Environments** or **Products** within ConfigCat. **Base API URL**: https://api.configcat.com If you prefer the swagger documentation, you can find it here: [Swagger UI](https://api.configcat.com/swagger). The API is based on HTTP REST, uses resource-oriented URLs, status codes and supports JSON format. **Important:** Do not use this API for accessing and evaluating feature flag values. Use the [SDKs](https://configcat.com/docs/sdk-reference/overview) or the [ConfigCat Proxy](https://configcat.com/docs/advanced/proxy/proxy-overview/) instead. # OpenAPI Specification The complete specification is publicly available in the following formats: - [OpenAPI v3](https://api.configcat.com/docs/v1/swagger.json) - [Swagger v2](https://api.configcat.com/docs/v1/swagger.v2.json) You can use it to generate client libraries in various languages with [OpenAPI Generator](https://github.com/OpenAPITools/openapi-generator) or [Swagger Codegen](https://swagger.io/tools/swagger-codegen/) to interact with this API. # Authentication This API uses the [Basic HTTP Authentication Scheme](https://en.wikipedia.org/wiki/Basic_access_authentication). # Throttling and rate limits All the rate limited API calls are returning information about the current rate limit period in the following HTTP headers: | Header | Description | | :- | :- | | X-Rate-Limit-Remaining | The maximum number of requests remaining in the current rate limit period. | | X-Rate-Limit-Reset | The time when the current rate limit period resets. | When the rate limit is exceeded by a request, the API returns with a `HTTP 429 - Too many requests` status along with a `Retry-After` HTTP header. + * + * The version of the OpenAPI document: v1 + * Contact: support@configcat.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +import type { Configuration } from '../configuration'; +import type { AxiosPromise, AxiosInstance, RawAxiosRequestConfig } from 'axios'; +import globalAxios from 'axios'; +// Some imports not used depending on template conditions +// @ts-ignore +import { DUMMY_BASE_URL, assertParamExists, setApiKeyToObject, setBasicAuthToObject, setBearerAuthToObject, setOAuthToObject, setSearchParams, serializeDataIfNeeded, toPathString, createRequestFunction } from '../common'; +// @ts-ignore +import { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError, operationServerMap } from '../base'; +// @ts-ignore +import { CreateOrUpdateProxyProfileRequest } from '../model'; +// @ts-ignore +import { JsonPatchOperation } from '../model'; +// @ts-ignore +import { ProxyProfileListModel } from '../model'; +// @ts-ignore +import { ProxyProfileModel } from '../model'; +// @ts-ignore +import { ProxyProfileSdkKeysListModel } from '../model'; +// @ts-ignore +import { ProxyProfileSdkKeysRequest } from '../model'; +// @ts-ignore +import { ProxyProfileSecretModel } from '../model'; +/** + * ProxyProfilesApi - axios parameter creator + * @export + */ +export const ProxyProfilesApiAxiosParamCreator = function (configuration?: Configuration) { + return { + /** + * This endpoint creates a new Proxy Profile in the given Organization identified by the `organizationId` parameter, which can be obtained from the [List Organizations](#operation/get-organizations) endpoint. + * @summary Create Proxy Profile + * @param {string} organizationId The identifier of the Organization. + * @param {CreateOrUpdateProxyProfileRequest} createOrUpdateProxyProfileRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + createProxyProfile: async (organizationId: string, createOrUpdateProxyProfileRequest: CreateOrUpdateProxyProfileRequest, options: RawAxiosRequestConfig = {}): Promise => { + // verify required parameter 'organizationId' is not null or undefined + assertParamExists('createProxyProfile', 'organizationId', organizationId) + // verify required parameter 'createOrUpdateProxyProfileRequest' is not null or undefined + assertParamExists('createProxyProfile', 'createOrUpdateProxyProfileRequest', createOrUpdateProxyProfileRequest) + const localVarPath = `/v1/organizations/{organizationId}/proxy-profiles` + .replace(`{${"organizationId"}}`, encodeURIComponent(String(organizationId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication Basic required + // http basic authentication required + setBasicAuthToObject(localVarRequestOptions, configuration) + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(createOrUpdateProxyProfileRequest, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * This endpoint removes a Proxy Profile identified by the `proxyProfileId` parameter. + * @summary Delete Proxy Profile + * @param {string} proxyProfileId The identifier of the Proxy Profile. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteProxyProfile: async (proxyProfileId: string, options: RawAxiosRequestConfig = {}): Promise => { + // verify required parameter 'proxyProfileId' is not null or undefined + assertParamExists('deleteProxyProfile', 'proxyProfileId', proxyProfileId) + const localVarPath = `/v1/proxy-profiles/{proxyProfileId}` + .replace(`{${"proxyProfileId"}}`, encodeURIComponent(String(proxyProfileId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication Basic required + // http basic authentication required + setBasicAuthToObject(localVarRequestOptions, configuration) + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * This endpoint removes the given list of Config / Environment pairs\' SDK Keys from a Proxy Profile identified by the `proxyProfileId`. + * @summary Deselect SDK keys + * @param {string} proxyProfileId The identifier of the Proxy Profile. + * @param {ProxyProfileSdkKeysRequest} proxyProfileSdkKeysRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deselectProxyProfileSdkKeys: async (proxyProfileId: string, proxyProfileSdkKeysRequest: ProxyProfileSdkKeysRequest, options: RawAxiosRequestConfig = {}): Promise => { + // verify required parameter 'proxyProfileId' is not null or undefined + assertParamExists('deselectProxyProfileSdkKeys', 'proxyProfileId', proxyProfileId) + // verify required parameter 'proxyProfileSdkKeysRequest' is not null or undefined + assertParamExists('deselectProxyProfileSdkKeys', 'proxyProfileSdkKeysRequest', proxyProfileSdkKeysRequest) + const localVarPath = `/v1/proxy-profiles/{proxyProfileId}/sdk-keys/deselect` + .replace(`{${"proxyProfileId"}}`, encodeURIComponent(String(proxyProfileId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication Basic required + // http basic authentication required + setBasicAuthToObject(localVarRequestOptions, configuration) + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(proxyProfileSdkKeysRequest, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * This endpoint (re)generates a secret token for a Proxy Profile identified by the `proxyProfileId` parameter. + * @summary Generate Secret + * @param {string} proxyProfileId The identifier of the Proxy Profile. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + generateProxyProfileSecret: async (proxyProfileId: string, options: RawAxiosRequestConfig = {}): Promise => { + // verify required parameter 'proxyProfileId' is not null or undefined + assertParamExists('generateProxyProfileSecret', 'proxyProfileId', proxyProfileId) + const localVarPath = `/v1/proxy-profiles/{proxyProfileId}/secret` + .replace(`{${"proxyProfileId"}}`, encodeURIComponent(String(proxyProfileId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication Basic required + // http basic authentication required + setBasicAuthToObject(localVarRequestOptions, configuration) + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * This endpoint returns a Proxy Profile identified by the `proxyProfileId`. + * @summary Get Proxy Profile + * @param {string} proxyProfileId The identifier of the Proxy Profile. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getProxyProfile: async (proxyProfileId: string, options: RawAxiosRequestConfig = {}): Promise => { + // verify required parameter 'proxyProfileId' is not null or undefined + assertParamExists('getProxyProfile', 'proxyProfileId', proxyProfileId) + const localVarPath = `/v1/proxy-profiles/{proxyProfileId}` + .replace(`{${"proxyProfileId"}}`, encodeURIComponent(String(proxyProfileId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication Basic required + // http basic authentication required + setBasicAuthToObject(localVarRequestOptions, configuration) + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * This endpoint returns the list of SDK keys selected for a Proxy Profile identified by the `proxyProfileId`. + * @summary Get selected SDK keys + * @param {string} proxyProfileId The identifier of the Proxy Profile. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getProxyProfileSdkKeys: async (proxyProfileId: string, options: RawAxiosRequestConfig = {}): Promise => { + // verify required parameter 'proxyProfileId' is not null or undefined + assertParamExists('getProxyProfileSdkKeys', 'proxyProfileId', proxyProfileId) + const localVarPath = `/v1/proxy-profiles/{proxyProfileId}/sdk-keys` + .replace(`{${"proxyProfileId"}}`, encodeURIComponent(String(proxyProfileId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication Basic required + // http basic authentication required + setBasicAuthToObject(localVarRequestOptions, configuration) + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * This endpoint returns the list of Proxy profiles for the given Organization identified by the `organizationId` parameter. + * @summary List Proxy Profiles + * @param {string} organizationId The identifier of the Organization. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getProxyProfiles: async (organizationId: string, options: RawAxiosRequestConfig = {}): Promise => { + // verify required parameter 'organizationId' is not null or undefined + assertParamExists('getProxyProfiles', 'organizationId', organizationId) + const localVarPath = `/v1/organizations/{organizationId}/proxy-profiles` + .replace(`{${"organizationId"}}`, encodeURIComponent(String(organizationId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication Basic required + // http basic authentication required + setBasicAuthToObject(localVarRequestOptions, configuration) + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * This endpoint replaces a Proxy Profile identified by the `proxyProfileId` parameter. **Important:** As this endpoint is doing a complete replace, it\'s important to set every other attribute that you don\'t want to change in its original state. Not listing one means it will reset. + * @summary Replace Proxy Profile + * @param {string} proxyProfileId The identifier of the Proxy Profile. + * @param {CreateOrUpdateProxyProfileRequest} createOrUpdateProxyProfileRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + replaceProxyProfile: async (proxyProfileId: string, createOrUpdateProxyProfileRequest: CreateOrUpdateProxyProfileRequest, options: RawAxiosRequestConfig = {}): Promise => { + // verify required parameter 'proxyProfileId' is not null or undefined + assertParamExists('replaceProxyProfile', 'proxyProfileId', proxyProfileId) + // verify required parameter 'createOrUpdateProxyProfileRequest' is not null or undefined + assertParamExists('replaceProxyProfile', 'createOrUpdateProxyProfileRequest', createOrUpdateProxyProfileRequest) + const localVarPath = `/v1/proxy-profiles/{proxyProfileId}` + .replace(`{${"proxyProfileId"}}`, encodeURIComponent(String(proxyProfileId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication Basic required + // http basic authentication required + setBasicAuthToObject(localVarRequestOptions, configuration) + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(createOrUpdateProxyProfileRequest, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * This endpoint adds the given list of Config / Environment pairs\' SDK Keys to a Proxy Profile identified by the `proxyProfileId`. + * @summary Select SDK keys + * @param {string} proxyProfileId The identifier of the Proxy Profile. + * @param {ProxyProfileSdkKeysRequest} proxyProfileSdkKeysRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + selectProxyProfileSdkKeys: async (proxyProfileId: string, proxyProfileSdkKeysRequest: ProxyProfileSdkKeysRequest, options: RawAxiosRequestConfig = {}): Promise => { + // verify required parameter 'proxyProfileId' is not null or undefined + assertParamExists('selectProxyProfileSdkKeys', 'proxyProfileId', proxyProfileId) + // verify required parameter 'proxyProfileSdkKeysRequest' is not null or undefined + assertParamExists('selectProxyProfileSdkKeys', 'proxyProfileSdkKeysRequest', proxyProfileSdkKeysRequest) + const localVarPath = `/v1/proxy-profiles/{proxyProfileId}/sdk-keys/select` + .replace(`{${"proxyProfileId"}}`, encodeURIComponent(String(proxyProfileId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication Basic required + // http basic authentication required + setBasicAuthToObject(localVarRequestOptions, configuration) + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(proxyProfileSdkKeysRequest, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * This endpoint updates a Proxy Profile identified by the `proxyProfileId` parameter with a collection of [JSON Patch](https://jsonpatch.com) operations. The advantage of using JSON Patch is that you can describe individual update operations on a resource without touching attributes that you don\'t want to change. For example: We have the following resource. ```json { \"proxyProfileId\": \"4ebe288d-6415-44a8-85c8-7b9f78316a86\", \"name\": \"production\", \"description\": \"profile for production environments\", \"lastAccessedAt\": \"2019-08-24T14:15:22Z\", \"connectionPreferences\": { \"sdkPollInterval\": 60, \"webhookNotification\": null }, \"sdkKeySelectionRules\": [] } ``` If we send an update request body as below (it changes the `sdkPollInterval` field and adds a new Proxy Webhook URL): ```json [ { \"op\": \"replace\", \"path\": \"/connectionPreferences/sdkPollInterval\", \"value\": 120 }, { \"op\": \"add\", \"path\": \"/connectionPreferences/webhookNotification\", \"value\": { \"webhookProxyUrl\": \"https://my-proxy-url.com\" } } ] ``` Only the `sdkPollInterval` and `webhookProxyUrl` are updated and all the other attributes remain unchanged. So we get a response like this: ```json { \"proxyProfileId\": \"4ebe288d-6415-44a8-85c8-7b9f78316a86\", \"name\": \"production\", \"description\": \"profile for production environments\", \"lastAccessedAt\": \"2019-08-24T14:15:22Z\", \"connectionPreferences\": { \"sdkPollInterval\": 120, \"webhookNotification\": { \"webhookProxyUrl\": \"https://my-proxy-url.com\", \"signingKey1\": \"\", \"signingKey2\": null } }, \"sdkKeySelectionRules\": [] } ``` + * @summary Update Proxy Profile + * @param {string} proxyProfileId The identifier of the Proxy Profile. + * @param {Array} jsonPatchOperation + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + updateProxyProfile: async (proxyProfileId: string, jsonPatchOperation: Array, options: RawAxiosRequestConfig = {}): Promise => { + // verify required parameter 'proxyProfileId' is not null or undefined + assertParamExists('updateProxyProfile', 'proxyProfileId', proxyProfileId) + // verify required parameter 'jsonPatchOperation' is not null or undefined + assertParamExists('updateProxyProfile', 'jsonPatchOperation', jsonPatchOperation) + const localVarPath = `/v1/proxy-profiles/{proxyProfileId}` + .replace(`{${"proxyProfileId"}}`, encodeURIComponent(String(proxyProfileId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'PATCH', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication Basic required + // http basic authentication required + setBasicAuthToObject(localVarRequestOptions, configuration) + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(jsonPatchOperation, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + } +}; + +/** + * ProxyProfilesApi - functional programming interface + * @export + */ +export const ProxyProfilesApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = ProxyProfilesApiAxiosParamCreator(configuration) + return { + /** + * This endpoint creates a new Proxy Profile in the given Organization identified by the `organizationId` parameter, which can be obtained from the [List Organizations](#operation/get-organizations) endpoint. + * @summary Create Proxy Profile + * @param {string} organizationId The identifier of the Organization. + * @param {CreateOrUpdateProxyProfileRequest} createOrUpdateProxyProfileRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async createProxyProfile(organizationId: string, createOrUpdateProxyProfileRequest: CreateOrUpdateProxyProfileRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.createProxyProfile(organizationId, createOrUpdateProxyProfileRequest, options); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = operationServerMap['ProxyProfilesApi.createProxyProfile']?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); + }, + /** + * This endpoint removes a Proxy Profile identified by the `proxyProfileId` parameter. + * @summary Delete Proxy Profile + * @param {string} proxyProfileId The identifier of the Proxy Profile. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async deleteProxyProfile(proxyProfileId: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteProxyProfile(proxyProfileId, options); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = operationServerMap['ProxyProfilesApi.deleteProxyProfile']?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); + }, + /** + * This endpoint removes the given list of Config / Environment pairs\' SDK Keys from a Proxy Profile identified by the `proxyProfileId`. + * @summary Deselect SDK keys + * @param {string} proxyProfileId The identifier of the Proxy Profile. + * @param {ProxyProfileSdkKeysRequest} proxyProfileSdkKeysRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async deselectProxyProfileSdkKeys(proxyProfileId: string, proxyProfileSdkKeysRequest: ProxyProfileSdkKeysRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.deselectProxyProfileSdkKeys(proxyProfileId, proxyProfileSdkKeysRequest, options); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = operationServerMap['ProxyProfilesApi.deselectProxyProfileSdkKeys']?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); + }, + /** + * This endpoint (re)generates a secret token for a Proxy Profile identified by the `proxyProfileId` parameter. + * @summary Generate Secret + * @param {string} proxyProfileId The identifier of the Proxy Profile. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async generateProxyProfileSecret(proxyProfileId: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.generateProxyProfileSecret(proxyProfileId, options); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = operationServerMap['ProxyProfilesApi.generateProxyProfileSecret']?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); + }, + /** + * This endpoint returns a Proxy Profile identified by the `proxyProfileId`. + * @summary Get Proxy Profile + * @param {string} proxyProfileId The identifier of the Proxy Profile. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getProxyProfile(proxyProfileId: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getProxyProfile(proxyProfileId, options); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = operationServerMap['ProxyProfilesApi.getProxyProfile']?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); + }, + /** + * This endpoint returns the list of SDK keys selected for a Proxy Profile identified by the `proxyProfileId`. + * @summary Get selected SDK keys + * @param {string} proxyProfileId The identifier of the Proxy Profile. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getProxyProfileSdkKeys(proxyProfileId: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getProxyProfileSdkKeys(proxyProfileId, options); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = operationServerMap['ProxyProfilesApi.getProxyProfileSdkKeys']?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); + }, + /** + * This endpoint returns the list of Proxy profiles for the given Organization identified by the `organizationId` parameter. + * @summary List Proxy Profiles + * @param {string} organizationId The identifier of the Organization. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getProxyProfiles(organizationId: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getProxyProfiles(organizationId, options); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = operationServerMap['ProxyProfilesApi.getProxyProfiles']?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); + }, + /** + * This endpoint replaces a Proxy Profile identified by the `proxyProfileId` parameter. **Important:** As this endpoint is doing a complete replace, it\'s important to set every other attribute that you don\'t want to change in its original state. Not listing one means it will reset. + * @summary Replace Proxy Profile + * @param {string} proxyProfileId The identifier of the Proxy Profile. + * @param {CreateOrUpdateProxyProfileRequest} createOrUpdateProxyProfileRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async replaceProxyProfile(proxyProfileId: string, createOrUpdateProxyProfileRequest: CreateOrUpdateProxyProfileRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.replaceProxyProfile(proxyProfileId, createOrUpdateProxyProfileRequest, options); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = operationServerMap['ProxyProfilesApi.replaceProxyProfile']?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); + }, + /** + * This endpoint adds the given list of Config / Environment pairs\' SDK Keys to a Proxy Profile identified by the `proxyProfileId`. + * @summary Select SDK keys + * @param {string} proxyProfileId The identifier of the Proxy Profile. + * @param {ProxyProfileSdkKeysRequest} proxyProfileSdkKeysRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async selectProxyProfileSdkKeys(proxyProfileId: string, proxyProfileSdkKeysRequest: ProxyProfileSdkKeysRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.selectProxyProfileSdkKeys(proxyProfileId, proxyProfileSdkKeysRequest, options); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = operationServerMap['ProxyProfilesApi.selectProxyProfileSdkKeys']?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); + }, + /** + * This endpoint updates a Proxy Profile identified by the `proxyProfileId` parameter with a collection of [JSON Patch](https://jsonpatch.com) operations. The advantage of using JSON Patch is that you can describe individual update operations on a resource without touching attributes that you don\'t want to change. For example: We have the following resource. ```json { \"proxyProfileId\": \"4ebe288d-6415-44a8-85c8-7b9f78316a86\", \"name\": \"production\", \"description\": \"profile for production environments\", \"lastAccessedAt\": \"2019-08-24T14:15:22Z\", \"connectionPreferences\": { \"sdkPollInterval\": 60, \"webhookNotification\": null }, \"sdkKeySelectionRules\": [] } ``` If we send an update request body as below (it changes the `sdkPollInterval` field and adds a new Proxy Webhook URL): ```json [ { \"op\": \"replace\", \"path\": \"/connectionPreferences/sdkPollInterval\", \"value\": 120 }, { \"op\": \"add\", \"path\": \"/connectionPreferences/webhookNotification\", \"value\": { \"webhookProxyUrl\": \"https://my-proxy-url.com\" } } ] ``` Only the `sdkPollInterval` and `webhookProxyUrl` are updated and all the other attributes remain unchanged. So we get a response like this: ```json { \"proxyProfileId\": \"4ebe288d-6415-44a8-85c8-7b9f78316a86\", \"name\": \"production\", \"description\": \"profile for production environments\", \"lastAccessedAt\": \"2019-08-24T14:15:22Z\", \"connectionPreferences\": { \"sdkPollInterval\": 120, \"webhookNotification\": { \"webhookProxyUrl\": \"https://my-proxy-url.com\", \"signingKey1\": \"\", \"signingKey2\": null } }, \"sdkKeySelectionRules\": [] } ``` + * @summary Update Proxy Profile + * @param {string} proxyProfileId The identifier of the Proxy Profile. + * @param {Array} jsonPatchOperation + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async updateProxyProfile(proxyProfileId: string, jsonPatchOperation: Array, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.updateProxyProfile(proxyProfileId, jsonPatchOperation, options); + const localVarOperationServerIndex = configuration?.serverIndex ?? 0; + const localVarOperationServerBasePath = operationServerMap['ProxyProfilesApi.updateProxyProfile']?.[localVarOperationServerIndex]?.url; + return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); + }, + } +}; + +/** + * ProxyProfilesApi - factory interface + * @export + */ +export const ProxyProfilesApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = ProxyProfilesApiFp(configuration) + return { + /** + * This endpoint creates a new Proxy Profile in the given Organization identified by the `organizationId` parameter, which can be obtained from the [List Organizations](#operation/get-organizations) endpoint. + * @summary Create Proxy Profile + * @param {string} organizationId The identifier of the Organization. + * @param {CreateOrUpdateProxyProfileRequest} createOrUpdateProxyProfileRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + createProxyProfile(organizationId: string, createOrUpdateProxyProfileRequest: CreateOrUpdateProxyProfileRequest, options?: any): AxiosPromise { + return localVarFp.createProxyProfile(organizationId, createOrUpdateProxyProfileRequest, options).then((request) => request(axios, basePath)); + }, + /** + * This endpoint removes a Proxy Profile identified by the `proxyProfileId` parameter. + * @summary Delete Proxy Profile + * @param {string} proxyProfileId The identifier of the Proxy Profile. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteProxyProfile(proxyProfileId: string, options?: any): AxiosPromise { + return localVarFp.deleteProxyProfile(proxyProfileId, options).then((request) => request(axios, basePath)); + }, + /** + * This endpoint removes the given list of Config / Environment pairs\' SDK Keys from a Proxy Profile identified by the `proxyProfileId`. + * @summary Deselect SDK keys + * @param {string} proxyProfileId The identifier of the Proxy Profile. + * @param {ProxyProfileSdkKeysRequest} proxyProfileSdkKeysRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deselectProxyProfileSdkKeys(proxyProfileId: string, proxyProfileSdkKeysRequest: ProxyProfileSdkKeysRequest, options?: any): AxiosPromise { + return localVarFp.deselectProxyProfileSdkKeys(proxyProfileId, proxyProfileSdkKeysRequest, options).then((request) => request(axios, basePath)); + }, + /** + * This endpoint (re)generates a secret token for a Proxy Profile identified by the `proxyProfileId` parameter. + * @summary Generate Secret + * @param {string} proxyProfileId The identifier of the Proxy Profile. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + generateProxyProfileSecret(proxyProfileId: string, options?: any): AxiosPromise { + return localVarFp.generateProxyProfileSecret(proxyProfileId, options).then((request) => request(axios, basePath)); + }, + /** + * This endpoint returns a Proxy Profile identified by the `proxyProfileId`. + * @summary Get Proxy Profile + * @param {string} proxyProfileId The identifier of the Proxy Profile. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getProxyProfile(proxyProfileId: string, options?: any): AxiosPromise { + return localVarFp.getProxyProfile(proxyProfileId, options).then((request) => request(axios, basePath)); + }, + /** + * This endpoint returns the list of SDK keys selected for a Proxy Profile identified by the `proxyProfileId`. + * @summary Get selected SDK keys + * @param {string} proxyProfileId The identifier of the Proxy Profile. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getProxyProfileSdkKeys(proxyProfileId: string, options?: any): AxiosPromise { + return localVarFp.getProxyProfileSdkKeys(proxyProfileId, options).then((request) => request(axios, basePath)); + }, + /** + * This endpoint returns the list of Proxy profiles for the given Organization identified by the `organizationId` parameter. + * @summary List Proxy Profiles + * @param {string} organizationId The identifier of the Organization. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getProxyProfiles(organizationId: string, options?: any): AxiosPromise { + return localVarFp.getProxyProfiles(organizationId, options).then((request) => request(axios, basePath)); + }, + /** + * This endpoint replaces a Proxy Profile identified by the `proxyProfileId` parameter. **Important:** As this endpoint is doing a complete replace, it\'s important to set every other attribute that you don\'t want to change in its original state. Not listing one means it will reset. + * @summary Replace Proxy Profile + * @param {string} proxyProfileId The identifier of the Proxy Profile. + * @param {CreateOrUpdateProxyProfileRequest} createOrUpdateProxyProfileRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + replaceProxyProfile(proxyProfileId: string, createOrUpdateProxyProfileRequest: CreateOrUpdateProxyProfileRequest, options?: any): AxiosPromise { + return localVarFp.replaceProxyProfile(proxyProfileId, createOrUpdateProxyProfileRequest, options).then((request) => request(axios, basePath)); + }, + /** + * This endpoint adds the given list of Config / Environment pairs\' SDK Keys to a Proxy Profile identified by the `proxyProfileId`. + * @summary Select SDK keys + * @param {string} proxyProfileId The identifier of the Proxy Profile. + * @param {ProxyProfileSdkKeysRequest} proxyProfileSdkKeysRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + selectProxyProfileSdkKeys(proxyProfileId: string, proxyProfileSdkKeysRequest: ProxyProfileSdkKeysRequest, options?: any): AxiosPromise { + return localVarFp.selectProxyProfileSdkKeys(proxyProfileId, proxyProfileSdkKeysRequest, options).then((request) => request(axios, basePath)); + }, + /** + * This endpoint updates a Proxy Profile identified by the `proxyProfileId` parameter with a collection of [JSON Patch](https://jsonpatch.com) operations. The advantage of using JSON Patch is that you can describe individual update operations on a resource without touching attributes that you don\'t want to change. For example: We have the following resource. ```json { \"proxyProfileId\": \"4ebe288d-6415-44a8-85c8-7b9f78316a86\", \"name\": \"production\", \"description\": \"profile for production environments\", \"lastAccessedAt\": \"2019-08-24T14:15:22Z\", \"connectionPreferences\": { \"sdkPollInterval\": 60, \"webhookNotification\": null }, \"sdkKeySelectionRules\": [] } ``` If we send an update request body as below (it changes the `sdkPollInterval` field and adds a new Proxy Webhook URL): ```json [ { \"op\": \"replace\", \"path\": \"/connectionPreferences/sdkPollInterval\", \"value\": 120 }, { \"op\": \"add\", \"path\": \"/connectionPreferences/webhookNotification\", \"value\": { \"webhookProxyUrl\": \"https://my-proxy-url.com\" } } ] ``` Only the `sdkPollInterval` and `webhookProxyUrl` are updated and all the other attributes remain unchanged. So we get a response like this: ```json { \"proxyProfileId\": \"4ebe288d-6415-44a8-85c8-7b9f78316a86\", \"name\": \"production\", \"description\": \"profile for production environments\", \"lastAccessedAt\": \"2019-08-24T14:15:22Z\", \"connectionPreferences\": { \"sdkPollInterval\": 120, \"webhookNotification\": { \"webhookProxyUrl\": \"https://my-proxy-url.com\", \"signingKey1\": \"\", \"signingKey2\": null } }, \"sdkKeySelectionRules\": [] } ``` + * @summary Update Proxy Profile + * @param {string} proxyProfileId The identifier of the Proxy Profile. + * @param {Array} jsonPatchOperation + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + updateProxyProfile(proxyProfileId: string, jsonPatchOperation: Array, options?: any): AxiosPromise { + return localVarFp.updateProxyProfile(proxyProfileId, jsonPatchOperation, options).then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * ProxyProfilesApi - object-oriented interface + * @export + * @class ProxyProfilesApi + * @extends {BaseAPI} + */ +export class ProxyProfilesApi extends BaseAPI { + /** + * This endpoint creates a new Proxy Profile in the given Organization identified by the `organizationId` parameter, which can be obtained from the [List Organizations](#operation/get-organizations) endpoint. + * @summary Create Proxy Profile + * @param {string} organizationId The identifier of the Organization. + * @param {CreateOrUpdateProxyProfileRequest} createOrUpdateProxyProfileRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof ProxyProfilesApi + */ + public createProxyProfile(organizationId: string, createOrUpdateProxyProfileRequest: CreateOrUpdateProxyProfileRequest, options?: RawAxiosRequestConfig) { + return ProxyProfilesApiFp(this.configuration).createProxyProfile(organizationId, createOrUpdateProxyProfileRequest, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * This endpoint removes a Proxy Profile identified by the `proxyProfileId` parameter. + * @summary Delete Proxy Profile + * @param {string} proxyProfileId The identifier of the Proxy Profile. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof ProxyProfilesApi + */ + public deleteProxyProfile(proxyProfileId: string, options?: RawAxiosRequestConfig) { + return ProxyProfilesApiFp(this.configuration).deleteProxyProfile(proxyProfileId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * This endpoint removes the given list of Config / Environment pairs\' SDK Keys from a Proxy Profile identified by the `proxyProfileId`. + * @summary Deselect SDK keys + * @param {string} proxyProfileId The identifier of the Proxy Profile. + * @param {ProxyProfileSdkKeysRequest} proxyProfileSdkKeysRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof ProxyProfilesApi + */ + public deselectProxyProfileSdkKeys(proxyProfileId: string, proxyProfileSdkKeysRequest: ProxyProfileSdkKeysRequest, options?: RawAxiosRequestConfig) { + return ProxyProfilesApiFp(this.configuration).deselectProxyProfileSdkKeys(proxyProfileId, proxyProfileSdkKeysRequest, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * This endpoint (re)generates a secret token for a Proxy Profile identified by the `proxyProfileId` parameter. + * @summary Generate Secret + * @param {string} proxyProfileId The identifier of the Proxy Profile. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof ProxyProfilesApi + */ + public generateProxyProfileSecret(proxyProfileId: string, options?: RawAxiosRequestConfig) { + return ProxyProfilesApiFp(this.configuration).generateProxyProfileSecret(proxyProfileId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * This endpoint returns a Proxy Profile identified by the `proxyProfileId`. + * @summary Get Proxy Profile + * @param {string} proxyProfileId The identifier of the Proxy Profile. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof ProxyProfilesApi + */ + public getProxyProfile(proxyProfileId: string, options?: RawAxiosRequestConfig) { + return ProxyProfilesApiFp(this.configuration).getProxyProfile(proxyProfileId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * This endpoint returns the list of SDK keys selected for a Proxy Profile identified by the `proxyProfileId`. + * @summary Get selected SDK keys + * @param {string} proxyProfileId The identifier of the Proxy Profile. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof ProxyProfilesApi + */ + public getProxyProfileSdkKeys(proxyProfileId: string, options?: RawAxiosRequestConfig) { + return ProxyProfilesApiFp(this.configuration).getProxyProfileSdkKeys(proxyProfileId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * This endpoint returns the list of Proxy profiles for the given Organization identified by the `organizationId` parameter. + * @summary List Proxy Profiles + * @param {string} organizationId The identifier of the Organization. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof ProxyProfilesApi + */ + public getProxyProfiles(organizationId: string, options?: RawAxiosRequestConfig) { + return ProxyProfilesApiFp(this.configuration).getProxyProfiles(organizationId, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * This endpoint replaces a Proxy Profile identified by the `proxyProfileId` parameter. **Important:** As this endpoint is doing a complete replace, it\'s important to set every other attribute that you don\'t want to change in its original state. Not listing one means it will reset. + * @summary Replace Proxy Profile + * @param {string} proxyProfileId The identifier of the Proxy Profile. + * @param {CreateOrUpdateProxyProfileRequest} createOrUpdateProxyProfileRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof ProxyProfilesApi + */ + public replaceProxyProfile(proxyProfileId: string, createOrUpdateProxyProfileRequest: CreateOrUpdateProxyProfileRequest, options?: RawAxiosRequestConfig) { + return ProxyProfilesApiFp(this.configuration).replaceProxyProfile(proxyProfileId, createOrUpdateProxyProfileRequest, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * This endpoint adds the given list of Config / Environment pairs\' SDK Keys to a Proxy Profile identified by the `proxyProfileId`. + * @summary Select SDK keys + * @param {string} proxyProfileId The identifier of the Proxy Profile. + * @param {ProxyProfileSdkKeysRequest} proxyProfileSdkKeysRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof ProxyProfilesApi + */ + public selectProxyProfileSdkKeys(proxyProfileId: string, proxyProfileSdkKeysRequest: ProxyProfileSdkKeysRequest, options?: RawAxiosRequestConfig) { + return ProxyProfilesApiFp(this.configuration).selectProxyProfileSdkKeys(proxyProfileId, proxyProfileSdkKeysRequest, options).then((request) => request(this.axios, this.basePath)); + } + + /** + * This endpoint updates a Proxy Profile identified by the `proxyProfileId` parameter with a collection of [JSON Patch](https://jsonpatch.com) operations. The advantage of using JSON Patch is that you can describe individual update operations on a resource without touching attributes that you don\'t want to change. For example: We have the following resource. ```json { \"proxyProfileId\": \"4ebe288d-6415-44a8-85c8-7b9f78316a86\", \"name\": \"production\", \"description\": \"profile for production environments\", \"lastAccessedAt\": \"2019-08-24T14:15:22Z\", \"connectionPreferences\": { \"sdkPollInterval\": 60, \"webhookNotification\": null }, \"sdkKeySelectionRules\": [] } ``` If we send an update request body as below (it changes the `sdkPollInterval` field and adds a new Proxy Webhook URL): ```json [ { \"op\": \"replace\", \"path\": \"/connectionPreferences/sdkPollInterval\", \"value\": 120 }, { \"op\": \"add\", \"path\": \"/connectionPreferences/webhookNotification\", \"value\": { \"webhookProxyUrl\": \"https://my-proxy-url.com\" } } ] ``` Only the `sdkPollInterval` and `webhookProxyUrl` are updated and all the other attributes remain unchanged. So we get a response like this: ```json { \"proxyProfileId\": \"4ebe288d-6415-44a8-85c8-7b9f78316a86\", \"name\": \"production\", \"description\": \"profile for production environments\", \"lastAccessedAt\": \"2019-08-24T14:15:22Z\", \"connectionPreferences\": { \"sdkPollInterval\": 120, \"webhookNotification\": { \"webhookProxyUrl\": \"https://my-proxy-url.com\", \"signingKey1\": \"\", \"signingKey2\": null } }, \"sdkKeySelectionRules\": [] } ``` + * @summary Update Proxy Profile + * @param {string} proxyProfileId The identifier of the Proxy Profile. + * @param {Array} jsonPatchOperation + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof ProxyProfilesApi + */ + public updateProxyProfile(proxyProfileId: string, jsonPatchOperation: Array, options?: RawAxiosRequestConfig) { + return ProxyProfilesApiFp(this.configuration).updateProxyProfile(proxyProfileId, jsonPatchOperation, options).then((request) => request(this.axios, this.basePath)); + } +} + diff --git a/model/audit-log-type.ts b/model/audit-log-type.ts index 7493427..65fa5a4 100644 --- a/model/audit-log-type.ts +++ b/model/audit-log-type.ts @@ -49,7 +49,7 @@ export const AuditLogType = { SettingsReordered: 'settingsReordered', PredefinedVariationsChanged: 'predefinedVariationsChanged', SettingConvertedToPredefinedVariations: 'settingConvertedToPredefinedVariations', - SettingConvertedToCustomValues: 'settingConvertedToCustomValues', + SettingConvertedToFreeFormValues: 'settingConvertedToFreeFormValues', SettingValueChanged: 'settingValueChanged', WebHookCreated: 'webHookCreated', WebHookChanged: 'webHookChanged', diff --git a/model/connection-preferences.ts b/model/connection-preferences.ts new file mode 100644 index 0000000..f815ab3 --- /dev/null +++ b/model/connection-preferences.ts @@ -0,0 +1,39 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * ConfigCat Public Management API + * The purpose of this API is to access the ConfigCat platform programmatically. You can **Create**, **Read**, **Update** and **Delete** any entities like **Feature Flags, Configs, Environments** or **Products** within ConfigCat. **Base API URL**: https://api.configcat.com If you prefer the swagger documentation, you can find it here: [Swagger UI](https://api.configcat.com/swagger). The API is based on HTTP REST, uses resource-oriented URLs, status codes and supports JSON format. **Important:** Do not use this API for accessing and evaluating feature flag values. Use the [SDKs](https://configcat.com/docs/sdk-reference/overview) or the [ConfigCat Proxy](https://configcat.com/docs/advanced/proxy/proxy-overview/) instead. # OpenAPI Specification The complete specification is publicly available in the following formats: - [OpenAPI v3](https://api.configcat.com/docs/v1/swagger.json) - [Swagger v2](https://api.configcat.com/docs/v1/swagger.v2.json) You can use it to generate client libraries in various languages with [OpenAPI Generator](https://github.com/OpenAPITools/openapi-generator) or [Swagger Codegen](https://swagger.io/tools/swagger-codegen/) to interact with this API. # Authentication This API uses the [Basic HTTP Authentication Scheme](https://en.wikipedia.org/wiki/Basic_access_authentication). # Throttling and rate limits All the rate limited API calls are returning information about the current rate limit period in the following HTTP headers: | Header | Description | | :- | :- | | X-Rate-Limit-Remaining | The maximum number of requests remaining in the current rate limit period. | | X-Rate-Limit-Reset | The time when the current rate limit period resets. | When the rate limit is exceeded by a request, the API returns with a `HTTP 429 - Too many requests` status along with a `Retry-After` HTTP header. + * + * The version of the OpenAPI document: v1 + * Contact: support@configcat.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +// May contain unused imports in some cases +// @ts-ignore +import { WebhookNotification } from './webhook-notification'; + +/** + * The connection preferences for the proxy profile, including SDK poll interval and webhook proxy URL. + * @export + * @interface ConnectionPreferences + */ +export interface ConnectionPreferences { + /** + * The SDK poll interval in seconds that determines how often SDKs should fetch config JSON updates. + * @type {number} + * @memberof ConnectionPreferences + */ + 'sdkPollInterval': number; + /** + * + * @type {WebhookNotification} + * @memberof ConnectionPreferences + */ + 'webhookNotification': WebhookNotification | null; +} + diff --git a/model/create-or-update-connection-preferences.ts b/model/create-or-update-connection-preferences.ts new file mode 100644 index 0000000..c6ee67a --- /dev/null +++ b/model/create-or-update-connection-preferences.ts @@ -0,0 +1,39 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * ConfigCat Public Management API + * The purpose of this API is to access the ConfigCat platform programmatically. You can **Create**, **Read**, **Update** and **Delete** any entities like **Feature Flags, Configs, Environments** or **Products** within ConfigCat. **Base API URL**: https://api.configcat.com If you prefer the swagger documentation, you can find it here: [Swagger UI](https://api.configcat.com/swagger). The API is based on HTTP REST, uses resource-oriented URLs, status codes and supports JSON format. **Important:** Do not use this API for accessing and evaluating feature flag values. Use the [SDKs](https://configcat.com/docs/sdk-reference/overview) or the [ConfigCat Proxy](https://configcat.com/docs/advanced/proxy/proxy-overview/) instead. # OpenAPI Specification The complete specification is publicly available in the following formats: - [OpenAPI v3](https://api.configcat.com/docs/v1/swagger.json) - [Swagger v2](https://api.configcat.com/docs/v1/swagger.v2.json) You can use it to generate client libraries in various languages with [OpenAPI Generator](https://github.com/OpenAPITools/openapi-generator) or [Swagger Codegen](https://swagger.io/tools/swagger-codegen/) to interact with this API. # Authentication This API uses the [Basic HTTP Authentication Scheme](https://en.wikipedia.org/wiki/Basic_access_authentication). # Throttling and rate limits All the rate limited API calls are returning information about the current rate limit period in the following HTTP headers: | Header | Description | | :- | :- | | X-Rate-Limit-Remaining | The maximum number of requests remaining in the current rate limit period. | | X-Rate-Limit-Reset | The time when the current rate limit period resets. | When the rate limit is exceeded by a request, the API returns with a `HTTP 429 - Too many requests` status along with a `Retry-After` HTTP header. + * + * The version of the OpenAPI document: v1 + * Contact: support@configcat.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +// May contain unused imports in some cases +// @ts-ignore +import { CreateOrUpdateWebhookNotification } from './create-or-update-webhook-notification'; + +/** + * The preferences related to a connection, including polling intervals and webhook proxy configurations. + * @export + * @interface CreateOrUpdateConnectionPreferences + */ +export interface CreateOrUpdateConnectionPreferences { + /** + * The SDK poll interval in seconds. If not specified, a default value (60) will be used. + * @type {number} + * @memberof CreateOrUpdateConnectionPreferences + */ + 'sdkPollInterval'?: number | null; + /** + * + * @type {CreateOrUpdateWebhookNotification} + * @memberof CreateOrUpdateConnectionPreferences + */ + 'webhookNotification'?: CreateOrUpdateWebhookNotification | null; +} + diff --git a/model/create-or-update-proxy-profile-request.ts b/model/create-or-update-proxy-profile-request.ts new file mode 100644 index 0000000..fe48f25 --- /dev/null +++ b/model/create-or-update-proxy-profile-request.ts @@ -0,0 +1,54 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * ConfigCat Public Management API + * The purpose of this API is to access the ConfigCat platform programmatically. You can **Create**, **Read**, **Update** and **Delete** any entities like **Feature Flags, Configs, Environments** or **Products** within ConfigCat. **Base API URL**: https://api.configcat.com If you prefer the swagger documentation, you can find it here: [Swagger UI](https://api.configcat.com/swagger). The API is based on HTTP REST, uses resource-oriented URLs, status codes and supports JSON format. **Important:** Do not use this API for accessing and evaluating feature flag values. Use the [SDKs](https://configcat.com/docs/sdk-reference/overview) or the [ConfigCat Proxy](https://configcat.com/docs/advanced/proxy/proxy-overview/) instead. # OpenAPI Specification The complete specification is publicly available in the following formats: - [OpenAPI v3](https://api.configcat.com/docs/v1/swagger.json) - [Swagger v2](https://api.configcat.com/docs/v1/swagger.v2.json) You can use it to generate client libraries in various languages with [OpenAPI Generator](https://github.com/OpenAPITools/openapi-generator) or [Swagger Codegen](https://swagger.io/tools/swagger-codegen/) to interact with this API. # Authentication This API uses the [Basic HTTP Authentication Scheme](https://en.wikipedia.org/wiki/Basic_access_authentication). # Throttling and rate limits All the rate limited API calls are returning information about the current rate limit period in the following HTTP headers: | Header | Description | | :- | :- | | X-Rate-Limit-Remaining | The maximum number of requests remaining in the current rate limit period. | | X-Rate-Limit-Reset | The time when the current rate limit period resets. | When the rate limit is exceeded by a request, the API returns with a `HTTP 429 - Too many requests` status along with a `Retry-After` HTTP header. + * + * The version of the OpenAPI document: v1 + * Contact: support@configcat.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +// May contain unused imports in some cases +// @ts-ignore +import { CreateOrUpdateConnectionPreferences } from './create-or-update-connection-preferences'; +// May contain unused imports in some cases +// @ts-ignore +import { UpdateProxyProfileSelectionRule } from './update-proxy-profile-selection-rule'; + +/** + * + * @export + * @interface CreateOrUpdateProxyProfileRequest + */ +export interface CreateOrUpdateProxyProfileRequest { + /** + * The name of the proxy profile. + * @type {string} + * @memberof CreateOrUpdateProxyProfileRequest + */ + 'name': string; + /** + * The description of the proxy profile. + * @type {string} + * @memberof CreateOrUpdateProxyProfileRequest + */ + 'description'?: string | null; + /** + * + * @type {CreateOrUpdateConnectionPreferences} + * @memberof CreateOrUpdateProxyProfileRequest + */ + 'connectionPreferences'?: CreateOrUpdateConnectionPreferences | null; + /** + * A collection of selection rules that determine the SDK keys applicable for a proxy profile. + * @type {Array} + * @memberof CreateOrUpdateProxyProfileRequest + */ + 'sdkKeySelectionRules'?: Array | null; +} + diff --git a/model/create-or-update-webhook-notification.ts b/model/create-or-update-webhook-notification.ts new file mode 100644 index 0000000..9e894f9 --- /dev/null +++ b/model/create-or-update-webhook-notification.ts @@ -0,0 +1,30 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * ConfigCat Public Management API + * The purpose of this API is to access the ConfigCat platform programmatically. You can **Create**, **Read**, **Update** and **Delete** any entities like **Feature Flags, Configs, Environments** or **Products** within ConfigCat. **Base API URL**: https://api.configcat.com If you prefer the swagger documentation, you can find it here: [Swagger UI](https://api.configcat.com/swagger). The API is based on HTTP REST, uses resource-oriented URLs, status codes and supports JSON format. **Important:** Do not use this API for accessing and evaluating feature flag values. Use the [SDKs](https://configcat.com/docs/sdk-reference/overview) or the [ConfigCat Proxy](https://configcat.com/docs/advanced/proxy/proxy-overview/) instead. # OpenAPI Specification The complete specification is publicly available in the following formats: - [OpenAPI v3](https://api.configcat.com/docs/v1/swagger.json) - [Swagger v2](https://api.configcat.com/docs/v1/swagger.v2.json) You can use it to generate client libraries in various languages with [OpenAPI Generator](https://github.com/OpenAPITools/openapi-generator) or [Swagger Codegen](https://swagger.io/tools/swagger-codegen/) to interact with this API. # Authentication This API uses the [Basic HTTP Authentication Scheme](https://en.wikipedia.org/wiki/Basic_access_authentication). # Throttling and rate limits All the rate limited API calls are returning information about the current rate limit period in the following HTTP headers: | Header | Description | | :- | :- | | X-Rate-Limit-Remaining | The maximum number of requests remaining in the current rate limit period. | | X-Rate-Limit-Reset | The time when the current rate limit period resets. | When the rate limit is exceeded by a request, the API returns with a `HTTP 429 - Too many requests` status along with a `Retry-After` HTTP header. + * + * The version of the OpenAPI document: v1 + * Contact: support@configcat.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + + +/** + * The preferences related to a connection, including polling intervals and webhook proxy configurations. + * @export + * @interface CreateOrUpdateWebhookNotification + */ +export interface CreateOrUpdateWebhookNotification { + /** + * The webhook proxy URL for receiving config JSON change notifications. + * @type {string} + * @memberof CreateOrUpdateWebhookNotification + */ + 'webhookProxyUrl': string; +} + diff --git a/model/index.ts b/model/index.ts index 2ef4ac7..8f7318d 100644 --- a/model/index.ts +++ b/model/index.ts @@ -14,10 +14,14 @@ export * from './config-setting-formulas-model'; export * from './config-setting-value-model'; export * from './config-setting-values-model'; export * from './connect-request'; +export * from './connection-preferences'; export * from './create-config-request'; export * from './create-environment-model'; export * from './create-integration-model'; +export * from './create-or-update-connection-preferences'; export * from './create-or-update-environment-access-model'; +export * from './create-or-update-proxy-profile-request'; +export * from './create-or-update-webhook-notification'; export * from './create-permission-group-request'; export * from './create-predefined-variation-model'; export * from './create-predefined-variation-value-model'; @@ -62,10 +66,19 @@ export * from './percentage-option-model'; export * from './permission-group-model'; export * from './predefined-variation-model'; export * from './predefined-variation-value-model'; +export * from './predefined-variations-model'; export * from './preferences-model'; export * from './prerequisite-comparator'; export * from './prerequisite-flag-condition-model'; export * from './product-model'; +export * from './proxy-profile-list-model'; +export * from './proxy-profile-model'; +export * from './proxy-profile-sdk-key-item'; +export * from './proxy-profile-sdk-key-request-item'; +export * from './proxy-profile-sdk-keys-list-model'; +export * from './proxy-profile-sdk-keys-request'; +export * from './proxy-profile-secret-model'; +export * from './proxy-profile-selection-rule'; export * from './reason-required-environment-model'; export * from './reference-line-model'; export * from './reference-line-request'; @@ -80,6 +93,7 @@ export * from './segment-comparator'; export * from './segment-condition-model'; export * from './segment-list-model'; export * from './segment-model'; +export * from './selection-rule-kind'; export * from './setting-data-model'; export * from './setting-data-v2-model'; export * from './setting-formula-model'; @@ -115,6 +129,7 @@ export * from './update-predefined-variations-request'; export * from './update-preferences-request'; export * from './update-prerequisite-flag-condition-model'; export * from './update-product-request'; +export * from './update-proxy-profile-selection-rule'; export * from './update-reason-required-environment-model'; export * from './update-rollout-percentage-item-model'; export * from './update-rollout-rule-model'; @@ -137,5 +152,6 @@ export * from './webhook-config'; export * from './webhook-environment'; export * from './webhook-header-model'; export * from './webhook-header-response-model'; +export * from './webhook-notification'; export * from './webhook-response-model'; export * from './webhook-signing-keys-model'; diff --git a/model/predefined-variations-model.ts b/model/predefined-variations-model.ts new file mode 100644 index 0000000..d6130c4 --- /dev/null +++ b/model/predefined-variations-model.ts @@ -0,0 +1,39 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * ConfigCat Public Management API + * The purpose of this API is to access the ConfigCat platform programmatically. You can **Create**, **Read**, **Update** and **Delete** any entities like **Feature Flags, Configs, Environments** or **Products** within ConfigCat. **Base API URL**: https://api.configcat.com If you prefer the swagger documentation, you can find it here: [Swagger UI](https://api.configcat.com/swagger). The API is based on HTTP REST, uses resource-oriented URLs, status codes and supports JSON format. **Important:** Do not use this API for accessing and evaluating feature flag values. Use the [SDKs](https://configcat.com/docs/sdk-reference/overview) or the [ConfigCat Proxy](https://configcat.com/docs/advanced/proxy/proxy-overview/) instead. # OpenAPI Specification The complete specification is publicly available in the following formats: - [OpenAPI v3](https://api.configcat.com/docs/v1/swagger.json) - [Swagger v2](https://api.configcat.com/docs/v1/swagger.v2.json) You can use it to generate client libraries in various languages with [OpenAPI Generator](https://github.com/OpenAPITools/openapi-generator) or [Swagger Codegen](https://swagger.io/tools/swagger-codegen/) to interact with this API. # Authentication This API uses the [Basic HTTP Authentication Scheme](https://en.wikipedia.org/wiki/Basic_access_authentication). # Throttling and rate limits All the rate limited API calls are returning information about the current rate limit period in the following HTTP headers: | Header | Description | | :- | :- | | X-Rate-Limit-Remaining | The maximum number of requests remaining in the current rate limit period. | | X-Rate-Limit-Reset | The time when the current rate limit period resets. | When the rate limit is exceeded by a request, the API returns with a `HTTP 429 - Too many requests` status along with a `Retry-After` HTTP header. + * + * The version of the OpenAPI document: v1 + * Contact: support@configcat.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +// May contain unused imports in some cases +// @ts-ignore +import { PredefinedVariationModel } from './predefined-variation-model'; + +/** + * + * @export + * @interface PredefinedVariationsModel + */ +export interface PredefinedVariationsModel { + /** + * The Feature Flag or Setting\'s Variations. + * @type {Array} + * @memberof PredefinedVariationsModel + */ + 'predefinedVariations': Array; + /** + * The maximum number of predefined variations allowed for the Feature Flag or Setting. + * @type {number} + * @memberof PredefinedVariationsModel + */ + 'maxPredefinedVariations': number; +} + diff --git a/model/proxy-profile-list-model.ts b/model/proxy-profile-list-model.ts new file mode 100644 index 0000000..e9d65b4 --- /dev/null +++ b/model/proxy-profile-list-model.ts @@ -0,0 +1,33 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * ConfigCat Public Management API + * The purpose of this API is to access the ConfigCat platform programmatically. You can **Create**, **Read**, **Update** and **Delete** any entities like **Feature Flags, Configs, Environments** or **Products** within ConfigCat. **Base API URL**: https://api.configcat.com If you prefer the swagger documentation, you can find it here: [Swagger UI](https://api.configcat.com/swagger). The API is based on HTTP REST, uses resource-oriented URLs, status codes and supports JSON format. **Important:** Do not use this API for accessing and evaluating feature flag values. Use the [SDKs](https://configcat.com/docs/sdk-reference/overview) or the [ConfigCat Proxy](https://configcat.com/docs/advanced/proxy/proxy-overview/) instead. # OpenAPI Specification The complete specification is publicly available in the following formats: - [OpenAPI v3](https://api.configcat.com/docs/v1/swagger.json) - [Swagger v2](https://api.configcat.com/docs/v1/swagger.v2.json) You can use it to generate client libraries in various languages with [OpenAPI Generator](https://github.com/OpenAPITools/openapi-generator) or [Swagger Codegen](https://swagger.io/tools/swagger-codegen/) to interact with this API. # Authentication This API uses the [Basic HTTP Authentication Scheme](https://en.wikipedia.org/wiki/Basic_access_authentication). # Throttling and rate limits All the rate limited API calls are returning information about the current rate limit period in the following HTTP headers: | Header | Description | | :- | :- | | X-Rate-Limit-Remaining | The maximum number of requests remaining in the current rate limit period. | | X-Rate-Limit-Reset | The time when the current rate limit period resets. | When the rate limit is exceeded by a request, the API returns with a `HTTP 429 - Too many requests` status along with a `Retry-After` HTTP header. + * + * The version of the OpenAPI document: v1 + * Contact: support@configcat.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +// May contain unused imports in some cases +// @ts-ignore +import { ProxyProfileModel } from './proxy-profile-model'; + +/** + * + * @export + * @interface ProxyProfileListModel + */ +export interface ProxyProfileListModel { + /** + * The list of proxy profiles. + * @type {Array} + * @memberof ProxyProfileListModel + */ + 'profiles': Array; +} + diff --git a/model/proxy-profile-model.ts b/model/proxy-profile-model.ts new file mode 100644 index 0000000..d1f95e9 --- /dev/null +++ b/model/proxy-profile-model.ts @@ -0,0 +1,66 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * ConfigCat Public Management API + * The purpose of this API is to access the ConfigCat platform programmatically. You can **Create**, **Read**, **Update** and **Delete** any entities like **Feature Flags, Configs, Environments** or **Products** within ConfigCat. **Base API URL**: https://api.configcat.com If you prefer the swagger documentation, you can find it here: [Swagger UI](https://api.configcat.com/swagger). The API is based on HTTP REST, uses resource-oriented URLs, status codes and supports JSON format. **Important:** Do not use this API for accessing and evaluating feature flag values. Use the [SDKs](https://configcat.com/docs/sdk-reference/overview) or the [ConfigCat Proxy](https://configcat.com/docs/advanced/proxy/proxy-overview/) instead. # OpenAPI Specification The complete specification is publicly available in the following formats: - [OpenAPI v3](https://api.configcat.com/docs/v1/swagger.json) - [Swagger v2](https://api.configcat.com/docs/v1/swagger.v2.json) You can use it to generate client libraries in various languages with [OpenAPI Generator](https://github.com/OpenAPITools/openapi-generator) or [Swagger Codegen](https://swagger.io/tools/swagger-codegen/) to interact with this API. # Authentication This API uses the [Basic HTTP Authentication Scheme](https://en.wikipedia.org/wiki/Basic_access_authentication). # Throttling and rate limits All the rate limited API calls are returning information about the current rate limit period in the following HTTP headers: | Header | Description | | :- | :- | | X-Rate-Limit-Remaining | The maximum number of requests remaining in the current rate limit period. | | X-Rate-Limit-Reset | The time when the current rate limit period resets. | When the rate limit is exceeded by a request, the API returns with a `HTTP 429 - Too many requests` status along with a `Retry-After` HTTP header. + * + * The version of the OpenAPI document: v1 + * Contact: support@configcat.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +// May contain unused imports in some cases +// @ts-ignore +import { ConnectionPreferences } from './connection-preferences'; +// May contain unused imports in some cases +// @ts-ignore +import { ProxyProfileSelectionRule } from './proxy-profile-selection-rule'; + +/** + * + * @export + * @interface ProxyProfileModel + */ +export interface ProxyProfileModel { + /** + * The unique identifier of the proxy profile. + * @type {string} + * @memberof ProxyProfileModel + */ + 'proxyProfileId': string; + /** + * The name of the proxy profile. + * @type {string} + * @memberof ProxyProfileModel + */ + 'name': string; + /** + * The description of the proxy profile. + * @type {string} + * @memberof ProxyProfileModel + */ + 'description': string | null; + /** + * The date and time when the proxy profile was last accessed. + * @type {string} + * @memberof ProxyProfileModel + */ + 'lastAccessedAt': string | null; + /** + * + * @type {ConnectionPreferences} + * @memberof ProxyProfileModel + */ + 'connectionPreferences': ConnectionPreferences; + /** + * + * @type {Array} + * @memberof ProxyProfileModel + */ + 'sdkKeySelectionRules': Array; +} + diff --git a/model/proxy-profile-sdk-key-item.ts b/model/proxy-profile-sdk-key-item.ts new file mode 100644 index 0000000..e3995d6 --- /dev/null +++ b/model/proxy-profile-sdk-key-item.ts @@ -0,0 +1,54 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * ConfigCat Public Management API + * The purpose of this API is to access the ConfigCat platform programmatically. You can **Create**, **Read**, **Update** and **Delete** any entities like **Feature Flags, Configs, Environments** or **Products** within ConfigCat. **Base API URL**: https://api.configcat.com If you prefer the swagger documentation, you can find it here: [Swagger UI](https://api.configcat.com/swagger). The API is based on HTTP REST, uses resource-oriented URLs, status codes and supports JSON format. **Important:** Do not use this API for accessing and evaluating feature flag values. Use the [SDKs](https://configcat.com/docs/sdk-reference/overview) or the [ConfigCat Proxy](https://configcat.com/docs/advanced/proxy/proxy-overview/) instead. # OpenAPI Specification The complete specification is publicly available in the following formats: - [OpenAPI v3](https://api.configcat.com/docs/v1/swagger.json) - [Swagger v2](https://api.configcat.com/docs/v1/swagger.v2.json) You can use it to generate client libraries in various languages with [OpenAPI Generator](https://github.com/OpenAPITools/openapi-generator) or [Swagger Codegen](https://swagger.io/tools/swagger-codegen/) to interact with this API. # Authentication This API uses the [Basic HTTP Authentication Scheme](https://en.wikipedia.org/wiki/Basic_access_authentication). # Throttling and rate limits All the rate limited API calls are returning information about the current rate limit period in the following HTTP headers: | Header | Description | | :- | :- | | X-Rate-Limit-Remaining | The maximum number of requests remaining in the current rate limit period. | | X-Rate-Limit-Reset | The time when the current rate limit period resets. | When the rate limit is exceeded by a request, the API returns with a `HTTP 429 - Too many requests` status along with a `Retry-After` HTTP header. + * + * The version of the OpenAPI document: v1 + * Contact: support@configcat.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + + +/** + * + * @export + * @interface ProxyProfileSdkKeyItem + */ +export interface ProxyProfileSdkKeyItem { + /** + * The primary SDK Key of the Config / Environment pair selected for the Proxy Profile. + * @type {string} + * @memberof ProxyProfileSdkKeyItem + */ + 'primarySdkKey': string; + /** + * The secondary SDK Key of the Config / Environment pair selected for the Proxy Profile. + * @type {string} + * @memberof ProxyProfileSdkKeyItem + */ + 'secondarySdkKey': string | null; + /** + * The SDK ID identifying the Config / Environment pair selected for the Proxy Profile. + * @type {string} + * @memberof ProxyProfileSdkKeyItem + */ + 'sdkId': string; + /** + * The identifier of the Config associated with the SDK key. + * @type {string} + * @memberof ProxyProfileSdkKeyItem + */ + 'configId': string; + /** + * The identifier of the Environment associated with the SDK key. + * @type {string} + * @memberof ProxyProfileSdkKeyItem + */ + 'environmentId': string; +} + diff --git a/model/proxy-profile-sdk-key-request-item.ts b/model/proxy-profile-sdk-key-request-item.ts new file mode 100644 index 0000000..e5f47d2 --- /dev/null +++ b/model/proxy-profile-sdk-key-request-item.ts @@ -0,0 +1,36 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * ConfigCat Public Management API + * The purpose of this API is to access the ConfigCat platform programmatically. You can **Create**, **Read**, **Update** and **Delete** any entities like **Feature Flags, Configs, Environments** or **Products** within ConfigCat. **Base API URL**: https://api.configcat.com If you prefer the swagger documentation, you can find it here: [Swagger UI](https://api.configcat.com/swagger). The API is based on HTTP REST, uses resource-oriented URLs, status codes and supports JSON format. **Important:** Do not use this API for accessing and evaluating feature flag values. Use the [SDKs](https://configcat.com/docs/sdk-reference/overview) or the [ConfigCat Proxy](https://configcat.com/docs/advanced/proxy/proxy-overview/) instead. # OpenAPI Specification The complete specification is publicly available in the following formats: - [OpenAPI v3](https://api.configcat.com/docs/v1/swagger.json) - [Swagger v2](https://api.configcat.com/docs/v1/swagger.v2.json) You can use it to generate client libraries in various languages with [OpenAPI Generator](https://github.com/OpenAPITools/openapi-generator) or [Swagger Codegen](https://swagger.io/tools/swagger-codegen/) to interact with this API. # Authentication This API uses the [Basic HTTP Authentication Scheme](https://en.wikipedia.org/wiki/Basic_access_authentication). # Throttling and rate limits All the rate limited API calls are returning information about the current rate limit period in the following HTTP headers: | Header | Description | | :- | :- | | X-Rate-Limit-Remaining | The maximum number of requests remaining in the current rate limit period. | | X-Rate-Limit-Reset | The time when the current rate limit period resets. | When the rate limit is exceeded by a request, the API returns with a `HTTP 429 - Too many requests` status along with a `Retry-After` HTTP header. + * + * The version of the OpenAPI document: v1 + * Contact: support@configcat.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + + +/** + * + * @export + * @interface ProxyProfileSdkKeyRequestItem + */ +export interface ProxyProfileSdkKeyRequestItem { + /** + * The identifier of the Config. + * @type {string} + * @memberof ProxyProfileSdkKeyRequestItem + */ + 'configId'?: string | null; + /** + * The identifier of the Environment. + * @type {string} + * @memberof ProxyProfileSdkKeyRequestItem + */ + 'environmentId'?: string | null; +} + diff --git a/model/proxy-profile-sdk-keys-list-model.ts b/model/proxy-profile-sdk-keys-list-model.ts new file mode 100644 index 0000000..a0b14c1 --- /dev/null +++ b/model/proxy-profile-sdk-keys-list-model.ts @@ -0,0 +1,33 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * ConfigCat Public Management API + * The purpose of this API is to access the ConfigCat platform programmatically. You can **Create**, **Read**, **Update** and **Delete** any entities like **Feature Flags, Configs, Environments** or **Products** within ConfigCat. **Base API URL**: https://api.configcat.com If you prefer the swagger documentation, you can find it here: [Swagger UI](https://api.configcat.com/swagger). The API is based on HTTP REST, uses resource-oriented URLs, status codes and supports JSON format. **Important:** Do not use this API for accessing and evaluating feature flag values. Use the [SDKs](https://configcat.com/docs/sdk-reference/overview) or the [ConfigCat Proxy](https://configcat.com/docs/advanced/proxy/proxy-overview/) instead. # OpenAPI Specification The complete specification is publicly available in the following formats: - [OpenAPI v3](https://api.configcat.com/docs/v1/swagger.json) - [Swagger v2](https://api.configcat.com/docs/v1/swagger.v2.json) You can use it to generate client libraries in various languages with [OpenAPI Generator](https://github.com/OpenAPITools/openapi-generator) or [Swagger Codegen](https://swagger.io/tools/swagger-codegen/) to interact with this API. # Authentication This API uses the [Basic HTTP Authentication Scheme](https://en.wikipedia.org/wiki/Basic_access_authentication). # Throttling and rate limits All the rate limited API calls are returning information about the current rate limit period in the following HTTP headers: | Header | Description | | :- | :- | | X-Rate-Limit-Remaining | The maximum number of requests remaining in the current rate limit period. | | X-Rate-Limit-Reset | The time when the current rate limit period resets. | When the rate limit is exceeded by a request, the API returns with a `HTTP 429 - Too many requests` status along with a `Retry-After` HTTP header. + * + * The version of the OpenAPI document: v1 + * Contact: support@configcat.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +// May contain unused imports in some cases +// @ts-ignore +import { ProxyProfileSdkKeyItem } from './proxy-profile-sdk-key-item'; + +/** + * + * @export + * @interface ProxyProfileSdkKeysListModel + */ +export interface ProxyProfileSdkKeysListModel { + /** + * The list of SDK keys (with additional metadata) selected for the Proxy Profile. + * @type {Array} + * @memberof ProxyProfileSdkKeysListModel + */ + 'items': Array; +} + diff --git a/model/proxy-profile-sdk-keys-request.ts b/model/proxy-profile-sdk-keys-request.ts new file mode 100644 index 0000000..9524cce --- /dev/null +++ b/model/proxy-profile-sdk-keys-request.ts @@ -0,0 +1,33 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * ConfigCat Public Management API + * The purpose of this API is to access the ConfigCat platform programmatically. You can **Create**, **Read**, **Update** and **Delete** any entities like **Feature Flags, Configs, Environments** or **Products** within ConfigCat. **Base API URL**: https://api.configcat.com If you prefer the swagger documentation, you can find it here: [Swagger UI](https://api.configcat.com/swagger). The API is based on HTTP REST, uses resource-oriented URLs, status codes and supports JSON format. **Important:** Do not use this API for accessing and evaluating feature flag values. Use the [SDKs](https://configcat.com/docs/sdk-reference/overview) or the [ConfigCat Proxy](https://configcat.com/docs/advanced/proxy/proxy-overview/) instead. # OpenAPI Specification The complete specification is publicly available in the following formats: - [OpenAPI v3](https://api.configcat.com/docs/v1/swagger.json) - [Swagger v2](https://api.configcat.com/docs/v1/swagger.v2.json) You can use it to generate client libraries in various languages with [OpenAPI Generator](https://github.com/OpenAPITools/openapi-generator) or [Swagger Codegen](https://swagger.io/tools/swagger-codegen/) to interact with this API. # Authentication This API uses the [Basic HTTP Authentication Scheme](https://en.wikipedia.org/wiki/Basic_access_authentication). # Throttling and rate limits All the rate limited API calls are returning information about the current rate limit period in the following HTTP headers: | Header | Description | | :- | :- | | X-Rate-Limit-Remaining | The maximum number of requests remaining in the current rate limit period. | | X-Rate-Limit-Reset | The time when the current rate limit period resets. | When the rate limit is exceeded by a request, the API returns with a `HTTP 429 - Too many requests` status along with a `Retry-After` HTTP header. + * + * The version of the OpenAPI document: v1 + * Contact: support@configcat.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +// May contain unused imports in some cases +// @ts-ignore +import { ProxyProfileSdkKeyRequestItem } from './proxy-profile-sdk-key-request-item'; + +/** + * + * @export + * @interface ProxyProfileSdkKeysRequest + */ +export interface ProxyProfileSdkKeysRequest { + /** + * The list of Config / Environment pairs. By only setting a `configId` means all Environments of that Config will be included. Similarly, by only setting an `environmentId` means all Configs with that Environment will be included. + * @type {Array} + * @memberof ProxyProfileSdkKeysRequest + */ + 'items': Array; +} + diff --git a/model/proxy-profile-secret-model.ts b/model/proxy-profile-secret-model.ts new file mode 100644 index 0000000..aee574d --- /dev/null +++ b/model/proxy-profile-secret-model.ts @@ -0,0 +1,30 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * ConfigCat Public Management API + * The purpose of this API is to access the ConfigCat platform programmatically. You can **Create**, **Read**, **Update** and **Delete** any entities like **Feature Flags, Configs, Environments** or **Products** within ConfigCat. **Base API URL**: https://api.configcat.com If you prefer the swagger documentation, you can find it here: [Swagger UI](https://api.configcat.com/swagger). The API is based on HTTP REST, uses resource-oriented URLs, status codes and supports JSON format. **Important:** Do not use this API for accessing and evaluating feature flag values. Use the [SDKs](https://configcat.com/docs/sdk-reference/overview) or the [ConfigCat Proxy](https://configcat.com/docs/advanced/proxy/proxy-overview/) instead. # OpenAPI Specification The complete specification is publicly available in the following formats: - [OpenAPI v3](https://api.configcat.com/docs/v1/swagger.json) - [Swagger v2](https://api.configcat.com/docs/v1/swagger.v2.json) You can use it to generate client libraries in various languages with [OpenAPI Generator](https://github.com/OpenAPITools/openapi-generator) or [Swagger Codegen](https://swagger.io/tools/swagger-codegen/) to interact with this API. # Authentication This API uses the [Basic HTTP Authentication Scheme](https://en.wikipedia.org/wiki/Basic_access_authentication). # Throttling and rate limits All the rate limited API calls are returning information about the current rate limit period in the following HTTP headers: | Header | Description | | :- | :- | | X-Rate-Limit-Remaining | The maximum number of requests remaining in the current rate limit period. | | X-Rate-Limit-Reset | The time when the current rate limit period resets. | When the rate limit is exceeded by a request, the API returns with a `HTTP 429 - Too many requests` status along with a `Retry-After` HTTP header. + * + * The version of the OpenAPI document: v1 + * Contact: support@configcat.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + + +/** + * + * @export + * @interface ProxyProfileSecretModel + */ +export interface ProxyProfileSecretModel { + /** + * The secret token associated with the proxy profile. + * @type {string} + * @memberof ProxyProfileSecretModel + */ + 'secretToken': string; +} + diff --git a/model/proxy-profile-selection-rule.ts b/model/proxy-profile-selection-rule.ts new file mode 100644 index 0000000..a2c5fad --- /dev/null +++ b/model/proxy-profile-selection-rule.ts @@ -0,0 +1,71 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * ConfigCat Public Management API + * The purpose of this API is to access the ConfigCat platform programmatically. You can **Create**, **Read**, **Update** and **Delete** any entities like **Feature Flags, Configs, Environments** or **Products** within ConfigCat. **Base API URL**: https://api.configcat.com If you prefer the swagger documentation, you can find it here: [Swagger UI](https://api.configcat.com/swagger). The API is based on HTTP REST, uses resource-oriented URLs, status codes and supports JSON format. **Important:** Do not use this API for accessing and evaluating feature flag values. Use the [SDKs](https://configcat.com/docs/sdk-reference/overview) or the [ConfigCat Proxy](https://configcat.com/docs/advanced/proxy/proxy-overview/) instead. # OpenAPI Specification The complete specification is publicly available in the following formats: - [OpenAPI v3](https://api.configcat.com/docs/v1/swagger.json) - [Swagger v2](https://api.configcat.com/docs/v1/swagger.v2.json) You can use it to generate client libraries in various languages with [OpenAPI Generator](https://github.com/OpenAPITools/openapi-generator) or [Swagger Codegen](https://swagger.io/tools/swagger-codegen/) to interact with this API. # Authentication This API uses the [Basic HTTP Authentication Scheme](https://en.wikipedia.org/wiki/Basic_access_authentication). # Throttling and rate limits All the rate limited API calls are returning information about the current rate limit period in the following HTTP headers: | Header | Description | | :- | :- | | X-Rate-Limit-Remaining | The maximum number of requests remaining in the current rate limit period. | | X-Rate-Limit-Reset | The time when the current rate limit period resets. | When the rate limit is exceeded by a request, the API returns with a `HTTP 429 - Too many requests` status along with a `Retry-After` HTTP header. + * + * The version of the OpenAPI document: v1 + * Contact: support@configcat.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +// May contain unused imports in some cases +// @ts-ignore +import { SelectionRuleKind } from './selection-rule-kind'; + +/** + * + * @export + * @interface ProxyProfileSelectionRule + */ +export interface ProxyProfileSelectionRule { + /** + * + * @type {SelectionRuleKind} + * @memberof ProxyProfileSelectionRule + */ + 'kind': SelectionRuleKind; + /** + * Defines the filter for matching Products by their unique identifier. + * @type {string} + * @memberof ProxyProfileSelectionRule + */ + 'productIdFilter': string | null; + /** + * Defines the filter for matching Configs by their unique identifier. + * @type {string} + * @memberof ProxyProfileSelectionRule + */ + 'configIdFilter': string | null; + /** + * Defines the filter for matching Environments by their unique identifier. + * @type {string} + * @memberof ProxyProfileSelectionRule + */ + 'environmentIdFilter': string | null; + /** + * Specifies a filter to match Product names in the proxy profile selection rule. It accepts wildcards (*). + * @type {string} + * @memberof ProxyProfileSelectionRule + */ + 'productNameMatchFilter': string | null; + /** + * Specifies a filter to match Config names in the proxy profile selection rule. It accepts wildcards (*). + * @type {string} + * @memberof ProxyProfileSelectionRule + */ + 'configNameMatchFilter': string | null; + /** + * Specifies a filter to match Environment names in the proxy profile selection rule. It accepts wildcards (*). + * @type {string} + * @memberof ProxyProfileSelectionRule + */ + 'environmentNameMatchFilter': string | null; +} + + + diff --git a/model/selection-rule-kind.ts b/model/selection-rule-kind.ts new file mode 100644 index 0000000..399fc37 --- /dev/null +++ b/model/selection-rule-kind.ts @@ -0,0 +1,31 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * ConfigCat Public Management API + * The purpose of this API is to access the ConfigCat platform programmatically. You can **Create**, **Read**, **Update** and **Delete** any entities like **Feature Flags, Configs, Environments** or **Products** within ConfigCat. **Base API URL**: https://api.configcat.com If you prefer the swagger documentation, you can find it here: [Swagger UI](https://api.configcat.com/swagger). The API is based on HTTP REST, uses resource-oriented URLs, status codes and supports JSON format. **Important:** Do not use this API for accessing and evaluating feature flag values. Use the [SDKs](https://configcat.com/docs/sdk-reference/overview) or the [ConfigCat Proxy](https://configcat.com/docs/advanced/proxy/proxy-overview/) instead. # OpenAPI Specification The complete specification is publicly available in the following formats: - [OpenAPI v3](https://api.configcat.com/docs/v1/swagger.json) - [Swagger v2](https://api.configcat.com/docs/v1/swagger.v2.json) You can use it to generate client libraries in various languages with [OpenAPI Generator](https://github.com/OpenAPITools/openapi-generator) or [Swagger Codegen](https://swagger.io/tools/swagger-codegen/) to interact with this API. # Authentication This API uses the [Basic HTTP Authentication Scheme](https://en.wikipedia.org/wiki/Basic_access_authentication). # Throttling and rate limits All the rate limited API calls are returning information about the current rate limit period in the following HTTP headers: | Header | Description | | :- | :- | | X-Rate-Limit-Remaining | The maximum number of requests remaining in the current rate limit period. | | X-Rate-Limit-Reset | The time when the current rate limit period resets. | When the rate limit is exceeded by a request, the API returns with a `HTTP 429 - Too many requests` status along with a `Retry-After` HTTP header. + * + * The version of the OpenAPI document: v1 + * Contact: support@configcat.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + + +/** + * Defines the types of SDK selection rules that can be applied to proxy profiles. + * @export + * @enum {string} + */ + +export const SelectionRuleKind = { + Include: 'include', + Exclude: 'exclude' +} as const; + +export type SelectionRuleKind = typeof SelectionRuleKind[keyof typeof SelectionRuleKind]; + + + diff --git a/model/update-proxy-profile-selection-rule.ts b/model/update-proxy-profile-selection-rule.ts new file mode 100644 index 0000000..8f2d149 --- /dev/null +++ b/model/update-proxy-profile-selection-rule.ts @@ -0,0 +1,71 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * ConfigCat Public Management API + * The purpose of this API is to access the ConfigCat platform programmatically. You can **Create**, **Read**, **Update** and **Delete** any entities like **Feature Flags, Configs, Environments** or **Products** within ConfigCat. **Base API URL**: https://api.configcat.com If you prefer the swagger documentation, you can find it here: [Swagger UI](https://api.configcat.com/swagger). The API is based on HTTP REST, uses resource-oriented URLs, status codes and supports JSON format. **Important:** Do not use this API for accessing and evaluating feature flag values. Use the [SDKs](https://configcat.com/docs/sdk-reference/overview) or the [ConfigCat Proxy](https://configcat.com/docs/advanced/proxy/proxy-overview/) instead. # OpenAPI Specification The complete specification is publicly available in the following formats: - [OpenAPI v3](https://api.configcat.com/docs/v1/swagger.json) - [Swagger v2](https://api.configcat.com/docs/v1/swagger.v2.json) You can use it to generate client libraries in various languages with [OpenAPI Generator](https://github.com/OpenAPITools/openapi-generator) or [Swagger Codegen](https://swagger.io/tools/swagger-codegen/) to interact with this API. # Authentication This API uses the [Basic HTTP Authentication Scheme](https://en.wikipedia.org/wiki/Basic_access_authentication). # Throttling and rate limits All the rate limited API calls are returning information about the current rate limit period in the following HTTP headers: | Header | Description | | :- | :- | | X-Rate-Limit-Remaining | The maximum number of requests remaining in the current rate limit period. | | X-Rate-Limit-Reset | The time when the current rate limit period resets. | When the rate limit is exceeded by a request, the API returns with a `HTTP 429 - Too many requests` status along with a `Retry-After` HTTP header. + * + * The version of the OpenAPI document: v1 + * Contact: support@configcat.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +// May contain unused imports in some cases +// @ts-ignore +import { SelectionRuleKind } from './selection-rule-kind'; + +/** + * + * @export + * @interface UpdateProxyProfileSelectionRule + */ +export interface UpdateProxyProfileSelectionRule { + /** + * + * @type {SelectionRuleKind} + * @memberof UpdateProxyProfileSelectionRule + */ + 'kind'?: SelectionRuleKind; + /** + * Defines the filter for matching Products by their unique identifier. + * @type {string} + * @memberof UpdateProxyProfileSelectionRule + */ + 'productIdFilter'?: string | null; + /** + * Defines the filter for matching Configs by their unique identifier. + * @type {string} + * @memberof UpdateProxyProfileSelectionRule + */ + 'configIdFilter'?: string | null; + /** + * Defines the filter for matching Environments by their unique identifier. + * @type {string} + * @memberof UpdateProxyProfileSelectionRule + */ + 'environmentIdFilter'?: string | null; + /** + * Specifies a filter to match Product names in the proxy profile selection rule. It accepts wildcards (*). + * @type {string} + * @memberof UpdateProxyProfileSelectionRule + */ + 'productNameMatchFilter'?: string | null; + /** + * Specifies a filter to match Config names in the proxy profile selection rule. It accepts wildcards (*). + * @type {string} + * @memberof UpdateProxyProfileSelectionRule + */ + 'configNameMatchFilter'?: string | null; + /** + * Specifies a filter to match Environment names in the proxy profile selection rule. It accepts wildcards (*). + * @type {string} + * @memberof UpdateProxyProfileSelectionRule + */ + 'environmentNameMatchFilter'?: string | null; +} + + + diff --git a/model/webhook-notification.ts b/model/webhook-notification.ts new file mode 100644 index 0000000..c46d864 --- /dev/null +++ b/model/webhook-notification.ts @@ -0,0 +1,42 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * ConfigCat Public Management API + * The purpose of this API is to access the ConfigCat platform programmatically. You can **Create**, **Read**, **Update** and **Delete** any entities like **Feature Flags, Configs, Environments** or **Products** within ConfigCat. **Base API URL**: https://api.configcat.com If you prefer the swagger documentation, you can find it here: [Swagger UI](https://api.configcat.com/swagger). The API is based on HTTP REST, uses resource-oriented URLs, status codes and supports JSON format. **Important:** Do not use this API for accessing and evaluating feature flag values. Use the [SDKs](https://configcat.com/docs/sdk-reference/overview) or the [ConfigCat Proxy](https://configcat.com/docs/advanced/proxy/proxy-overview/) instead. # OpenAPI Specification The complete specification is publicly available in the following formats: - [OpenAPI v3](https://api.configcat.com/docs/v1/swagger.json) - [Swagger v2](https://api.configcat.com/docs/v1/swagger.v2.json) You can use it to generate client libraries in various languages with [OpenAPI Generator](https://github.com/OpenAPITools/openapi-generator) or [Swagger Codegen](https://swagger.io/tools/swagger-codegen/) to interact with this API. # Authentication This API uses the [Basic HTTP Authentication Scheme](https://en.wikipedia.org/wiki/Basic_access_authentication). # Throttling and rate limits All the rate limited API calls are returning information about the current rate limit period in the following HTTP headers: | Header | Description | | :- | :- | | X-Rate-Limit-Remaining | The maximum number of requests remaining in the current rate limit period. | | X-Rate-Limit-Reset | The time when the current rate limit period resets. | When the rate limit is exceeded by a request, the API returns with a `HTTP 429 - Too many requests` status along with a `Retry-After` HTTP header. + * + * The version of the OpenAPI document: v1 + * Contact: support@configcat.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + + +/** + * The webhook notification settings, including the proxy URL and signing keys. + * @export + * @interface WebhookNotification + */ +export interface WebhookNotification { + /** + * The webhook proxy URL for receiving config JSON change notifications. + * @type {string} + * @memberof WebhookNotification + */ + 'webhookProxyUrl': string; + /** + * The primary signing key used for verifying the authenticity of webhook requests. + * @type {string} + * @memberof WebhookNotification + */ + 'signingKey1': string; + /** + * The secondary signing key used for verifying the authenticity of webhook requests. + * @type {string} + * @memberof WebhookNotification + */ + 'signingKey2': string | null; +} + From 4042611b938468489dbe952c0b7e53321b8fe4d3 Mon Sep 17 00:00:00 2001 From: novalisdenahi Date: Fri, 14 Nov 2025 10:17:53 +0100 Subject: [PATCH 2/2] 3.1.1 --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 817ee31..951e0a4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "configcat-publicapi-node-client", - "version": "3.1.0", + "version": "3.1.1", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "configcat-publicapi-node-client", - "version": "3.1.0", + "version": "3.1.1", "dependencies": { "axios": "^1.6.7", "bluebird": "^3.5.0" diff --git a/package.json b/package.json index 240e77d..c4427d7 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "configcat-publicapi-node-client", - "version": "3.1.0", + "version": "3.1.1", "description": "NodeJS client for configcat-publicapi-node-client", "main": "dist/index.js", "types": "dist/index.d.ts",