@apideck/node
Version:
Apideck Node.js SDK
1,460 lines (1,247 loc) • 58 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 {
Connection,
ConnectionImportData,
ConnectionImportDataToJSON,
ConnectionToJSON,
Consumer,
ConsumerRequestCountsInDateRangeResponse,
ConsumerRequestCountsInDateRangeResponseFromJSON,
ConsumerToJSON,
CreateCallbackState,
CreateCallbackStateResponse,
CreateCallbackStateResponseFromJSON,
CreateCallbackStateToJSON,
CreateConnectionResponse,
CreateConnectionResponseFromJSON,
CreateConsumerResponse,
CreateConsumerResponseFromJSON,
CreateSessionResponse,
CreateSessionResponseFromJSON,
DeleteConsumerResponse,
DeleteConsumerResponseFromJSON,
GetConnectionResponse,
GetConnectionResponseFromJSON,
GetConnectionsResponse,
GetConnectionsResponseFromJSON,
GetConsumerResponse,
GetConsumerResponseFromJSON,
GetConsumersResponse,
GetConsumersResponseFromJSON,
GetCustomFieldsResponse,
GetCustomFieldsResponseFromJSON,
GetCustomMappingsResponse,
GetCustomMappingsResponseFromJSON,
GetLogsResponse,
GetLogsResponseFromJSON,
LogsFilter,
Session,
SessionToJSON,
UpdateConnectionResponse,
UpdateConnectionResponseFromJSON,
UpdateConsumerRequest,
UpdateConsumerRequestToJSON,
UpdateConsumerResponse,
UpdateConsumerResponseFromJSON,
ValidateConnectionStateResponse,
ValidateConnectionStateResponseFromJSON
} from '../models'
import * as runtime from '../runtime'
export interface VaultApiConnectionCustomMappingsAllRequest {
unifiedApi: string
serviceId: string
resource: string
consumerId?: string
appId?: string
resourceId?: string
}
export interface VaultApiConnectionSettingsAllRequest {
unifiedApi: string
serviceId: string
resource: string
consumerId?: string
appId?: string
}
export interface VaultApiConnectionSettingsUpdateRequest {
serviceId: string
unifiedApi: string
resource: string
connection: Connection
consumerId?: string
appId?: string
}
export interface VaultApiConnectionsAllRequest {
consumerId?: string
appId?: string
api?: string
configured?: boolean
}
export interface VaultApiConnectionsDeleteRequest {
serviceId: string
unifiedApi: string
consumerId?: string
appId?: string
}
export interface VaultApiConnectionsImportRequest {
serviceId: string
unifiedApi: string
connection: ConnectionImportData
consumerId?: string
appId?: string
}
export interface VaultApiConnectionsOneRequest {
serviceId: string
unifiedApi: string
consumerId?: string
appId?: string
}
export interface VaultApiConnectionsTokenRequest {
serviceId: string
unifiedApi: string
consumerId?: string
appId?: string
body?: object
}
export interface VaultApiConnectionsUpdateRequest {
serviceId: string
unifiedApi: string
connection: Connection
consumerId?: string
appId?: string
}
export interface VaultApiConsumerRequestCountsAllRequest {
consumerId: string
startDatetime: string
endDatetime: string
appId?: string
}
export interface VaultApiConsumersAddRequest {
consumer: Consumer
appId?: string
}
export interface VaultApiConsumersAllRequest {
appId?: string
cursor?: string | null
limit?: number
}
export interface VaultApiConsumersDeleteRequest {
consumerId: string
appId?: string
}
export interface VaultApiConsumersOneRequest {
consumerId: string
appId?: string
}
export interface VaultApiConsumersUpdateRequest {
consumerId: string
consumer: UpdateConsumerRequest
appId?: string
}
export interface VaultApiCreateCallbackStateRequest {
serviceId: string
unifiedApi: string
createCallbackState: CreateCallbackState
consumerId?: string
appId?: string
}
export interface VaultApiCustomFieldsAllRequest {
unifiedApi: string
serviceId: string
resource: string
consumerId?: string
appId?: string
resourceId?: string
}
export interface VaultApiCustomMappingsAllRequest {
unifiedApi: string
serviceId: string
consumerId?: string
appId?: string
}
export interface VaultApiLogsAllRequest {
appId?: string
consumerId?: string
filter?: LogsFilter
cursor?: string | null
limit?: number
}
export interface VaultApiSessionsCreateRequest {
consumerId?: string
appId?: string
session?: Session
}
export interface VaultApiValidateConnectionStateRequest {
serviceId: string
unifiedApi: string
consumerId?: string
appId?: string
body?: object
}
/**
*
*/
export class VaultApi extends runtime.BaseAPI {
/**
* This endpoint returns a list of custom mappings for a connection.
* List connection custom mappings
*/
async connectionCustomMappingsAllRaw(
requestParameters: VaultApiConnectionCustomMappingsAllRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<GetCustomMappingsResponse>> {
if (requestParameters.unifiedApi === null || requestParameters.unifiedApi === undefined) {
throw new runtime.RequiredError(
'unifiedApi',
'Required parameter requestParameters.unifiedApi was null or undefined when calling connectionCustomMappingsAll.'
)
}
if (requestParameters.serviceId === null || requestParameters.serviceId === undefined) {
throw new runtime.RequiredError(
'serviceId',
'Required parameter requestParameters.serviceId was null or undefined when calling connectionCustomMappingsAll.'
)
}
if (requestParameters.resource === null || requestParameters.resource === undefined) {
throw new runtime.RequiredError(
'resource',
'Required parameter requestParameters.resource was null or undefined when calling connectionCustomMappingsAll.'
)
}
const queryParameters: any = {}
if (requestParameters.resourceId !== undefined) {
queryParameters['resource_id'] = requestParameters.resourceId
}
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 (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/vault/connections/{unified_api}/{service_id}/{resource}/custom-mappings`
.replace(`{${'unified_api'}}`, encodeURIComponent(String(requestParameters.unifiedApi)))
.replace(`{${'service_id'}}`, encodeURIComponent(String(requestParameters.serviceId)))
.replace(`{${'resource'}}`, encodeURIComponent(String(requestParameters.resource))),
method: 'GET',
headers: headerParameters,
query: queryParameters
},
initOverrides
)
return new runtime.JSONApiResponse(response, jsonValue =>
GetCustomMappingsResponseFromJSON(jsonValue)
)
}
/**
* This endpoint returns a list of custom mappings for a connection.
* List connection custom mappings
*/
async connectionCustomMappingsAll(
requestParameters: VaultApiConnectionCustomMappingsAllRequest,
initOverrides?: RequestInit
): Promise<GetCustomMappingsResponse> {
const response = await this.connectionCustomMappingsAllRaw(requestParameters, initOverrides)
return await response.value()
}
/**
* This endpoint returns custom settings and their defaults required by connection for a given resource.
* Get resource settings
*/
async connectionSettingsAllRaw(
requestParameters: VaultApiConnectionSettingsAllRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<GetConnectionResponse>> {
if (requestParameters.unifiedApi === null || requestParameters.unifiedApi === undefined) {
throw new runtime.RequiredError(
'unifiedApi',
'Required parameter requestParameters.unifiedApi was null or undefined when calling connectionSettingsAll.'
)
}
if (requestParameters.serviceId === null || requestParameters.serviceId === undefined) {
throw new runtime.RequiredError(
'serviceId',
'Required parameter requestParameters.serviceId was null or undefined when calling connectionSettingsAll.'
)
}
if (requestParameters.resource === null || requestParameters.resource === undefined) {
throw new runtime.RequiredError(
'resource',
'Required parameter requestParameters.resource was null or undefined when calling connectionSettingsAll.'
)
}
const queryParameters: any = {}
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 (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/vault/connections/{unified_api}/{service_id}/{resource}/config`
.replace(`{${'unified_api'}}`, encodeURIComponent(String(requestParameters.unifiedApi)))
.replace(`{${'service_id'}}`, encodeURIComponent(String(requestParameters.serviceId)))
.replace(`{${'resource'}}`, encodeURIComponent(String(requestParameters.resource))),
method: 'GET',
headers: headerParameters,
query: queryParameters
},
initOverrides
)
return new runtime.JSONApiResponse(response, jsonValue =>
GetConnectionResponseFromJSON(jsonValue)
)
}
/**
* This endpoint returns custom settings and their defaults required by connection for a given resource.
* Get resource settings
*/
async connectionSettingsAll(
requestParameters: VaultApiConnectionSettingsAllRequest,
initOverrides?: RequestInit
): Promise<GetConnectionResponse> {
const response = await this.connectionSettingsAllRaw(requestParameters, initOverrides)
return await response.value()
}
/**
* Update default values for a connection\'s resource settings
* Update settings
*/
async connectionSettingsUpdateRaw(
requestParameters: VaultApiConnectionSettingsUpdateRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<UpdateConnectionResponse>> {
if (requestParameters.serviceId === null || requestParameters.serviceId === undefined) {
throw new runtime.RequiredError(
'serviceId',
'Required parameter requestParameters.serviceId was null or undefined when calling connectionSettingsUpdate.'
)
}
if (requestParameters.unifiedApi === null || requestParameters.unifiedApi === undefined) {
throw new runtime.RequiredError(
'unifiedApi',
'Required parameter requestParameters.unifiedApi was null or undefined when calling connectionSettingsUpdate.'
)
}
if (requestParameters.resource === null || requestParameters.resource === undefined) {
throw new runtime.RequiredError(
'resource',
'Required parameter requestParameters.resource was null or undefined when calling connectionSettingsUpdate.'
)
}
if (requestParameters.connection === null || requestParameters.connection === undefined) {
throw new runtime.RequiredError(
'connection',
'Required parameter requestParameters.connection was null or undefined when calling connectionSettingsUpdate.'
)
}
const queryParameters: any = {}
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 (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/vault/connections/{unified_api}/{service_id}/{resource}/config`
.replace(`{${'service_id'}}`, encodeURIComponent(String(requestParameters.serviceId)))
.replace(`{${'unified_api'}}`, encodeURIComponent(String(requestParameters.unifiedApi)))
.replace(`{${'resource'}}`, encodeURIComponent(String(requestParameters.resource))),
method: 'PATCH',
headers: headerParameters,
query: queryParameters,
body: ConnectionToJSON(requestParameters.connection)
},
initOverrides
)
return new runtime.JSONApiResponse(response, jsonValue =>
UpdateConnectionResponseFromJSON(jsonValue)
)
}
/**
* Update default values for a connection\'s resource settings
* Update settings
*/
async connectionSettingsUpdate(
requestParameters: VaultApiConnectionSettingsUpdateRequest,
initOverrides?: RequestInit
): Promise<UpdateConnectionResponse> {
const response = await this.connectionSettingsUpdateRaw(requestParameters, initOverrides)
return await response.value()
}
/**
* This endpoint includes all the configured integrations and contains the required assets to build an integrations page where your users can install integrations. OAuth2 supported integrations will contain authorize and revoke links to handle the authentication flows.
* Get all connections
*/
async connectionsAllRaw(
requestParameters: VaultApiConnectionsAllRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<GetConnectionsResponse>> {
const queryParameters: any = {}
if (requestParameters.api !== undefined) {
queryParameters['api'] = requestParameters.api
}
if (requestParameters.configured !== undefined) {
queryParameters['configured'] = requestParameters.configured
}
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 (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/vault/connections`,
method: 'GET',
headers: headerParameters,
query: queryParameters
},
initOverrides
)
return new runtime.JSONApiResponse(response, jsonValue =>
GetConnectionsResponseFromJSON(jsonValue)
)
}
/**
* This endpoint includes all the configured integrations and contains the required assets to build an integrations page where your users can install integrations. OAuth2 supported integrations will contain authorize and revoke links to handle the authentication flows.
* Get all connections
*/
async connectionsAll(
requestParameters: VaultApiConnectionsAllRequest = {},
initOverrides?: RequestInit
): Promise<GetConnectionsResponse> {
const response = await this.connectionsAllRaw(requestParameters, initOverrides)
return await response.value()
}
/**
* Deletes a connection
* Deletes a connection
*/
async connectionsDeleteRaw(
requestParameters: VaultApiConnectionsDeleteRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<void>> {
if (requestParameters.serviceId === null || requestParameters.serviceId === undefined) {
throw new runtime.RequiredError(
'serviceId',
'Required parameter requestParameters.serviceId was null or undefined when calling connectionsDelete.'
)
}
if (requestParameters.unifiedApi === null || requestParameters.unifiedApi === undefined) {
throw new runtime.RequiredError(
'unifiedApi',
'Required parameter requestParameters.unifiedApi was null or undefined when calling connectionsDelete.'
)
}
const queryParameters: any = {}
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 (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/vault/connections/{unified_api}/{service_id}`
.replace(`{${'service_id'}}`, encodeURIComponent(String(requestParameters.serviceId)))
.replace(`{${'unified_api'}}`, encodeURIComponent(String(requestParameters.unifiedApi))),
method: 'DELETE',
headers: headerParameters,
query: queryParameters
},
initOverrides
)
return new runtime.VoidApiResponse(response)
}
/**
* Deletes a connection
* Deletes a connection
*/
async connectionsDelete(
requestParameters: VaultApiConnectionsDeleteRequest,
initOverrides?: RequestInit
): Promise<void> {
await this.connectionsDeleteRaw(requestParameters, initOverrides)
}
/**
* Import an authorized connection.
* Import connection
*/
async connectionsImportRaw(
requestParameters: VaultApiConnectionsImportRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<CreateConnectionResponse>> {
if (requestParameters.serviceId === null || requestParameters.serviceId === undefined) {
throw new runtime.RequiredError(
'serviceId',
'Required parameter requestParameters.serviceId was null or undefined when calling connectionsImport.'
)
}
if (requestParameters.unifiedApi === null || requestParameters.unifiedApi === undefined) {
throw new runtime.RequiredError(
'unifiedApi',
'Required parameter requestParameters.unifiedApi was null or undefined when calling connectionsImport.'
)
}
if (requestParameters.connection === null || requestParameters.connection === undefined) {
throw new runtime.RequiredError(
'connection',
'Required parameter requestParameters.connection was null or undefined when calling connectionsImport.'
)
}
const queryParameters: any = {}
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 (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/vault/connections/{unified_api}/{service_id}/import`
.replace(`{${'service_id'}}`, encodeURIComponent(String(requestParameters.serviceId)))
.replace(`{${'unified_api'}}`, encodeURIComponent(String(requestParameters.unifiedApi))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: ConnectionImportDataToJSON(requestParameters.connection)
},
initOverrides
)
return new runtime.JSONApiResponse(response, jsonValue =>
CreateConnectionResponseFromJSON(jsonValue)
)
}
/**
* Import an authorized connection.
* Import connection
*/
async connectionsImport(
requestParameters: VaultApiConnectionsImportRequest,
initOverrides?: RequestInit
): Promise<CreateConnectionResponse> {
const response = await this.connectionsImportRaw(requestParameters, initOverrides)
return await response.value()
}
/**
* Get a connection
* Get connection
*/
async connectionsOneRaw(
requestParameters: VaultApiConnectionsOneRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<GetConnectionResponse>> {
if (requestParameters.serviceId === null || requestParameters.serviceId === undefined) {
throw new runtime.RequiredError(
'serviceId',
'Required parameter requestParameters.serviceId was null or undefined when calling connectionsOne.'
)
}
if (requestParameters.unifiedApi === null || requestParameters.unifiedApi === undefined) {
throw new runtime.RequiredError(
'unifiedApi',
'Required parameter requestParameters.unifiedApi was null or undefined when calling connectionsOne.'
)
}
const queryParameters: any = {}
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 (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/vault/connections/{unified_api}/{service_id}`
.replace(`{${'service_id'}}`, encodeURIComponent(String(requestParameters.serviceId)))
.replace(`{${'unified_api'}}`, encodeURIComponent(String(requestParameters.unifiedApi))),
method: 'GET',
headers: headerParameters,
query: queryParameters
},
initOverrides
)
return new runtime.JSONApiResponse(response, jsonValue =>
GetConnectionResponseFromJSON(jsonValue)
)
}
/**
* Get a connection
* Get connection
*/
async connectionsOne(
requestParameters: VaultApiConnectionsOneRequest,
initOverrides?: RequestInit
): Promise<GetConnectionResponse> {
const response = await this.connectionsOneRaw(requestParameters, initOverrides)
return await response.value()
}
/**
* Triggers exchanging persisted connection credentials for an access token and store it in Vault. Currently supported for connections with the `client_credentials` or `password` OAuth grant type. Note: - Do not include any credentials in the request body. This operation does not persist changes, but only triggers the exchange of persisted connection credentials for an access token. - The access token will not be returned in the response. A 200 response code indicates the authorization was successful and that a valid access token was stored on the connection. - The access token will be used for subsequent API requests.
* Authorize Access Token
*/
async connectionsTokenRaw(
requestParameters: VaultApiConnectionsTokenRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<GetConnectionResponse>> {
if (requestParameters.serviceId === null || requestParameters.serviceId === undefined) {
throw new runtime.RequiredError(
'serviceId',
'Required parameter requestParameters.serviceId was null or undefined when calling connectionsToken.'
)
}
if (requestParameters.unifiedApi === null || requestParameters.unifiedApi === undefined) {
throw new runtime.RequiredError(
'unifiedApi',
'Required parameter requestParameters.unifiedApi was null or undefined when calling connectionsToken.'
)
}
const queryParameters: any = {}
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 (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/vault/connections/{unified_api}/{service_id}/token`
.replace(`{${'service_id'}}`, encodeURIComponent(String(requestParameters.serviceId)))
.replace(`{${'unified_api'}}`, encodeURIComponent(String(requestParameters.unifiedApi))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: requestParameters.body as any
},
initOverrides
)
return new runtime.JSONApiResponse(response, jsonValue =>
GetConnectionResponseFromJSON(jsonValue)
)
}
/**
* Triggers exchanging persisted connection credentials for an access token and store it in Vault. Currently supported for connections with the `client_credentials` or `password` OAuth grant type. Note: - Do not include any credentials in the request body. This operation does not persist changes, but only triggers the exchange of persisted connection credentials for an access token. - The access token will not be returned in the response. A 200 response code indicates the authorization was successful and that a valid access token was stored on the connection. - The access token will be used for subsequent API requests.
* Authorize Access Token
*/
async connectionsToken(
requestParameters: VaultApiConnectionsTokenRequest,
initOverrides?: RequestInit
): Promise<GetConnectionResponse> {
const response = await this.connectionsTokenRaw(requestParameters, initOverrides)
return await response.value()
}
/**
* Update a connection
* Update connection
*/
async connectionsUpdateRaw(
requestParameters: VaultApiConnectionsUpdateRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<UpdateConnectionResponse>> {
if (requestParameters.serviceId === null || requestParameters.serviceId === undefined) {
throw new runtime.RequiredError(
'serviceId',
'Required parameter requestParameters.serviceId was null or undefined when calling connectionsUpdate.'
)
}
if (requestParameters.unifiedApi === null || requestParameters.unifiedApi === undefined) {
throw new runtime.RequiredError(
'unifiedApi',
'Required parameter requestParameters.unifiedApi was null or undefined when calling connectionsUpdate.'
)
}
if (requestParameters.connection === null || requestParameters.connection === undefined) {
throw new runtime.RequiredError(
'connection',
'Required parameter requestParameters.connection was null or undefined when calling connectionsUpdate.'
)
}
const queryParameters: any = {}
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 (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/vault/connections/{unified_api}/{service_id}`
.replace(`{${'service_id'}}`, encodeURIComponent(String(requestParameters.serviceId)))
.replace(`{${'unified_api'}}`, encodeURIComponent(String(requestParameters.unifiedApi))),
method: 'PATCH',
headers: headerParameters,
query: queryParameters,
body: ConnectionToJSON(requestParameters.connection)
},
initOverrides
)
return new runtime.JSONApiResponse(response, jsonValue =>
UpdateConnectionResponseFromJSON(jsonValue)
)
}
/**
* Update a connection
* Update connection
*/
async connectionsUpdate(
requestParameters: VaultApiConnectionsUpdateRequest,
initOverrides?: RequestInit
): Promise<UpdateConnectionResponse> {
const response = await this.connectionsUpdateRaw(requestParameters, initOverrides)
return await response.value()
}
/**
* Get consumer request counts within a given datetime range.
* Consumer request counts
*/
async consumerRequestCountsAllRaw(
requestParameters: VaultApiConsumerRequestCountsAllRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<ConsumerRequestCountsInDateRangeResponse>> {
if (requestParameters.consumerId === null || requestParameters.consumerId === undefined) {
throw new runtime.RequiredError(
'consumerId',
'Required parameter requestParameters.consumerId was null or undefined when calling consumerRequestCountsAll.'
)
}
if (requestParameters.startDatetime === null || requestParameters.startDatetime === undefined) {
throw new runtime.RequiredError(
'startDatetime',
'Required parameter requestParameters.startDatetime was null or undefined when calling consumerRequestCountsAll.'
)
}
if (requestParameters.endDatetime === null || requestParameters.endDatetime === undefined) {
throw new runtime.RequiredError(
'endDatetime',
'Required parameter requestParameters.endDatetime was null or undefined when calling consumerRequestCountsAll.'
)
}
const queryParameters: any = {}
if (requestParameters.startDatetime !== undefined) {
queryParameters['start_datetime'] = requestParameters.startDatetime
}
if (requestParameters.endDatetime !== undefined) {
queryParameters['end_datetime'] = requestParameters.endDatetime
}
const headerParameters: runtime.HTTPHeaders = {}
if (requestParameters.appId !== undefined && requestParameters.appId !== null) {
headerParameters['x-apideck-app-id'] = String(requestParameters.appId)
}
if (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/vault/consumers/{consumer_id}/stats`.replace(
`{${'consumer_id'}}`,
encodeURIComponent(String(requestParameters.consumerId))
),
method: 'GET',
headers: headerParameters,
query: queryParameters
},
initOverrides
)
return new runtime.JSONApiResponse(response, jsonValue =>
ConsumerRequestCountsInDateRangeResponseFromJSON(jsonValue)
)
}
/**
* Get consumer request counts within a given datetime range.
* Consumer request counts
*/
async consumerRequestCountsAll(
requestParameters: VaultApiConsumerRequestCountsAllRequest,
initOverrides?: RequestInit
): Promise<ConsumerRequestCountsInDateRangeResponse> {
const response = await this.consumerRequestCountsAllRaw(requestParameters, initOverrides)
return await response.value()
}
/**
* Create a consumer
* Create consumer
*/
async consumersAddRaw(
requestParameters: VaultApiConsumersAddRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<CreateConsumerResponse>> {
if (requestParameters.consumer === null || requestParameters.consumer === undefined) {
throw new runtime.RequiredError(
'consumer',
'Required parameter requestParameters.consumer was null or undefined when calling consumersAdd.'
)
}
const queryParameters: any = {}
const headerParameters: runtime.HTTPHeaders = {}
headerParameters['Content-Type'] = 'application/json'
if (requestParameters.appId !== undefined && requestParameters.appId !== null) {
headerParameters['x-apideck-app-id'] = String(requestParameters.appId)
}
if (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/vault/consumers`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: ConsumerToJSON(requestParameters.consumer)
},
initOverrides
)
return new runtime.JSONApiResponse(response, jsonValue =>
CreateConsumerResponseFromJSON(jsonValue)
)
}
/**
* Create a consumer
* Create consumer
*/
async consumersAdd(
requestParameters: VaultApiConsumersAddRequest,
initOverrides?: RequestInit
): Promise<CreateConsumerResponse> {
const response = await this.consumersAddRaw(requestParameters, initOverrides)
return await response.value()
}
/**
* This endpoint includes all application consumers, along with an aggregated count of requests made.
* Get all consumers
*/
async consumersAllRaw(
requestParameters: VaultApiConsumersAllRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<GetConsumersResponse>> {
const queryParameters: any = {}
if (requestParameters.cursor !== undefined) {
queryParameters['cursor'] = requestParameters.cursor
}
if (requestParameters.limit !== undefined) {
queryParameters['limit'] = requestParameters.limit
}
const headerParameters: runtime.HTTPHeaders = {}
if (requestParameters.appId !== undefined && requestParameters.appId !== null) {
headerParameters['x-apideck-app-id'] = String(requestParameters.appId)
}
if (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/vault/consumers`,
method: 'GET',
headers: headerParameters,
query: queryParameters
},
initOverrides
)
return new runtime.JSONApiResponse(response, jsonValue =>
GetConsumersResponseFromJSON(jsonValue)
)
}
/**
* This endpoint includes all application consumers, along with an aggregated count of requests made.
* Get all consumers
*/
async consumersAll(
requestParameters: VaultApiConsumersAllRequest = {},
initOverrides?: RequestInit
): Promise<GetConsumersResponse> {
const response = await this.consumersAllRaw(requestParameters, initOverrides)
return await response.value()
}
/**
* Delete consumer and all their connections, including credentials.
* Delete consumer
*/
async consumersDeleteRaw(
requestParameters: VaultApiConsumersDeleteRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<DeleteConsumerResponse>> {
if (requestParameters.consumerId === null || requestParameters.consumerId === undefined) {
throw new runtime.RequiredError(
'consumerId',
'Required parameter requestParameters.consumerId was null or undefined when calling consumersDelete.'
)
}
const queryParameters: any = {}
const headerParameters: runtime.HTTPHeaders = {}
if (requestParameters.appId !== undefined && requestParameters.appId !== null) {
headerParameters['x-apideck-app-id'] = String(requestParameters.appId)
}
if (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/vault/consumers/{consumer_id}`.replace(
`{${'consumer_id'}}`,
encodeURIComponent(String(requestParameters.consumerId))
),
method: 'DELETE',
headers: headerParameters,
query: queryParameters
},
initOverrides
)
return new runtime.JSONApiResponse(response, jsonValue =>
DeleteConsumerResponseFromJSON(jsonValue)
)
}
/**
* Delete consumer and all their connections, including credentials.
* Delete consumer
*/
async consumersDelete(
requestParameters: VaultApiConsumersDeleteRequest,
initOverrides?: RequestInit
): Promise<DeleteConsumerResponse> {
const response = await this.consumersDeleteRaw(requestParameters, initOverrides)
return await response.value()
}
/**
* Consumer detail including their aggregated counts with the connections they have authorized.
* Get consumer
*/
async consumersOneRaw(
requestParameters: VaultApiConsumersOneRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<GetConsumerResponse>> {
if (requestParameters.consumerId === null || requestParameters.consumerId === undefined) {
throw new runtime.RequiredError(
'consumerId',
'Required parameter requestParameters.consumerId was null or undefined when calling consumersOne.'
)
}
const queryParameters: any = {}
const headerParameters: runtime.HTTPHeaders = {}
if (requestParameters.appId !== undefined && requestParameters.appId !== null) {
headerParameters['x-apideck-app-id'] = String(requestParameters.appId)
}
if (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/vault/consumers/{consumer_id}`.replace(
`{${'consumer_id'}}`,
encodeURIComponent(String(requestParameters.consumerId))
),
method: 'GET',
headers: headerParameters,
query: queryParameters
},
initOverrides
)
return new runtime.JSONApiResponse(response, jsonValue =>
GetConsumerResponseFromJSON(jsonValue)
)
}
/**
* Consumer detail including their aggregated counts with the connections they have authorized.
* Get consumer
*/
async consumersOne(
requestParameters: VaultApiConsumersOneRequest,
initOverrides?: RequestInit
): Promise<GetConsumerResponse> {
const response = await this.consumersOneRaw(requestParameters, initOverrides)
return await response.value()
}
/**
* Update consumer metadata such as name and email.
* Update consumer
*/
async consumersUpdateRaw(
requestParameters: VaultApiConsumersUpdateRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<UpdateConsumerResponse>> {
if (requestParameters.consumerId === null || requestParameters.consumerId === undefined) {
throw new runtime.RequiredError(
'consumerId',
'Required parameter requestParameters.consumerId was null or undefined when calling consumersUpdate.'
)
}
if (requestParameters.consumer === null || requestParameters.consumer === undefined) {
throw new runtime.RequiredError(
'consumer',
'Required parameter requestParameters.consumer was null or undefined when calling consumersUpdate.'
)
}
const queryParameters: any = {}
const headerParameters: runtime.HTTPHeaders = {}
headerParameters['Content-Type'] = 'application/json'
if (requestParameters.appId !== undefined && requestParameters.appId !== null) {
headerParameters['x-apideck-app-id'] = String(requestParameters.appId)
}
if (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/vault/consumers/{consumer_id}`.replace(
`{${'consumer_id'}}`,
encodeURIComponent(String(requestParameters.consumerId))
),
method: 'PATCH',
headers: headerParameters,
query: queryParameters,
body: UpdateConsumerRequestToJSON(requestParameters.consumer)
},
initOverrides
)
return new runtime.JSONApiResponse(response, jsonValue =>
UpdateConsumerResponseFromJSON(jsonValue)
)
}
/**
* Update consumer metadata such as name and email.
* Update consumer
*/
async consumersUpdate(
requestParameters: VaultApiConsumersUpdateRequest,
initOverrides?: RequestInit
): Promise<UpdateConsumerResponse> {
const response = await this.consumersUpdateRaw(requestParameters, initOverrides)
return await response.value()
}
/**
* This endpoint creates a callback state that can be used to issue requests to the callback endpoint.
* Create Callback State
*/
async createCallbackStateRaw(
requestParameters: VaultApiCreateCallbackStateRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<CreateCallbackStateResponse>> {
if (requestParameters.serviceId === null || requestParameters.serviceId === undefined) {
throw new runtime.RequiredError(
'serviceId',
'Required parameter requestParameters.serviceId was null or undefined when calling createCallbackState.'
)
}
if (requestParameters.unifiedApi === null || requestParameters.unifiedApi === undefined) {
throw new runtime.RequiredError(
'unifiedApi',
'Required parameter requestParameters.unifiedApi was null or undefined when calling createCallbackState.'
)
}
if (
requestParameters.createCallbackState === null ||
requestParameters.createCallbackState === undefined
) {
throw new runtime.RequiredError(
'createCallbackState',
'Required parameter requestParameters.createCallbackState was null or undefined when calling createCallbackState.'
)
}
const queryParameters: any = {}
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 (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/vault/connections/{unified_api}/{service_id}/callback-state`
.replace(`{${'service_id'}}`, encodeURIComponent(String(requestParameters.serviceId)))
.replace(`{${'unified_api'}}`, encodeURIComponent(String(requestParameters.unifiedApi))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: CreateCallbackStateToJSON(requestParameters.createCallbackState)
},
initOverrides
)
return new runtime.JSONApiResponse(response, jsonValue =>
CreateCallbackStateResponseFromJSON(jsonValue)
)
}
/**
* This endpoint creates a callback state that can be used to issue requests to the callback endpoint.
* Create Callback State
*/
async createCallbackState(
requestParameters: VaultApiCreateCallbackStateRequest,
initOverrides?: RequestInit
): Promise<CreateCallbackStateResponse> {
const response = await this.createCallbackStateRaw(requestParameters, initOverrides)
return await response.value()
}
/**
* This endpoint returns an custom fields on a connection resource.
* Get resource custom fields
*/
async customFieldsAllRaw(
requestParameters: VaultApiCustomFieldsAllRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<GetCustomFieldsResponse>> {
if (requestParameters.unifiedApi === null || requestParameters.unifiedApi === undefined) {
throw new runtime.RequiredError(
'unifiedApi',
'Required parameter requestParameters.unifiedApi was null or undefined when calling customFieldsAll.'
)
}
if (requestParameters.serviceId === null || requestParameters.serviceId === undefined) {
throw new runtime.RequiredError(
'serviceId',
'Required parameter requestParameters.serviceId was null or undefined when calling customFieldsAll.'
)
}
if (requestParameters.resource === null || requestParameters.resource === undefined) {
throw new runtime.RequiredError(
'resource',
'Required parameter requestParameters.resource was null or undefined when calling customFieldsAll.'
)
}
const queryParameters: any = {}
if (requestParameters.resourceId !== undefined) {
queryParameters['resource_id'] = requestParameters.resourceId
}
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 (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/vault/connections/{unified_api}/{service_id}/{resource}/custom-fields`
.replace(`{${'unified_api'}}`, encodeURIComponent(String(requestParameters.unifiedApi)))
.replace(`{${'service_id'}}`, encodeURIComponent(String(requestParameters.serviceId)))
.replace(`{${'resource'}}`, encodeURIComponent(String(requestParameters.resource))),
method: 'GET',
headers: headerParameters,
query: queryParameters
},
initOverrides
)
return new runtime.JSONApiResponse(response, jsonValue =>
GetCustomFieldsResponseFromJSON(jsonValue)
)
}
/**
* This endpoint returns an custom fields on a connection resource.
* Get resource custom fields
*/
async customFieldsAll(
requestParameters: VaultApiCustomFieldsAllRequest,
initOverrides?: RequestInit
): Promise<GetCustomFieldsResponse> {
const response = await this.customFieldsAllRaw(requestParameters, initOverrides)
return await response.value()
}
/**
* This endpoint returns a list of custom mappings.
* List custom mappings
*/
async customMappingsAllRaw(
requestParameters: VaultApiCustomMappingsAllRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<GetCustomMappingsResponse>> {
if (requestParameters.unifiedApi === null || requestParameters.unifiedApi === undefined) {
throw new runtime.RequiredError(
'unifiedApi',
'Required parameter requestParameters.unifiedApi was null or undefined when calling customMappingsAll.'
)
}
if (requestParameters.serviceId === null || requestParameters.serviceId === undefined) {
throw new runtime.RequiredError(
'serviceId',
'Required parameter requestParameters.serviceId was null or undefined when calling customMappingsAll.'
)
}
const queryParameters: any = {}
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 (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/vault/custom-mappings/{unified_api}/{service_id}`
.replace(`{${'unified_api'}}`, encodeURIComponent(String(requestParameters.unifiedApi)))
.replace(`{${'service_id'}}`, encodeURIComponent(String(requestParameters.serviceId))),
method: 'GET',
headers: headerParameters,
query: queryParameters
},
initOverrides
)
return new runtime.JSONApiResponse(response, jsonValue =>
GetCustomMappingsResponseFromJSON(jsonValue)
)
}
/**
* This endpoint returns a list of custom mappings.
* List custom