UNPKG

@emergentmethods/asknews-typescript-sdk

Version:
637 lines (537 loc) 22.1 kB
/* tslint:disable */ /* eslint-disable */ /** * AskNews API * AskNews API * * The version of the OpenAPI document: 0.21.1 * 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 { AbcAPIErrorModel49, AbcAPIErrorModel50, AbcAPIErrorModel51, AbcAPIErrorModel52, AbcAPIErrorModel53, AbcAPIErrorModel54, AbcAPIErrorModel55, AbcAPIErrorModel56, 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, AsknewsApiErrorsAPIErrorModel, CountResponse, CreateDomainRequest, HitShareResponse, PaginatedResponseReadDomainResponse, ReadDomainResponse, TopNArticlesByHitsResponse, TopNArticlesForDomainResponse, TopNDomainsByHitsResponse, UpdateDomainRequest, ValidationErrorModel, } from '../models/index'; import { AbcAPIErrorModel49FromJSON, AbcAPIErrorModel49ToJSON, AbcAPIErrorModel50FromJSON, AbcAPIErrorModel50ToJSON, AbcAPIErrorModel51FromJSON, AbcAPIErrorModel51ToJSON, AbcAPIErrorModel52FromJSON, AbcAPIErrorModel52ToJSON, AbcAPIErrorModel53FromJSON, AbcAPIErrorModel53ToJSON, AbcAPIErrorModel54FromJSON, AbcAPIErrorModel54ToJSON, AbcAPIErrorModel55FromJSON, AbcAPIErrorModel55ToJSON, AbcAPIErrorModel56FromJSON, AbcAPIErrorModel56ToJSON, 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, AsknewsApiErrorsAPIErrorModelFromJSON, AsknewsApiErrorsAPIErrorModelToJSON, CountResponseFromJSON, CountResponseToJSON, CreateDomainRequestFromJSON, CreateDomainRequestToJSON, HitShareResponseFromJSON, HitShareResponseToJSON, PaginatedResponseReadDomainResponseFromJSON, PaginatedResponseReadDomainResponseToJSON, ReadDomainResponseFromJSON, ReadDomainResponseToJSON, TopNArticlesByHitsResponseFromJSON, TopNArticlesByHitsResponseToJSON, TopNArticlesForDomainResponseFromJSON, TopNArticlesForDomainResponseToJSON, TopNDomainsByHitsResponseFromJSON, TopNDomainsByHitsResponseToJSON, UpdateDomainRequestFromJSON, UpdateDomainRequestToJSON, ValidationErrorModelFromJSON, ValidationErrorModelToJSON, } from '../models/index'; export interface CreateDomainOperationRequest { createDomainRequest: CreateDomainRequest; } export interface DomainHitShareRequest { domainNames: Array<string>; startDate?: number; endDate?: number; isPublisher?: boolean; } export interface FindDomainsRequest { page?: number; perPage?: number; names?: Array<string>; includeIds?: Array<string>; excludeIds?: Array<string>; isTollbit?: boolean; } export interface GetArticleHitsRequest { domain: string; startDate?: number; endDate?: number; } export interface GetDomainRequest { domainIdOrName: string; } export interface TopNArticlesByHitsRequest { limit?: number; startDate?: number; endDate?: number; } export interface TopNArticlesForDomainRequest { domain: string; limit?: number; startDate?: number; endDate?: number; } export interface TopNDomainsByHitsRequest { limit?: number; startDate?: number; endDate?: number; } export interface UpdateDomainOperationRequest { domainId: string; updateDomainRequest: UpdateDomainRequest; } /** * */ export class DistributionApi extends runtime.BaseAPI { /** * Create a new domain. * Create a new domain */ async createDomainRaw(requestParameters: CreateDomainOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<ReadDomainResponse> | runtime.StreamApiResponse> { if (requestParameters['createDomainRequest'] == null) { throw new runtime.RequiredError( 'createDomainRequest', 'Required parameter "createDomainRequest" was null or undefined when calling createDomain().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; const response = await this.request({ path: `/v1/distribution/domains`, method: 'POST', headers: headerParameters, query: queryParameters, body: CreateDomainRequestToJSON(requestParameters['createDomainRequest']), }, initOverrides); if ('createDomainRequest' in requestParameters && requestParameters['createDomainRequest'] != null && 'stream' in requestParameters['createDomainRequest'] && requestParameters['createDomainRequest']['stream'] === true) { return new runtime.StreamApiResponse(response); } return new runtime.JSONApiResponse(response, (jsonValue) => ReadDomainResponseFromJSON(jsonValue)); } /** * Create a new domain. * Create a new domain */ async createDomain(requestParameters: CreateDomainOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<ReadDomainResponse | ReadableStream<any>> { const response = await this.createDomainRaw(requestParameters, initOverrides); return await response.value(); } /** * 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['includeIds'] != null) { queryParameters['include_ids'] = requestParameters['includeIds']; } if (requestParameters['excludeIds'] != null) { queryParameters['exclude_ids'] = requestParameters['excludeIds']; } if (requestParameters['isTollbit'] != null) { queryParameters['is_tollbit'] = requestParameters['isTollbit']; } 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['domain'] == null) { throw new runtime.RequiredError( 'domain', 'Required parameter "domain" was null or undefined when calling getArticleHits().' ); } const queryParameters: any = {}; if (requestParameters['domain'] != null) { queryParameters['domain'] = requestParameters['domain']; } 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 new domain. * Get a domain by ID or name */ async getDomainRaw(requestParameters: GetDomainRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<ReadDomainResponse> > { if (requestParameters['domainIdOrName'] == null) { throw new runtime.RequiredError( 'domainIdOrName', 'Required parameter "domainIdOrName" was null or undefined when calling getDomain().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; const response = await this.request({ path: `/v1/distribution/domains/{domain_idOrName}`.replace(`{${"domain_idOrName"}}`, encodeURIComponent(String(requestParameters['domainIdOrName']))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => ReadDomainResponseFromJSON(jsonValue)); } /** * Get a new domain. * Get a domain by ID or name */ async getDomain(requestParameters: GetDomainRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<ReadDomainResponse> { const response = await this.getDomainRaw(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']; } 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. * Get the top N articles by hits for domain */ async topNArticlesForDomainRaw(requestParameters: TopNArticlesForDomainRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<TopNArticlesForDomainResponse> > { if (requestParameters['domain'] == null) { throw new runtime.RequiredError( 'domain', 'Required parameter "domain" was null or undefined when calling topNArticlesForDomain().' ); } const queryParameters: any = {}; if (requestParameters['domain'] != null) { queryParameters['domain'] = requestParameters['domain']; } 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`, 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 domain */ async topNArticlesForDomain(requestParameters: TopNArticlesForDomainRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<TopNArticlesForDomainResponse> { const response = await this.topNArticlesForDomainRaw(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']; } 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['domainId'] == null) { throw new runtime.RequiredError( 'domainId', 'Required parameter "domainId" 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/{domain_id}`.replace(`{${"domain_id"}}`, encodeURIComponent(String(requestParameters['domainId']))), 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(); } }