UNPKG

@emergentmethods/asknews-typescript-sdk

Version:
895 lines (753 loc) 31.4 kB
/* tslint:disable */ /* eslint-disable */ /** * AskNews API * AskNews API [![status](https://status.asknews.app/api/badge/2/status?style=for-the-badge)](https://status.asknews.app/status/prod) * * The version of the OpenAPI document: 0.24.22 * Contact: contact@emergentmethods.ai * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import * as runtime from '../runtime'; import type { AbcAPIErrorModel100, AbcAPIErrorModel101, AbcAPIErrorModel102, AbcAPIErrorModel103, AbcAPIErrorModel104, AbcAPIErrorModel57, AbcAPIErrorModel58, AbcAPIErrorModel59, AbcAPIErrorModel60, AbcAPIErrorModel61, AbcAPIErrorModel62, AbcAPIErrorModel63, AbcAPIErrorModel64, AbcAPIErrorModel65, AbcAPIErrorModel66, AbcAPIErrorModel67, AbcAPIErrorModel68, AbcAPIErrorModel69, AbcAPIErrorModel70, AbcAPIErrorModel71, AbcAPIErrorModel72, AbcAPIErrorModel73, AbcAPIErrorModel74, AbcAPIErrorModel75, AbcAPIErrorModel76, AbcAPIErrorModel77, AbcAPIErrorModel78, AbcAPIErrorModel79, AbcAPIErrorModel80, AbcAPIErrorModel81, AbcAPIErrorModel82, AbcAPIErrorModel83, AbcAPIErrorModel84, AbcAPIErrorModel85, AbcAPIErrorModel86, AbcAPIErrorModel87, AbcAPIErrorModel88, AbcAPIErrorModel89, AbcAPIErrorModel90, AbcAPIErrorModel91, AbcAPIErrorModel92, AbcAPIErrorModel93, AbcAPIErrorModel94, AbcAPIErrorModel95, AbcAPIErrorModel96, AbcAPIErrorModel97, AbcAPIErrorModel98, AbcAPIErrorModel99, AsknewsApiErrorsAPIErrorModel, CountResponse, DomainHitsSurfaceResponse, DomainHitsSurfaceTimeWindowResponse, DomainQueriesResponse, HitShareResponse, PaginatedResponseReadDomainResponse, ReadDomainResponse, TopNArticlesByHitsResponse, TopNArticlesForDomainResponse, TopNArticlesTimeseriesResponse, TopNDomainsByHitsResponse, UpdateDomainRequest, ValidationErrorModel, } from '../models/index'; import { AbcAPIErrorModel100FromJSON, AbcAPIErrorModel100ToJSON, AbcAPIErrorModel101FromJSON, AbcAPIErrorModel101ToJSON, AbcAPIErrorModel102FromJSON, AbcAPIErrorModel102ToJSON, AbcAPIErrorModel103FromJSON, AbcAPIErrorModel103ToJSON, AbcAPIErrorModel104FromJSON, AbcAPIErrorModel104ToJSON, AbcAPIErrorModel57FromJSON, AbcAPIErrorModel57ToJSON, AbcAPIErrorModel58FromJSON, AbcAPIErrorModel58ToJSON, AbcAPIErrorModel59FromJSON, AbcAPIErrorModel59ToJSON, AbcAPIErrorModel60FromJSON, AbcAPIErrorModel60ToJSON, AbcAPIErrorModel61FromJSON, AbcAPIErrorModel61ToJSON, AbcAPIErrorModel62FromJSON, AbcAPIErrorModel62ToJSON, AbcAPIErrorModel63FromJSON, AbcAPIErrorModel63ToJSON, AbcAPIErrorModel64FromJSON, AbcAPIErrorModel64ToJSON, AbcAPIErrorModel65FromJSON, AbcAPIErrorModel65ToJSON, AbcAPIErrorModel66FromJSON, AbcAPIErrorModel66ToJSON, AbcAPIErrorModel67FromJSON, AbcAPIErrorModel67ToJSON, AbcAPIErrorModel68FromJSON, AbcAPIErrorModel68ToJSON, AbcAPIErrorModel69FromJSON, AbcAPIErrorModel69ToJSON, AbcAPIErrorModel70FromJSON, AbcAPIErrorModel70ToJSON, AbcAPIErrorModel71FromJSON, AbcAPIErrorModel71ToJSON, AbcAPIErrorModel72FromJSON, AbcAPIErrorModel72ToJSON, AbcAPIErrorModel73FromJSON, AbcAPIErrorModel73ToJSON, AbcAPIErrorModel74FromJSON, AbcAPIErrorModel74ToJSON, AbcAPIErrorModel75FromJSON, AbcAPIErrorModel75ToJSON, AbcAPIErrorModel76FromJSON, AbcAPIErrorModel76ToJSON, AbcAPIErrorModel77FromJSON, AbcAPIErrorModel77ToJSON, AbcAPIErrorModel78FromJSON, AbcAPIErrorModel78ToJSON, AbcAPIErrorModel79FromJSON, AbcAPIErrorModel79ToJSON, AbcAPIErrorModel80FromJSON, AbcAPIErrorModel80ToJSON, AbcAPIErrorModel81FromJSON, AbcAPIErrorModel81ToJSON, AbcAPIErrorModel82FromJSON, AbcAPIErrorModel82ToJSON, AbcAPIErrorModel83FromJSON, AbcAPIErrorModel83ToJSON, AbcAPIErrorModel84FromJSON, AbcAPIErrorModel84ToJSON, AbcAPIErrorModel85FromJSON, AbcAPIErrorModel85ToJSON, AbcAPIErrorModel86FromJSON, AbcAPIErrorModel86ToJSON, AbcAPIErrorModel87FromJSON, AbcAPIErrorModel87ToJSON, AbcAPIErrorModel88FromJSON, AbcAPIErrorModel88ToJSON, AbcAPIErrorModel89FromJSON, AbcAPIErrorModel89ToJSON, AbcAPIErrorModel90FromJSON, AbcAPIErrorModel90ToJSON, AbcAPIErrorModel91FromJSON, AbcAPIErrorModel91ToJSON, AbcAPIErrorModel92FromJSON, AbcAPIErrorModel92ToJSON, AbcAPIErrorModel93FromJSON, AbcAPIErrorModel93ToJSON, AbcAPIErrorModel94FromJSON, AbcAPIErrorModel94ToJSON, AbcAPIErrorModel95FromJSON, AbcAPIErrorModel95ToJSON, AbcAPIErrorModel96FromJSON, AbcAPIErrorModel96ToJSON, AbcAPIErrorModel97FromJSON, AbcAPIErrorModel97ToJSON, AbcAPIErrorModel98FromJSON, AbcAPIErrorModel98ToJSON, AbcAPIErrorModel99FromJSON, AbcAPIErrorModel99ToJSON, AsknewsApiErrorsAPIErrorModelFromJSON, AsknewsApiErrorsAPIErrorModelToJSON, CountResponseFromJSON, CountResponseToJSON, DomainHitsSurfaceResponseFromJSON, DomainHitsSurfaceResponseToJSON, DomainHitsSurfaceTimeWindowResponseFromJSON, DomainHitsSurfaceTimeWindowResponseToJSON, DomainQueriesResponseFromJSON, DomainQueriesResponseToJSON, HitShareResponseFromJSON, HitShareResponseToJSON, PaginatedResponseReadDomainResponseFromJSON, PaginatedResponseReadDomainResponseToJSON, ReadDomainResponseFromJSON, ReadDomainResponseToJSON, TopNArticlesByHitsResponseFromJSON, TopNArticlesByHitsResponseToJSON, TopNArticlesForDomainResponseFromJSON, TopNArticlesForDomainResponseToJSON, TopNArticlesTimeseriesResponseFromJSON, TopNArticlesTimeseriesResponseToJSON, TopNDomainsByHitsResponseFromJSON, TopNDomainsByHitsResponseToJSON, UpdateDomainRequestFromJSON, UpdateDomainRequestToJSON, ValidationErrorModelFromJSON, ValidationErrorModelToJSON, } from '../models/index'; export interface DomainHitShareRequest { domainNames: Array<string>; startDate?: number; endDate?: number; isPublisher?: boolean; } export interface FindDomainsRequest { page?: number; perPage?: number; names?: Array<string>; isTollbit?: boolean; publisher?: boolean; } export interface GetArticleHitsRequest { domainName: string; startDate?: number; endDate?: number; } export interface GetDomainRequest { name: string; } export interface GetDomainHitsSurfaceRequest { domainNames: Array<string>; year: number; month: number; } export interface GetDomainHitsSurfaceTimewindowRequest { domainNames: Array<string>; year: number; month: number; } export interface GetDomainQueriesRequest { domainNames: Array<string>; limit?: number; startDate?: number; endDate?: number; } export interface TopNArticlesByHitsRequest { limit?: number; startDate?: number; endDate?: number; domainNames?: Array<string>; } export interface TopNArticlesForDomainTimeseriesRequest { domainName: string; limit?: number; startDate?: number; endDate?: number; } export interface TopNArticlesForDomainsRequest { domainNames: Array<string>; limit?: number; startDate?: number; endDate?: number; } export interface TopNDomainsByHitsRequest { limit?: number; startDate?: number; endDate?: number; names?: Array<string>; } export interface UpdateDomainOperationRequest { name: string; updateDomainRequest: UpdateDomainRequest; } /** * */ export class DistributionApi extends runtime.BaseAPI { /** * Get the hit share for a list of domains in a time period. * Get the hit share for a list of domains in a time period */ async domainHitShareRaw(requestParameters: DomainHitShareRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<HitShareResponse> > { if (requestParameters['domainNames'] == null) { throw new runtime.RequiredError( 'domainNames', 'Required parameter "domainNames" was null or undefined when calling domainHitShare().' ); } const queryParameters: any = {}; if (requestParameters['domainNames'] != null) { queryParameters['domain_names'] = requestParameters['domainNames']; } if (requestParameters['startDate'] != null) { queryParameters['start_date'] = requestParameters['startDate']; } if (requestParameters['endDate'] != null) { queryParameters['end_date'] = requestParameters['endDate']; } if (requestParameters['isPublisher'] != null) { queryParameters['is_publisher'] = requestParameters['isPublisher']; } const headerParameters: runtime.HTTPHeaders = {}; const response = await this.request({ path: `/v1/distribution/stats/hit_share`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => HitShareResponseFromJSON(jsonValue)); } /** * Get the hit share for a list of domains in a time period. * Get the hit share for a list of domains in a time period */ async domainHitShare(requestParameters: DomainHitShareRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<HitShareResponse> { const response = await this.domainHitShareRaw(requestParameters, initOverrides); return await response.value(); } /** * Find domains with optional filters. * Find domains */ async findDomainsRaw(requestParameters: FindDomainsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<PaginatedResponseReadDomainResponse> > { const queryParameters: any = {}; if (requestParameters['page'] != null) { queryParameters['page'] = requestParameters['page']; } if (requestParameters['perPage'] != null) { queryParameters['per_page'] = requestParameters['perPage']; } if (requestParameters['names'] != null) { queryParameters['names'] = requestParameters['names']; } if (requestParameters['isTollbit'] != null) { queryParameters['is_tollbit'] = requestParameters['isTollbit']; } if (requestParameters['publisher'] != null) { queryParameters['publisher'] = requestParameters['publisher']; } const headerParameters: runtime.HTTPHeaders = {}; const response = await this.request({ path: `/v1/distribution/domains`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => PaginatedResponseReadDomainResponseFromJSON(jsonValue)); } /** * Find domains with optional filters. * Find domains */ async findDomains(requestParameters: FindDomainsRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<PaginatedResponseReadDomainResponse> { const response = await this.findDomainsRaw(requestParameters, initOverrides); return await response.value(); } /** * Get the number of hits for articles in a specific domain. * Get article hits */ async getArticleHitsRaw(requestParameters: GetArticleHitsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<CountResponse> > { if (requestParameters['domainName'] == null) { throw new runtime.RequiredError( 'domainName', 'Required parameter "domainName" was null or undefined when calling getArticleHits().' ); } const queryParameters: any = {}; if (requestParameters['domainName'] != null) { queryParameters['domain_name'] = requestParameters['domainName']; } if (requestParameters['startDate'] != null) { queryParameters['start_date'] = requestParameters['startDate']; } if (requestParameters['endDate'] != null) { queryParameters['end_date'] = requestParameters['endDate']; } const headerParameters: runtime.HTTPHeaders = {}; const response = await this.request({ path: `/v1/distribution/stats/count`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => CountResponseFromJSON(jsonValue)); } /** * Get the number of hits for articles in a specific domain. * Get article hits */ async getArticleHits(requestParameters: GetArticleHitsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<CountResponse> { const response = await this.getArticleHitsRaw(requestParameters, initOverrides); return await response.value(); } /** * Get a domain. * Get a domain by name */ async getDomainRaw(requestParameters: GetDomainRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<ReadDomainResponse> > { if (requestParameters['name'] == null) { throw new runtime.RequiredError( 'name', 'Required parameter "name" was null or undefined when calling getDomain().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; const response = await this.request({ path: `/v1/distribution/domains/{name}`.replace(`{${"name"}}`, encodeURIComponent(String(requestParameters['name']))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => ReadDomainResponseFromJSON(jsonValue)); } /** * Get a domain. * Get a domain by name */ async getDomain(requestParameters: GetDomainRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<ReadDomainResponse> { const response = await this.getDomainRaw(requestParameters, initOverrides); return await response.value(); } /** * Get total hits and surfaced articles for domains. * Get total hits and surfaced articles for domains */ async getDomainHitsSurfaceRaw(requestParameters: GetDomainHitsSurfaceRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<DomainHitsSurfaceResponse> > { if (requestParameters['domainNames'] == null) { throw new runtime.RequiredError( 'domainNames', 'Required parameter "domainNames" was null or undefined when calling getDomainHitsSurface().' ); } if (requestParameters['year'] == null) { throw new runtime.RequiredError( 'year', 'Required parameter "year" was null or undefined when calling getDomainHitsSurface().' ); } if (requestParameters['month'] == null) { throw new runtime.RequiredError( 'month', 'Required parameter "month" was null or undefined when calling getDomainHitsSurface().' ); } const queryParameters: any = {}; if (requestParameters['domainNames'] != null) { queryParameters['domain_names'] = requestParameters['domainNames']; } if (requestParameters['year'] != null) { queryParameters['year'] = requestParameters['year']; } if (requestParameters['month'] != null) { queryParameters['month'] = requestParameters['month']; } const headerParameters: runtime.HTTPHeaders = {}; const response = await this.request({ path: `/v1/distribution/articles/domain_hits_surface`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => DomainHitsSurfaceResponseFromJSON(jsonValue)); } /** * Get total hits and surfaced articles for domains. * Get total hits and surfaced articles for domains */ async getDomainHitsSurface(requestParameters: GetDomainHitsSurfaceRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<DomainHitsSurfaceResponse> { const response = await this.getDomainHitsSurfaceRaw(requestParameters, initOverrides); return await response.value(); } /** * Get hits and surfaced articles per day for domains. * Get hits and surfaced articles per day for domains */ async getDomainHitsSurfaceTimewindowRaw(requestParameters: GetDomainHitsSurfaceTimewindowRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<DomainHitsSurfaceTimeWindowResponse> > { if (requestParameters['domainNames'] == null) { throw new runtime.RequiredError( 'domainNames', 'Required parameter "domainNames" was null or undefined when calling getDomainHitsSurfaceTimewindow().' ); } if (requestParameters['year'] == null) { throw new runtime.RequiredError( 'year', 'Required parameter "year" was null or undefined when calling getDomainHitsSurfaceTimewindow().' ); } if (requestParameters['month'] == null) { throw new runtime.RequiredError( 'month', 'Required parameter "month" was null or undefined when calling getDomainHitsSurfaceTimewindow().' ); } const queryParameters: any = {}; if (requestParameters['domainNames'] != null) { queryParameters['domain_names'] = requestParameters['domainNames']; } if (requestParameters['year'] != null) { queryParameters['year'] = requestParameters['year']; } if (requestParameters['month'] != null) { queryParameters['month'] = requestParameters['month']; } const headerParameters: runtime.HTTPHeaders = {}; const response = await this.request({ path: `/v1/distribution/articles/domain_hits_surface_timewindow`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => DomainHitsSurfaceTimeWindowResponseFromJSON(jsonValue)); } /** * Get hits and surfaced articles per day for domains. * Get hits and surfaced articles per day for domains */ async getDomainHitsSurfaceTimewindow(requestParameters: GetDomainHitsSurfaceTimewindowRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<DomainHitsSurfaceTimeWindowResponse> { const response = await this.getDomainHitsSurfaceTimewindowRaw(requestParameters, initOverrides); return await response.value(); } /** * Get article hits. * Get queries that surfaced domain articles */ async getDomainQueriesRaw(requestParameters: GetDomainQueriesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<DomainQueriesResponse> > { if (requestParameters['domainNames'] == null) { throw new runtime.RequiredError( 'domainNames', 'Required parameter "domainNames" was null or undefined when calling getDomainQueries().' ); } const queryParameters: any = {}; if (requestParameters['domainNames'] != null) { queryParameters['domain_names'] = requestParameters['domainNames']; } if (requestParameters['limit'] != null) { queryParameters['limit'] = requestParameters['limit']; } if (requestParameters['startDate'] != null) { queryParameters['start_date'] = requestParameters['startDate']; } if (requestParameters['endDate'] != null) { queryParameters['end_date'] = requestParameters['endDate']; } const headerParameters: runtime.HTTPHeaders = {}; const response = await this.request({ path: `/v1/distribution/articles/domain_queries`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => DomainQueriesResponseFromJSON(jsonValue)); } /** * Get article hits. * Get queries that surfaced domain articles */ async getDomainQueries(requestParameters: GetDomainQueriesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<DomainQueriesResponse> { const response = await this.getDomainQueriesRaw(requestParameters, initOverrides); return await response.value(); } /** * Get the top N articles by hits. * Get the top N articles by hits */ async topNArticlesByHitsRaw(requestParameters: TopNArticlesByHitsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<TopNArticlesByHitsResponse> > { const queryParameters: any = {}; if (requestParameters['limit'] != null) { queryParameters['limit'] = requestParameters['limit']; } if (requestParameters['startDate'] != null) { queryParameters['start_date'] = requestParameters['startDate']; } if (requestParameters['endDate'] != null) { queryParameters['end_date'] = requestParameters['endDate']; } if (requestParameters['domainNames'] != null) { queryParameters['domain_names'] = requestParameters['domainNames']; } const headerParameters: runtime.HTTPHeaders = {}; const response = await this.request({ path: `/v1/distribution/articles/top_n`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => TopNArticlesByHitsResponseFromJSON(jsonValue)); } /** * Get the top N articles by hits. * Get the top N articles by hits */ async topNArticlesByHits(requestParameters: TopNArticlesByHitsRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<TopNArticlesByHitsResponse> { const response = await this.topNArticlesByHitsRaw(requestParameters, initOverrides); return await response.value(); } /** * Get the top N domain articles by hits with daily breakdown. * Get the top N articles by hits for domain with daily breakdown */ async topNArticlesForDomainTimeseriesRaw(requestParameters: TopNArticlesForDomainTimeseriesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<TopNArticlesTimeseriesResponse> > { if (requestParameters['domainName'] == null) { throw new runtime.RequiredError( 'domainName', 'Required parameter "domainName" was null or undefined when calling topNArticlesForDomainTimeseries().' ); } const queryParameters: any = {}; if (requestParameters['domainName'] != null) { queryParameters['domain_name'] = requestParameters['domainName']; } if (requestParameters['limit'] != null) { queryParameters['limit'] = requestParameters['limit']; } if (requestParameters['startDate'] != null) { queryParameters['start_date'] = requestParameters['startDate']; } if (requestParameters['endDate'] != null) { queryParameters['end_date'] = requestParameters['endDate']; } const headerParameters: runtime.HTTPHeaders = {}; const response = await this.request({ path: `/v1/distribution/articles/top_n_for_domain_timeseries`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => TopNArticlesTimeseriesResponseFromJSON(jsonValue)); } /** * Get the top N domain articles by hits with daily breakdown. * Get the top N articles by hits for domain with daily breakdown */ async topNArticlesForDomainTimeseries(requestParameters: TopNArticlesForDomainTimeseriesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<TopNArticlesTimeseriesResponse> { const response = await this.topNArticlesForDomainTimeseriesRaw(requestParameters, initOverrides); return await response.value(); } /** * Get the top N domain articles by hits. * Get the top N articles by hits for domains */ async topNArticlesForDomainsRaw(requestParameters: TopNArticlesForDomainsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<TopNArticlesForDomainResponse> > { if (requestParameters['domainNames'] == null) { throw new runtime.RequiredError( 'domainNames', 'Required parameter "domainNames" was null or undefined when calling topNArticlesForDomains().' ); } const queryParameters: any = {}; if (requestParameters['domainNames'] != null) { queryParameters['domain_names'] = requestParameters['domainNames']; } if (requestParameters['limit'] != null) { queryParameters['limit'] = requestParameters['limit']; } if (requestParameters['startDate'] != null) { queryParameters['start_date'] = requestParameters['startDate']; } if (requestParameters['endDate'] != null) { queryParameters['end_date'] = requestParameters['endDate']; } const headerParameters: runtime.HTTPHeaders = {}; const response = await this.request({ path: `/v1/distribution/articles/top_n_for_domains`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => TopNArticlesForDomainResponseFromJSON(jsonValue)); } /** * Get the top N domain articles by hits. * Get the top N articles by hits for domains */ async topNArticlesForDomains(requestParameters: TopNArticlesForDomainsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<TopNArticlesForDomainResponse> { const response = await this.topNArticlesForDomainsRaw(requestParameters, initOverrides); return await response.value(); } /** * Get the top N domains by hits. * Get the top N domains by hits */ async topNDomainsByHitsRaw(requestParameters: TopNDomainsByHitsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<TopNDomainsByHitsResponse> > { const queryParameters: any = {}; if (requestParameters['limit'] != null) { queryParameters['limit'] = requestParameters['limit']; } if (requestParameters['startDate'] != null) { queryParameters['start_date'] = requestParameters['startDate']; } if (requestParameters['endDate'] != null) { queryParameters['end_date'] = requestParameters['endDate']; } if (requestParameters['names'] != null) { queryParameters['names'] = requestParameters['names']; } const headerParameters: runtime.HTTPHeaders = {}; const response = await this.request({ path: `/v1/distribution/domains/top_n`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => TopNDomainsByHitsResponseFromJSON(jsonValue)); } /** * Get the top N domains by hits. * Get the top N domains by hits */ async topNDomainsByHits(requestParameters: TopNDomainsByHitsRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<TopNDomainsByHitsResponse> { const response = await this.topNDomainsByHitsRaw(requestParameters, initOverrides); return await response.value(); } /** * Update an existing domain. * Update an existing domain */ async updateDomainRaw(requestParameters: UpdateDomainOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<ReadDomainResponse> | runtime.StreamApiResponse> { if (requestParameters['name'] == null) { throw new runtime.RequiredError( 'name', 'Required parameter "name" was null or undefined when calling updateDomain().' ); } if (requestParameters['updateDomainRequest'] == null) { throw new runtime.RequiredError( 'updateDomainRequest', 'Required parameter "updateDomainRequest" was null or undefined when calling updateDomain().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; const response = await this.request({ path: `/v1/distribution/domains/{name}`.replace(`{${"name"}}`, encodeURIComponent(String(requestParameters['name']))), method: 'PUT', headers: headerParameters, query: queryParameters, body: UpdateDomainRequestToJSON(requestParameters['updateDomainRequest']), }, initOverrides); if ('updateDomainRequest' in requestParameters && requestParameters['updateDomainRequest'] != null && 'stream' in requestParameters['updateDomainRequest'] && requestParameters['updateDomainRequest']['stream'] === true) { return new runtime.StreamApiResponse(response); } return new runtime.JSONApiResponse(response, (jsonValue) => ReadDomainResponseFromJSON(jsonValue)); } /** * Update an existing domain. * Update an existing domain */ async updateDomain(requestParameters: UpdateDomainOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<ReadDomainResponse | ReadableStream<any>> { const response = await this.updateDomainRaw(requestParameters, initOverrides); return await response.value(); } }