@apideck/node
Version:
Apideck Node.js SDK
442 lines (372 loc) • 12.7 kB
text/typescript
/* tslint:disable */
/* eslint-disable */
/**
* Apideck
* The Apideck OpenAPI Spec: SDK Optimized
*
* The version of the OpenAPI document: 10.13.0
* Contact: support@apideck.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 {
CreateLeadResponse,
CreateLeadResponseFromJSON,
DeleteLeadResponse,
DeleteLeadResponseFromJSON,
GetLeadResponse,
GetLeadResponseFromJSON,
GetLeadsResponse,
GetLeadsResponseFromJSON,
Lead,
LeadsFilter,
LeadsSort,
LeadToJSON,
UpdateLeadResponse,
UpdateLeadResponseFromJSON
} from '../models'
import * as runtime from '../runtime'
export interface LeadApiLeadsAddRequest {
lead: Lead
raw?: boolean
consumerId?: string
appId?: string
serviceId?: string
}
export interface LeadApiLeadsAllRequest {
raw?: boolean
consumerId?: string
appId?: string
serviceId?: string
cursor?: string | null
limit?: number
filter?: LeadsFilter
sort?: LeadsSort
fields?: string | null
}
export interface LeadApiLeadsDeleteRequest {
id: string
consumerId?: string
appId?: string
serviceId?: string
raw?: boolean
}
export interface LeadApiLeadsOneRequest {
id: string
consumerId?: string
appId?: string
serviceId?: string
raw?: boolean
fields?: string | null
}
export interface LeadApiLeadsUpdateRequest {
id: string
lead: Lead
consumerId?: string
appId?: string
serviceId?: string
raw?: boolean
}
/**
*
*/
export class LeadApi extends runtime.BaseAPI {
/**
* Create lead
* Create lead
*/
async leadsAddRaw(
requestParameters: LeadApiLeadsAddRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<CreateLeadResponse>> {
if (requestParameters.lead === null || requestParameters.lead === undefined) {
throw new runtime.RequiredError(
'lead',
'Required parameter requestParameters.lead was null or undefined when calling leadsAdd.'
)
}
const queryParameters: any = {}
if (requestParameters.raw !== undefined) {
queryParameters['raw'] = requestParameters.raw
}
const headerParameters: runtime.HTTPHeaders = {}
headerParameters['Content-Type'] = 'application/json'
if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) {
headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId)
}
if (requestParameters.appId !== undefined && requestParameters.appId !== null) {
headerParameters['x-apideck-app-id'] = String(requestParameters.appId)
}
if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) {
headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId)
}
if (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/lead/leads`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: LeadToJSON(requestParameters.lead)
},
initOverrides
)
return new runtime.JSONApiResponse(response, jsonValue => CreateLeadResponseFromJSON(jsonValue))
}
/**
* Create lead
* Create lead
*/
async leadsAdd(
requestParameters: LeadApiLeadsAddRequest,
initOverrides?: RequestInit
): Promise<CreateLeadResponse> {
const response = await this.leadsAddRaw(requestParameters, initOverrides)
return await response.value()
}
/**
* List leads
* List leads
*/
async leadsAllRaw(
requestParameters: LeadApiLeadsAllRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<GetLeadsResponse>> {
const queryParameters: any = {}
if (requestParameters.raw !== undefined) {
queryParameters['raw'] = requestParameters.raw
}
if (requestParameters.cursor !== undefined) {
queryParameters['cursor'] = requestParameters.cursor
}
if (requestParameters.limit !== undefined) {
queryParameters['limit'] = requestParameters.limit
}
if (requestParameters.filter !== undefined) {
queryParameters['filter'] = requestParameters.filter
}
if (requestParameters.sort !== undefined) {
queryParameters['sort'] = requestParameters.sort
}
if (requestParameters.fields !== undefined) {
queryParameters['fields'] = requestParameters.fields
}
const headerParameters: runtime.HTTPHeaders = {}
if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) {
headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId)
}
if (requestParameters.appId !== undefined && requestParameters.appId !== null) {
headerParameters['x-apideck-app-id'] = String(requestParameters.appId)
}
if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) {
headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId)
}
if (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/lead/leads`,
method: 'GET',
headers: headerParameters,
query: queryParameters
},
initOverrides
)
return new runtime.JSONApiResponse(response, jsonValue => GetLeadsResponseFromJSON(jsonValue))
}
/**
* List leads
* List leads
*/
async leadsAll(
requestParameters: LeadApiLeadsAllRequest = {},
initOverrides?: RequestInit
): Promise<GetLeadsResponse> {
const response = await this.leadsAllRaw(requestParameters, initOverrides)
return await response.value()
}
/**
* Delete lead
* Delete lead
*/
async leadsDeleteRaw(
requestParameters: LeadApiLeadsDeleteRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<DeleteLeadResponse>> {
if (requestParameters.id === null || requestParameters.id === undefined) {
throw new runtime.RequiredError(
'id',
'Required parameter requestParameters.id was null or undefined when calling leadsDelete.'
)
}
const queryParameters: any = {}
if (requestParameters.raw !== undefined) {
queryParameters['raw'] = requestParameters.raw
}
const headerParameters: runtime.HTTPHeaders = {}
if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) {
headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId)
}
if (requestParameters.appId !== undefined && requestParameters.appId !== null) {
headerParameters['x-apideck-app-id'] = String(requestParameters.appId)
}
if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) {
headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId)
}
if (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/lead/leads/{id}`.replace(
`{${'id'}}`,
encodeURIComponent(String(requestParameters.id))
),
method: 'DELETE',
headers: headerParameters,
query: queryParameters
},
initOverrides
)
return new runtime.JSONApiResponse(response, jsonValue => DeleteLeadResponseFromJSON(jsonValue))
}
/**
* Delete lead
* Delete lead
*/
async leadsDelete(
requestParameters: LeadApiLeadsDeleteRequest,
initOverrides?: RequestInit
): Promise<DeleteLeadResponse> {
const response = await this.leadsDeleteRaw(requestParameters, initOverrides)
return await response.value()
}
/**
* Get lead
* Get lead
*/
async leadsOneRaw(
requestParameters: LeadApiLeadsOneRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<GetLeadResponse>> {
if (requestParameters.id === null || requestParameters.id === undefined) {
throw new runtime.RequiredError(
'id',
'Required parameter requestParameters.id was null or undefined when calling leadsOne.'
)
}
const queryParameters: any = {}
if (requestParameters.raw !== undefined) {
queryParameters['raw'] = requestParameters.raw
}
if (requestParameters.fields !== undefined) {
queryParameters['fields'] = requestParameters.fields
}
const headerParameters: runtime.HTTPHeaders = {}
if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) {
headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId)
}
if (requestParameters.appId !== undefined && requestParameters.appId !== null) {
headerParameters['x-apideck-app-id'] = String(requestParameters.appId)
}
if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) {
headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId)
}
if (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/lead/leads/{id}`.replace(
`{${'id'}}`,
encodeURIComponent(String(requestParameters.id))
),
method: 'GET',
headers: headerParameters,
query: queryParameters
},
initOverrides
)
return new runtime.JSONApiResponse(response, jsonValue => GetLeadResponseFromJSON(jsonValue))
}
/**
* Get lead
* Get lead
*/
async leadsOne(
requestParameters: LeadApiLeadsOneRequest,
initOverrides?: RequestInit
): Promise<GetLeadResponse> {
const response = await this.leadsOneRaw(requestParameters, initOverrides)
return await response.value()
}
/**
* Update lead
* Update lead
*/
async leadsUpdateRaw(
requestParameters: LeadApiLeadsUpdateRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<UpdateLeadResponse>> {
if (requestParameters.id === null || requestParameters.id === undefined) {
throw new runtime.RequiredError(
'id',
'Required parameter requestParameters.id was null or undefined when calling leadsUpdate.'
)
}
if (requestParameters.lead === null || requestParameters.lead === undefined) {
throw new runtime.RequiredError(
'lead',
'Required parameter requestParameters.lead was null or undefined when calling leadsUpdate.'
)
}
const queryParameters: any = {}
if (requestParameters.raw !== undefined) {
queryParameters['raw'] = requestParameters.raw
}
const headerParameters: runtime.HTTPHeaders = {}
headerParameters['Content-Type'] = 'application/json'
if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) {
headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId)
}
if (requestParameters.appId !== undefined && requestParameters.appId !== null) {
headerParameters['x-apideck-app-id'] = String(requestParameters.appId)
}
if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) {
headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId)
}
if (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/lead/leads/{id}`.replace(
`{${'id'}}`,
encodeURIComponent(String(requestParameters.id))
),
method: 'PATCH',
headers: headerParameters,
query: queryParameters,
body: LeadToJSON(requestParameters.lead)
},
initOverrides
)
return new runtime.JSONApiResponse(response, jsonValue => UpdateLeadResponseFromJSON(jsonValue))
}
/**
* Update lead
* Update lead
*/
async leadsUpdate(
requestParameters: LeadApiLeadsUpdateRequest,
initOverrides?: RequestInit
): Promise<UpdateLeadResponse> {
const response = await this.leadsUpdateRaw(requestParameters, initOverrides)
return await response.value()
}
}