/* tslint:disable */ /* eslint-disable */ /** * Bandwidth * Bandwidth\'s Communication APIs * * The version of the OpenAPI document: 1.0.0 * Contact: letstalk@bandwidth.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import type { Configuration } from '../configuration'; import type { AxiosPromise, AxiosInstance, RawAxiosRequestConfig } from 'axios'; import globalAxios from 'axios'; // Some imports not used depending on template conditions // @ts-ignore import { DUMMY_BASE_URL, assertParamExists, setApiKeyToObject, setBasicAuthToObject, setBearerAuthToObject, setOAuthToObject, setSearchParams, serializeDataIfNeeded, toPathString, createRequestFunction } from '../common'; // @ts-ignore import { BASE_PATH, COLLECTION_FORMATS, type RequestArgs, BaseAPI, RequiredError, operationServerMap } from '../base'; // @ts-ignore import type { AsyncLookupRequest } from '../models'; // @ts-ignore import type { CreateAsyncBulkLookupResponse } from '../models'; // @ts-ignore import type { CreateSyncLookupResponse } from '../models'; // @ts-ignore import type { GetAsyncBulkLookupResponse } from '../models'; // @ts-ignore import type { LookupErrorResponse } from '../models'; // @ts-ignore import type { SyncLookupRequest } from '../models'; /** * PhoneNumberLookupApi - axios parameter creator */ export const PhoneNumberLookupApiAxiosParamCreator = function (configuration?: Configuration) { return { /** * Creates an asynchronous bulk phone number lookup request. Maximum of 15,000 telephone numbers per request. Use the [Get Asynchronous Bulk Number Lookup](#tag/Phone-Number-Lookup/operation/getAsyncBulkLookup) endpoint to check the status of the request and view the results. * @summary Create Asynchronous Bulk Number Lookup * @param {string} accountId * @param {AsyncLookupRequest} asyncLookupRequest Asynchronous bulk phone number lookup request. * @param {*} [options] Override http request option. * @throws {RequiredError} */ createAsyncBulkLookup: async (accountId: string, asyncLookupRequest: AsyncLookupRequest, options: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'accountId' is not null or undefined assertParamExists('createAsyncBulkLookup', 'accountId', accountId) // verify required parameter 'asyncLookupRequest' is not null or undefined assertParamExists('createAsyncBulkLookup', 'asyncLookupRequest', asyncLookupRequest) const localVarPath = `/accounts/{accountId}/phoneNumberLookup/bulk` .replace(`{${"accountId"}}`, encodeURIComponent(String(accountId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication Basic required // http basic authentication required setBasicAuthToObject(localVarRequestOptions, configuration) // authentication OAuth2 required // oauth required await setOAuthToObject(localVarHeaderParameter, "OAuth2", [], configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; localVarRequestOptions.data = serializeDataIfNeeded(asyncLookupRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, /** * Creates a synchronous phone number lookup request. Maximum of 100 telephone numbers per request. * @summary Create Synchronous Number Lookup * @param {string} accountId * @param {SyncLookupRequest} syncLookupRequest Synchronous phone number lookup request. * @param {*} [options] Override http request option. * @throws {RequiredError} */ createSyncLookup: async (accountId: string, syncLookupRequest: SyncLookupRequest, options: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'accountId' is not null or undefined assertParamExists('createSyncLookup', 'accountId', accountId) // verify required parameter 'syncLookupRequest' is not null or undefined assertParamExists('createSyncLookup', 'syncLookupRequest', syncLookupRequest) const localVarPath = `/accounts/{accountId}/phoneNumberLookup` .replace(`{${"accountId"}}`, encodeURIComponent(String(accountId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication Basic required // http basic authentication required setBasicAuthToObject(localVarRequestOptions, configuration) // authentication OAuth2 required // oauth required await setOAuthToObject(localVarHeaderParameter, "OAuth2", [], configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; localVarRequestOptions.data = serializeDataIfNeeded(syncLookupRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, /** * Get an existing [Asynchronous Bulk Number Lookup](#tag/Phone-Number-Lookup/operation/createAsyncBulkLookup). Use this endpoint to check the status of the request and view the results. * @summary Get Asynchronous Bulk Number Lookup * @param {string} accountId * @param {string} requestId * @param {*} [options] Override http request option. * @throws {RequiredError} */ getAsyncBulkLookup: async (accountId: string, requestId: string, options: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'accountId' is not null or undefined assertParamExists('getAsyncBulkLookup', 'accountId', accountId) // verify required parameter 'requestId' is not null or undefined assertParamExists('getAsyncBulkLookup', 'requestId', requestId) const localVarPath = `/accounts/{accountId}/phoneNumberLookup/bulk/{requestId}` .replace(`{${"accountId"}}`, encodeURIComponent(String(accountId))) .replace(`{${"requestId"}}`, encodeURIComponent(String(requestId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; // authentication Basic required // http basic authentication required setBasicAuthToObject(localVarRequestOptions, configuration) // authentication OAuth2 required // oauth required await setOAuthToObject(localVarHeaderParameter, "OAuth2", [], configuration) setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, } }; /** * PhoneNumberLookupApi - functional programming interface */ export const PhoneNumberLookupApiFp = function(configuration?: Configuration) { const localVarAxiosParamCreator = PhoneNumberLookupApiAxiosParamCreator(configuration) return { /** * Creates an asynchronous bulk phone number lookup request. Maximum of 15,000 telephone numbers per request. Use the [Get Asynchronous Bulk Number Lookup](#tag/Phone-Number-Lookup/operation/getAsyncBulkLookup) endpoint to check the status of the request and view the results. * @summary Create Asynchronous Bulk Number Lookup * @param {string} accountId * @param {AsyncLookupRequest} asyncLookupRequest Asynchronous bulk phone number lookup request. * @param {*} [options] Override http request option. * @throws {RequiredError} */ async createAsyncBulkLookup(accountId: string, asyncLookupRequest: AsyncLookupRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.createAsyncBulkLookup(accountId, asyncLookupRequest, options); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['PhoneNumberLookupApi.createAsyncBulkLookup']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * Creates a synchronous phone number lookup request. Maximum of 100 telephone numbers per request. * @summary Create Synchronous Number Lookup * @param {string} accountId * @param {SyncLookupRequest} syncLookupRequest Synchronous phone number lookup request. * @param {*} [options] Override http request option. * @throws {RequiredError} */ async createSyncLookup(accountId: string, syncLookupRequest: SyncLookupRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.createSyncLookup(accountId, syncLookupRequest, options); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['PhoneNumberLookupApi.createSyncLookup']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * Get an existing [Asynchronous Bulk Number Lookup](#tag/Phone-Number-Lookup/operation/createAsyncBulkLookup). Use this endpoint to check the status of the request and view the results. * @summary Get Asynchronous Bulk Number Lookup * @param {string} accountId * @param {string} requestId * @param {*} [options] Override http request option. * @throws {RequiredError} */ async getAsyncBulkLookup(accountId: string, requestId: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getAsyncBulkLookup(accountId, requestId, options); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['PhoneNumberLookupApi.getAsyncBulkLookup']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, } }; /** * PhoneNumberLookupApi - factory interface */ export const PhoneNumberLookupApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { const localVarFp = PhoneNumberLookupApiFp(configuration) return { /** * Creates an asynchronous bulk phone number lookup request. Maximum of 15,000 telephone numbers per request. Use the [Get Asynchronous Bulk Number Lookup](#tag/Phone-Number-Lookup/operation/getAsyncBulkLookup) endpoint to check the status of the request and view the results. * @summary Create Asynchronous Bulk Number Lookup * @param {string} accountId * @param {AsyncLookupRequest} asyncLookupRequest Asynchronous bulk phone number lookup request. * @param {*} [options] Override http request option. * @throws {RequiredError} */ createAsyncBulkLookup(accountId: string, asyncLookupRequest: AsyncLookupRequest, options?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.createAsyncBulkLookup(accountId, asyncLookupRequest, options).then((request) => request(axios, basePath)); }, /** * Creates a synchronous phone number lookup request. Maximum of 100 telephone numbers per request. * @summary Create Synchronous Number Lookup * @param {string} accountId * @param {SyncLookupRequest} syncLookupRequest Synchronous phone number lookup request. * @param {*} [options] Override http request option. * @throws {RequiredError} */ createSyncLookup(accountId: string, syncLookupRequest: SyncLookupRequest, options?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.createSyncLookup(accountId, syncLookupRequest, options).then((request) => request(axios, basePath)); }, /** * Get an existing [Asynchronous Bulk Number Lookup](#tag/Phone-Number-Lookup/operation/createAsyncBulkLookup). Use this endpoint to check the status of the request and view the results. * @summary Get Asynchronous Bulk Number Lookup * @param {string} accountId * @param {string} requestId * @param {*} [options] Override http request option. * @throws {RequiredError} */ getAsyncBulkLookup(accountId: string, requestId: string, options?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.getAsyncBulkLookup(accountId, requestId, options).then((request) => request(axios, basePath)); }, }; }; /** * PhoneNumberLookupApi - object-oriented interface */ export class PhoneNumberLookupApi extends BaseAPI { /** * Creates an asynchronous bulk phone number lookup request. Maximum of 15,000 telephone numbers per request. Use the [Get Asynchronous Bulk Number Lookup](#tag/Phone-Number-Lookup/operation/getAsyncBulkLookup) endpoint to check the status of the request and view the results. * @summary Create Asynchronous Bulk Number Lookup * @param {string} accountId * @param {AsyncLookupRequest} asyncLookupRequest Asynchronous bulk phone number lookup request. * @param {*} [options] Override http request option. * @throws {RequiredError} */ public createAsyncBulkLookup(accountId: string, asyncLookupRequest: AsyncLookupRequest, options?: RawAxiosRequestConfig) { return PhoneNumberLookupApiFp(this.configuration).createAsyncBulkLookup(accountId, asyncLookupRequest, options).then((request) => request(this.axios, this.basePath)); } /** * Creates a synchronous phone number lookup request. Maximum of 100 telephone numbers per request. * @summary Create Synchronous Number Lookup * @param {string} accountId * @param {SyncLookupRequest} syncLookupRequest Synchronous phone number lookup request. * @param {*} [options] Override http request option. * @throws {RequiredError} */ public createSyncLookup(accountId: string, syncLookupRequest: SyncLookupRequest, options?: RawAxiosRequestConfig) { return PhoneNumberLookupApiFp(this.configuration).createSyncLookup(accountId, syncLookupRequest, options).then((request) => request(this.axios, this.basePath)); } /** * Get an existing [Asynchronous Bulk Number Lookup](#tag/Phone-Number-Lookup/operation/createAsyncBulkLookup). Use this endpoint to check the status of the request and view the results. * @summary Get Asynchronous Bulk Number Lookup * @param {string} accountId * @param {string} requestId * @param {*} [options] Override http request option. * @throws {RequiredError} */ public getAsyncBulkLookup(accountId: string, requestId: string, options?: RawAxiosRequestConfig) { return PhoneNumberLookupApiFp(this.configuration).getAsyncBulkLookup(accountId, requestId, options).then((request) => request(this.axios, this.basePath)); } }