aboutsummaryrefslogtreecommitdiff
path: root/src/api/apis/leaderboard-api.ts
diff options
context:
space:
mode:
authorMax Nanis2025-05-28 04:41:37 +0100
committerMax Nanis2025-05-28 04:41:37 +0100
commit8caa77413ea372e5cbd2980a9922d701af359c04 (patch)
tree9341e2f70fab6b2678fdff53c002954ef69c7b3e /src/api/apis/leaderboard-api.ts
downloadpanel-ui-8caa77413ea372e5cbd2980a9922d701af359c04.tar.gz
panel-ui-8caa77413ea372e5cbd2980a9922d701af359c04.zip
initial commit
Diffstat (limited to 'src/api/apis/leaderboard-api.ts')
-rw-r--r--src/api/apis/leaderboard-api.ts301
1 files changed, 301 insertions, 0 deletions
diff --git a/src/api/apis/leaderboard-api.ts b/src/api/apis/leaderboard-api.ts
new file mode 100644
index 0000000..26e8c95
--- /dev/null
+++ b/src/api/apis/leaderboard-api.ts
@@ -0,0 +1,301 @@
+/* tslint:disable */
+/* eslint-disable */
+/**
+ * General Research Full Service Brokerage API
+ * No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen)
+ *
+ * OpenAPI spec version: 1.1.0
+ *
+ *
+ * NOTE: This class is auto generated by the swagger code generator program.
+ * https://github.com/swagger-api/swagger-codegen.git
+ * Do not edit the class manually.
+ */
+
+import globalAxios, { AxiosResponse, AxiosInstance, AxiosRequestConfig } from 'axios';
+import { Configuration } from '../configuration';
+// Some imports not used depending on template conditions
+// @ts-ignore
+import { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from '../base';
+import { HTTPValidationError } from '../models';
+import { LeaderboardResponse } from '../models';
+import { LeaderboardWinnerResponse } from '../models';
+/**
+ * LeaderboardApi - axios parameter creator
+ * @export
+ */
+export const LeaderboardApiAxiosParamCreator = function (configuration?: Configuration) {
+ return {
+ /**
+ * Get the Winners of leaderboard contests
+ * @summary Leaderboard Winners
+ * @param {any} productId The Brokerage Product ID provided by GRL.
+ * @param {any} boardCode The type of leaderboard. What the \"values\" represent. Allowed values: - __complete_count__ *(COMPLETE_COUNT)*: Number of Completes - __largest_user_payout__ *(LARGEST_PAYOUT)*: Largest Single Payout - __sum_user_payout__ *(SUM_PAYOUTS)*: (Sum of) Total Payouts
+ * @param {any} freq The time period range for the leaderboard. Allowed values: - __daily__ *(DAILY)*: UTC midnight to UTC midnight - __weekly__ *(WEEKLY)*: Sunday Midnight to Sunday Midnight UTC - __monthly__ *(MONTHLY)*: Jan 1 00:00:00
+ * @param {any} countryIso Respondent's country code (ISO 3166-1 alpha-2, lowercase)
+ * @param {*} [options] Override http request option.
+ * @throws {RequiredError}
+ */
+ leaderboardWinnersProductIdLeaderboardTimespanBoardCodeWinnersGet: async (productId: any, boardCode: any, freq: any, countryIso: any, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
+ // verify required parameter 'productId' is not null or undefined
+ if (productId === null || productId === undefined) {
+ throw new RequiredError('productId','Required parameter productId was null or undefined when calling leaderboardWinnersProductIdLeaderboardTimespanBoardCodeWinnersGet.');
+ }
+ // verify required parameter 'boardCode' is not null or undefined
+ if (boardCode === null || boardCode === undefined) {
+ throw new RequiredError('boardCode','Required parameter boardCode was null or undefined when calling leaderboardWinnersProductIdLeaderboardTimespanBoardCodeWinnersGet.');
+ }
+ // verify required parameter 'freq' is not null or undefined
+ if (freq === null || freq === undefined) {
+ throw new RequiredError('freq','Required parameter freq was null or undefined when calling leaderboardWinnersProductIdLeaderboardTimespanBoardCodeWinnersGet.');
+ }
+ // verify required parameter 'countryIso' is not null or undefined
+ if (countryIso === null || countryIso === undefined) {
+ throw new RequiredError('countryIso','Required parameter countryIso was null or undefined when calling leaderboardWinnersProductIdLeaderboardTimespanBoardCodeWinnersGet.');
+ }
+ const localVarPath = `/{product_id}/leaderboard/timespan/{board_code}/winners/`
+ .replace(`{${"product_id"}}`, encodeURIComponent(String(productId)))
+ .replace(`{${"board_code"}}`, encodeURIComponent(String(boardCode)));
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
+ const localVarUrlObj = new URL(localVarPath, 'https://example.com');
+ let baseOptions;
+ if (configuration) {
+ baseOptions = configuration.baseOptions;
+ }
+ const localVarRequestOptions :AxiosRequestConfig = { method: 'GET', ...baseOptions, ...options};
+ const localVarHeaderParameter = {} as any;
+ const localVarQueryParameter = {} as any;
+
+ if (freq !== undefined) {
+ localVarQueryParameter['freq'] = freq;
+ }
+
+ if (countryIso !== undefined) {
+ localVarQueryParameter['country_iso'] = countryIso;
+ }
+
+ const query = new URLSearchParams(localVarUrlObj.search);
+ for (const key in localVarQueryParameter) {
+ query.set(key, localVarQueryParameter[key]);
+ }
+ for (const key in options.params) {
+ query.set(key, options.params[key]);
+ }
+ localVarUrlObj.search = (new URLSearchParams(query)).toString();
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
+
+ return {
+ url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,
+ options: localVarRequestOptions,
+ };
+ },
+ /**
+ *
+ * @summary Timespan Leaderboard
+ * @param {any} productId The Brokerage Product ID provided by GRL.
+ * @param {any} boardCode The type of leaderboard. What the \&quot;values\&quot; represent. Allowed values: - __complete_count__ *(COMPLETE_COUNT)*: Number of Completes - __largest_user_payout__ *(LARGEST_PAYOUT)*: Largest Single Payout - __sum_user_payout__ *(SUM_PAYOUTS)*: (Sum of) Total Payouts
+ * @param {any} freq The time period range for the leaderboard. Allowed values: - __daily__ *(DAILY)*: UTC midnight to UTC midnight - __weekly__ *(WEEKLY)*: Sunday Midnight to Sunday Midnight UTC - __monthly__ *(MONTHLY)*: Jan 1 00:00:00
+ * @param {any} [countryIso] Respondent&#x27;s country code (ISO 3166-1 alpha-2, lowercase)
+ * @param {any} [bpuid] Brokerage Product User ID. If passed, then the country is not required; the country is determined by this user&#x27;s latest IP.
+ * @param {any} [timestamp] The start timestamp for the requested leaderboard. If NULL, uses the current time period.
+ * @param {any} [scope] If scope is \&quot;user\&quot;, then &#x60;bp_user_id&#x60; must be set. Results in filtering rows to include only this user&#x27;s row, plus rows above and below in rank (up to &#x60;limit&#x60; rows). If \&quot;global\&quot;, then the top &#x60;limit&#x60; rows are returned.
+ * @param {any} [limit] Max number of rows to return
+ * @param {*} [options] Override http request option.
+ * @throws {RequiredError}
+ */
+ timespanLeaderboardProductIdLeaderboardTimespanBoardCodeGet: async (productId: any, boardCode: any, freq: any, countryIso?: any, bpuid?: any, timestamp?: any, scope?: any, limit?: any, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
+ // verify required parameter 'productId' is not null or undefined
+ if (productId === null || productId === undefined) {
+ throw new RequiredError('productId','Required parameter productId was null or undefined when calling timespanLeaderboardProductIdLeaderboardTimespanBoardCodeGet.');
+ }
+ // verify required parameter 'boardCode' is not null or undefined
+ if (boardCode === null || boardCode === undefined) {
+ throw new RequiredError('boardCode','Required parameter boardCode was null or undefined when calling timespanLeaderboardProductIdLeaderboardTimespanBoardCodeGet.');
+ }
+ // verify required parameter 'freq' is not null or undefined
+ if (freq === null || freq === undefined) {
+ throw new RequiredError('freq','Required parameter freq was null or undefined when calling timespanLeaderboardProductIdLeaderboardTimespanBoardCodeGet.');
+ }
+ const localVarPath = `/{product_id}/leaderboard/timespan/{board_code}/`
+ .replace(`{${"product_id"}}`, encodeURIComponent(String(productId)))
+ .replace(`{${"board_code"}}`, encodeURIComponent(String(boardCode)));
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
+ const localVarUrlObj = new URL(localVarPath, 'https://example.com');
+ let baseOptions;
+ if (configuration) {
+ baseOptions = configuration.baseOptions;
+ }
+ const localVarRequestOptions :AxiosRequestConfig = { method: 'GET', ...baseOptions, ...options};
+ const localVarHeaderParameter = {} as any;
+ const localVarQueryParameter = {} as any;
+
+ if (freq !== undefined) {
+ localVarQueryParameter['freq'] = freq;
+ }
+
+ if (countryIso !== undefined) {
+ localVarQueryParameter['country_iso'] = countryIso;
+ }
+
+ if (bpuid !== undefined) {
+ localVarQueryParameter['bpuid'] = bpuid;
+ }
+
+ if (timestamp !== undefined) {
+ localVarQueryParameter['timestamp'] = timestamp;
+ }
+
+ if (scope !== undefined) {
+ localVarQueryParameter['scope'] = scope;
+ }
+
+ if (limit !== undefined) {
+ localVarQueryParameter['limit'] = limit;
+ }
+
+ const query = new URLSearchParams(localVarUrlObj.search);
+ for (const key in localVarQueryParameter) {
+ query.set(key, localVarQueryParameter[key]);
+ }
+ for (const key in options.params) {
+ query.set(key, options.params[key]);
+ }
+ localVarUrlObj.search = (new URLSearchParams(query)).toString();
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
+
+ return {
+ url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,
+ options: localVarRequestOptions,
+ };
+ },
+ }
+};
+
+/**
+ * LeaderboardApi - functional programming interface
+ * @export
+ */
+export const LeaderboardApiFp = function(configuration?: Configuration) {
+ return {
+ /**
+ * Get the Winners of leaderboard contests
+ * @summary Leaderboard Winners
+ * @param {any} productId The Brokerage Product ID provided by GRL.
+ * @param {any} boardCode The type of leaderboard. What the \&quot;values\&quot; represent. Allowed values: - __complete_count__ *(COMPLETE_COUNT)*: Number of Completes - __largest_user_payout__ *(LARGEST_PAYOUT)*: Largest Single Payout - __sum_user_payout__ *(SUM_PAYOUTS)*: (Sum of) Total Payouts
+ * @param {any} freq The time period range for the leaderboard. Allowed values: - __daily__ *(DAILY)*: UTC midnight to UTC midnight - __weekly__ *(WEEKLY)*: Sunday Midnight to Sunday Midnight UTC - __monthly__ *(MONTHLY)*: Jan 1 00:00:00
+ * @param {any} countryIso Respondent&#x27;s country code (ISO 3166-1 alpha-2, lowercase)
+ * @param {*} [options] Override http request option.
+ * @throws {RequiredError}
+ */
+ async leaderboardWinnersProductIdLeaderboardTimespanBoardCodeWinnersGet(productId: any, boardCode: any, freq: any, countryIso: any, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<LeaderboardWinnerResponse>>> {
+ const localVarAxiosArgs = await LeaderboardApiAxiosParamCreator(configuration).leaderboardWinnersProductIdLeaderboardTimespanBoardCodeWinnersGet(productId, boardCode, freq, countryIso, options);
+ return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {
+ const axiosRequestArgs :AxiosRequestConfig = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};
+ return axios.request(axiosRequestArgs);
+ };
+ },
+ /**
+ *
+ * @summary Timespan Leaderboard
+ * @param {any} productId The Brokerage Product ID provided by GRL.
+ * @param {any} boardCode The type of leaderboard. What the \&quot;values\&quot; represent. Allowed values: - __complete_count__ *(COMPLETE_COUNT)*: Number of Completes - __largest_user_payout__ *(LARGEST_PAYOUT)*: Largest Single Payout - __sum_user_payout__ *(SUM_PAYOUTS)*: (Sum of) Total Payouts
+ * @param {any} freq The time period range for the leaderboard. Allowed values: - __daily__ *(DAILY)*: UTC midnight to UTC midnight - __weekly__ *(WEEKLY)*: Sunday Midnight to Sunday Midnight UTC - __monthly__ *(MONTHLY)*: Jan 1 00:00:00
+ * @param {any} [countryIso] Respondent&#x27;s country code (ISO 3166-1 alpha-2, lowercase)
+ * @param {any} [bpuid] Brokerage Product User ID. If passed, then the country is not required; the country is determined by this user&#x27;s latest IP.
+ * @param {any} [timestamp] The start timestamp for the requested leaderboard. If NULL, uses the current time period.
+ * @param {any} [scope] If scope is \&quot;user\&quot;, then &#x60;bp_user_id&#x60; must be set. Results in filtering rows to include only this user&#x27;s row, plus rows above and below in rank (up to &#x60;limit&#x60; rows). If \&quot;global\&quot;, then the top &#x60;limit&#x60; rows are returned.
+ * @param {any} [limit] Max number of rows to return
+ * @param {*} [options] Override http request option.
+ * @throws {RequiredError}
+ */
+ async timespanLeaderboardProductIdLeaderboardTimespanBoardCodeGet(productId: any, boardCode: any, freq: any, countryIso?: any, bpuid?: any, timestamp?: any, scope?: any, limit?: any, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<LeaderboardResponse>>> {
+ const localVarAxiosArgs = await LeaderboardApiAxiosParamCreator(configuration).timespanLeaderboardProductIdLeaderboardTimespanBoardCodeGet(productId, boardCode, freq, countryIso, bpuid, timestamp, scope, limit, options);
+ return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {
+ const axiosRequestArgs :AxiosRequestConfig = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};
+ return axios.request(axiosRequestArgs);
+ };
+ },
+ }
+};
+
+/**
+ * LeaderboardApi - factory interface
+ * @export
+ */
+export const LeaderboardApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {
+ return {
+ /**
+ * Get the Winners of leaderboard contests
+ * @summary Leaderboard Winners
+ * @param {any} productId The Brokerage Product ID provided by GRL.
+ * @param {any} boardCode The type of leaderboard. What the \&quot;values\&quot; represent. Allowed values: - __complete_count__ *(COMPLETE_COUNT)*: Number of Completes - __largest_user_payout__ *(LARGEST_PAYOUT)*: Largest Single Payout - __sum_user_payout__ *(SUM_PAYOUTS)*: (Sum of) Total Payouts
+ * @param {any} freq The time period range for the leaderboard. Allowed values: - __daily__ *(DAILY)*: UTC midnight to UTC midnight - __weekly__ *(WEEKLY)*: Sunday Midnight to Sunday Midnight UTC - __monthly__ *(MONTHLY)*: Jan 1 00:00:00
+ * @param {any} countryIso Respondent&#x27;s country code (ISO 3166-1 alpha-2, lowercase)
+ * @param {*} [options] Override http request option.
+ * @throws {RequiredError}
+ */
+ async leaderboardWinnersProductIdLeaderboardTimespanBoardCodeWinnersGet(productId: any, boardCode: any, freq: any, countryIso: any, options?: AxiosRequestConfig): Promise<AxiosResponse<LeaderboardWinnerResponse>> {
+ return LeaderboardApiFp(configuration).leaderboardWinnersProductIdLeaderboardTimespanBoardCodeWinnersGet(productId, boardCode, freq, countryIso, options).then((request) => request(axios, basePath));
+ },
+ /**
+ *
+ * @summary Timespan Leaderboard
+ * @param {any} productId The Brokerage Product ID provided by GRL.
+ * @param {any} boardCode The type of leaderboard. What the \&quot;values\&quot; represent. Allowed values: - __complete_count__ *(COMPLETE_COUNT)*: Number of Completes - __largest_user_payout__ *(LARGEST_PAYOUT)*: Largest Single Payout - __sum_user_payout__ *(SUM_PAYOUTS)*: (Sum of) Total Payouts
+ * @param {any} freq The time period range for the leaderboard. Allowed values: - __daily__ *(DAILY)*: UTC midnight to UTC midnight - __weekly__ *(WEEKLY)*: Sunday Midnight to Sunday Midnight UTC - __monthly__ *(MONTHLY)*: Jan 1 00:00:00
+ * @param {any} [countryIso] Respondent&#x27;s country code (ISO 3166-1 alpha-2, lowercase)
+ * @param {any} [bpuid] Brokerage Product User ID. If passed, then the country is not required; the country is determined by this user&#x27;s latest IP.
+ * @param {any} [timestamp] The start timestamp for the requested leaderboard. If NULL, uses the current time period.
+ * @param {any} [scope] If scope is \&quot;user\&quot;, then &#x60;bp_user_id&#x60; must be set. Results in filtering rows to include only this user&#x27;s row, plus rows above and below in rank (up to &#x60;limit&#x60; rows). If \&quot;global\&quot;, then the top &#x60;limit&#x60; rows are returned.
+ * @param {any} [limit] Max number of rows to return
+ * @param {*} [options] Override http request option.
+ * @throws {RequiredError}
+ */
+ async timespanLeaderboardProductIdLeaderboardTimespanBoardCodeGet(productId: any, boardCode: any, freq: any, countryIso?: any, bpuid?: any, timestamp?: any, scope?: any, limit?: any, options?: AxiosRequestConfig): Promise<AxiosResponse<LeaderboardResponse>> {
+ return LeaderboardApiFp(configuration).timespanLeaderboardProductIdLeaderboardTimespanBoardCodeGet(productId, boardCode, freq, countryIso, bpuid, timestamp, scope, limit, options).then((request) => request(axios, basePath));
+ },
+ };
+};
+
+/**
+ * LeaderboardApi - object-oriented interface
+ * @export
+ * @class LeaderboardApi
+ * @extends {BaseAPI}
+ */
+export class LeaderboardApi extends BaseAPI {
+ /**
+ * Get the Winners of leaderboard contests
+ * @summary Leaderboard Winners
+ * @param {any} productId The Brokerage Product ID provided by GRL.
+ * @param {any} boardCode The type of leaderboard. What the \&quot;values\&quot; represent. Allowed values: - __complete_count__ *(COMPLETE_COUNT)*: Number of Completes - __largest_user_payout__ *(LARGEST_PAYOUT)*: Largest Single Payout - __sum_user_payout__ *(SUM_PAYOUTS)*: (Sum of) Total Payouts
+ * @param {any} freq The time period range for the leaderboard. Allowed values: - __daily__ *(DAILY)*: UTC midnight to UTC midnight - __weekly__ *(WEEKLY)*: Sunday Midnight to Sunday Midnight UTC - __monthly__ *(MONTHLY)*: Jan 1 00:00:00
+ * @param {any} countryIso Respondent&#x27;s country code (ISO 3166-1 alpha-2, lowercase)
+ * @param {*} [options] Override http request option.
+ * @throws {RequiredError}
+ * @memberof LeaderboardApi
+ */
+ public async leaderboardWinnersProductIdLeaderboardTimespanBoardCodeWinnersGet(productId: any, boardCode: any, freq: any, countryIso: any, options?: AxiosRequestConfig) : Promise<AxiosResponse<LeaderboardWinnerResponse>> {
+ return LeaderboardApiFp(this.configuration).leaderboardWinnersProductIdLeaderboardTimespanBoardCodeWinnersGet(productId, boardCode, freq, countryIso, options).then((request) => request(this.axios, this.basePath));
+ }
+ /**
+ *
+ * @summary Timespan Leaderboard
+ * @param {any} productId The Brokerage Product ID provided by GRL.
+ * @param {any} boardCode The type of leaderboard. What the \&quot;values\&quot; represent. Allowed values: - __complete_count__ *(COMPLETE_COUNT)*: Number of Completes - __largest_user_payout__ *(LARGEST_PAYOUT)*: Largest Single Payout - __sum_user_payout__ *(SUM_PAYOUTS)*: (Sum of) Total Payouts
+ * @param {any} freq The time period range for the leaderboard. Allowed values: - __daily__ *(DAILY)*: UTC midnight to UTC midnight - __weekly__ *(WEEKLY)*: Sunday Midnight to Sunday Midnight UTC - __monthly__ *(MONTHLY)*: Jan 1 00:00:00
+ * @param {any} [countryIso] Respondent&#x27;s country code (ISO 3166-1 alpha-2, lowercase)
+ * @param {any} [bpuid] Brokerage Product User ID. If passed, then the country is not required; the country is determined by this user&#x27;s latest IP.
+ * @param {any} [timestamp] The start timestamp for the requested leaderboard. If NULL, uses the current time period.
+ * @param {any} [scope] If scope is \&quot;user\&quot;, then &#x60;bp_user_id&#x60; must be set. Results in filtering rows to include only this user&#x27;s row, plus rows above and below in rank (up to &#x60;limit&#x60; rows). If \&quot;global\&quot;, then the top &#x60;limit&#x60; rows are returned.
+ * @param {any} [limit] Max number of rows to return
+ * @param {*} [options] Override http request option.
+ * @throws {RequiredError}
+ * @memberof LeaderboardApi
+ */
+ public async timespanLeaderboardProductIdLeaderboardTimespanBoardCodeGet(productId: any, boardCode: any, freq: any, countryIso?: any, bpuid?: any, timestamp?: any, scope?: any, limit?: any, options?: AxiosRequestConfig) : Promise<AxiosResponse<LeaderboardResponse>> {
+ return LeaderboardApiFp(this.configuration).timespanLeaderboardProductIdLeaderboardTimespanBoardCodeGet(productId, boardCode, freq, countryIso, bpuid, timestamp, scope, limit, options).then((request) => request(this.axios, this.basePath));
+ }
+}