@ringer-tel/ivy
Version:
TypeScript SDK for Ringer APIs
308 lines (256 loc) • 12.3 kB
text/typescript
/* tslint:disable */
/* eslint-disable */
/**
* Ringer Business API
* This API provides comprehensive endpoints for the Ringer Business system. It includes functionality for managing customer accounts, addresses, sites, phone numbers, payments, users, and other business resources. Operations typically require authentication and appropriate permissions.
*
* The version of the OpenAPI document: 1.0.6
* Contact: support@ringer.tel
*
* 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 {
CallBlockComponentsSchemasError,
CallBlockCreateRequest,
CallBlockListResponse,
CallBlockUpdateRequest,
SchemasCallBlockResponse,
} from '../models/index';
import {
CallBlockComponentsSchemasErrorFromJSON,
CallBlockComponentsSchemasErrorToJSON,
CallBlockCreateRequestFromJSON,
CallBlockCreateRequestToJSON,
CallBlockListResponseFromJSON,
CallBlockListResponseToJSON,
CallBlockUpdateRequestFromJSON,
CallBlockUpdateRequestToJSON,
SchemasCallBlockResponseFromJSON,
SchemasCallBlockResponseToJSON,
} from '../models/index';
export interface CreateSiteCallBlockRequest {
siteId: number;
callBlockCreateRequest: CallBlockCreateRequest;
}
export interface DeleteSiteCallBlockByIdRequest {
siteId: number;
id: number;
}
export interface GetSiteCallBlockByIdRequest {
siteId: number;
id: number;
}
export interface ListSiteCallBlocksRequest {
siteId: number;
}
export interface UpdateSiteCallBlockByIdRequest {
siteId: number;
id: number;
callBlockUpdateRequest: CallBlockUpdateRequest;
}
/**
*
*/
export class SiteFeaturesCallBlockingApi extends runtime.BaseAPI {
/**
* Adds a new call blocking rule to the specified site.
* Create a Call Block Rule
*/
async createSiteCallBlockRaw(requestParameters: CreateSiteCallBlockRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<SchemasCallBlockResponse>> {
if (requestParameters['siteId'] == null) {
throw new runtime.RequiredError(
'siteId',
'Required parameter "siteId" was null or undefined when calling createSiteCallBlock().'
);
}
if (requestParameters['callBlockCreateRequest'] == null) {
throw new runtime.RequiredError(
'callBlockCreateRequest',
'Required parameter "callBlockCreateRequest" was null or undefined when calling createSiteCallBlock().'
);
}
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/json';
if (this.configuration && this.configuration.accessToken) {
// oauth required
headerParameters["Authorization"] = await this.configuration.accessToken("oAuth2", []);
}
const response = await this.request({
path: `/sites/{site_id}/call-blocks`.replace(`{${"site_id"}}`, encodeURIComponent(String(requestParameters['siteId']))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: CallBlockCreateRequestToJSON(requestParameters['callBlockCreateRequest']),
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => SchemasCallBlockResponseFromJSON(jsonValue));
}
/**
* Adds a new call blocking rule to the specified site.
* Create a Call Block Rule
*/
async createSiteCallBlock(requestParameters: CreateSiteCallBlockRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<SchemasCallBlockResponse> {
const response = await this.createSiteCallBlockRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Permanently deletes a Call Block rule.
* Delete a Call Block Rule
*/
async deleteSiteCallBlockByIdRaw(requestParameters: DeleteSiteCallBlockByIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters['siteId'] == null) {
throw new runtime.RequiredError(
'siteId',
'Required parameter "siteId" was null or undefined when calling deleteSiteCallBlockById().'
);
}
if (requestParameters['id'] == null) {
throw new runtime.RequiredError(
'id',
'Required parameter "id" was null or undefined when calling deleteSiteCallBlockById().'
);
}
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.accessToken) {
// oauth required
headerParameters["Authorization"] = await this.configuration.accessToken("oAuth2", []);
}
const response = await this.request({
path: `/sites/{site_id}/call-blocks/{id}`.replace(`{${"site_id"}}`, encodeURIComponent(String(requestParameters['siteId']))).replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))),
method: 'DELETE',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Permanently deletes a Call Block rule.
* Delete a Call Block Rule
*/
async deleteSiteCallBlockById(requestParameters: DeleteSiteCallBlockByIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.deleteSiteCallBlockByIdRaw(requestParameters, initOverrides);
}
/**
* Retrieves the details of a specific Call Block rule.
* Get Call Block Rule Details
*/
async getSiteCallBlockByIdRaw(requestParameters: GetSiteCallBlockByIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<SchemasCallBlockResponse>> {
if (requestParameters['siteId'] == null) {
throw new runtime.RequiredError(
'siteId',
'Required parameter "siteId" was null or undefined when calling getSiteCallBlockById().'
);
}
if (requestParameters['id'] == null) {
throw new runtime.RequiredError(
'id',
'Required parameter "id" was null or undefined when calling getSiteCallBlockById().'
);
}
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.accessToken) {
// oauth required
headerParameters["Authorization"] = await this.configuration.accessToken("oAuth2", []);
}
const response = await this.request({
path: `/sites/{site_id}/call-blocks/{id}`.replace(`{${"site_id"}}`, encodeURIComponent(String(requestParameters['siteId']))).replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => SchemasCallBlockResponseFromJSON(jsonValue));
}
/**
* Retrieves the details of a specific Call Block rule.
* Get Call Block Rule Details
*/
async getSiteCallBlockById(requestParameters: GetSiteCallBlockByIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<SchemasCallBlockResponse> {
const response = await this.getSiteCallBlockByIdRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Retrieves a list of all call blocking rules configured for the specified site.
* List Call Block Rules for a Site
*/
async listSiteCallBlocksRaw(requestParameters: ListSiteCallBlocksRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<CallBlockListResponse>> {
if (requestParameters['siteId'] == null) {
throw new runtime.RequiredError(
'siteId',
'Required parameter "siteId" was null or undefined when calling listSiteCallBlocks().'
);
}
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.accessToken) {
// oauth required
headerParameters["Authorization"] = await this.configuration.accessToken("oAuth2", []);
}
const response = await this.request({
path: `/sites/{site_id}/call-blocks`.replace(`{${"site_id"}}`, encodeURIComponent(String(requestParameters['siteId']))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => CallBlockListResponseFromJSON(jsonValue));
}
/**
* Retrieves a list of all call blocking rules configured for the specified site.
* List Call Block Rules for a Site
*/
async listSiteCallBlocks(requestParameters: ListSiteCallBlocksRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<CallBlockListResponse> {
const response = await this.listSiteCallBlocksRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Updates an existing Call Block rule. Only attributes provided in the request body will be updated.
* Update Call Block Rule
*/
async updateSiteCallBlockByIdRaw(requestParameters: UpdateSiteCallBlockByIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<SchemasCallBlockResponse>> {
if (requestParameters['siteId'] == null) {
throw new runtime.RequiredError(
'siteId',
'Required parameter "siteId" was null or undefined when calling updateSiteCallBlockById().'
);
}
if (requestParameters['id'] == null) {
throw new runtime.RequiredError(
'id',
'Required parameter "id" was null or undefined when calling updateSiteCallBlockById().'
);
}
if (requestParameters['callBlockUpdateRequest'] == null) {
throw new runtime.RequiredError(
'callBlockUpdateRequest',
'Required parameter "callBlockUpdateRequest" was null or undefined when calling updateSiteCallBlockById().'
);
}
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/json';
if (this.configuration && this.configuration.accessToken) {
// oauth required
headerParameters["Authorization"] = await this.configuration.accessToken("oAuth2", []);
}
const response = await this.request({
path: `/sites/{site_id}/call-blocks/{id}`.replace(`{${"site_id"}}`, encodeURIComponent(String(requestParameters['siteId']))).replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))),
method: 'PUT',
headers: headerParameters,
query: queryParameters,
body: CallBlockUpdateRequestToJSON(requestParameters['callBlockUpdateRequest']),
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => SchemasCallBlockResponseFromJSON(jsonValue));
}
/**
* Updates an existing Call Block rule. Only attributes provided in the request body will be updated.
* Update Call Block Rule
*/
async updateSiteCallBlockById(requestParameters: UpdateSiteCallBlockByIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<SchemasCallBlockResponse> {
const response = await this.updateSiteCallBlockByIdRaw(requestParameters, initOverrides);
return await response.value();
}
}