@emergentmethods/asknews-typescript-sdk
Version:
Typescript SDK for AskNews API
895 lines (753 loc) • 31.4 kB
text/typescript
/* tslint:disable */
/* eslint-disable */
/**
* AskNews API
* AskNews API [](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();
}
}