/* tslint:disable */ /* eslint-disable */ /** * Faraday REST API * The [Faraday](https://faraday.ai) API makes it easy to predict customer behavior programmatically. See our [API change policy](https://faraday.ai/legal). * * The version of the OpenAPI document: 1.0.0 * Contact: support@faraday.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 { ArchiveConfig, Atlas, AtlasMergePatch, AtlasPost, } from '../models'; export interface ArchiveAtlasRequest { atlasId: string; archiveConfig: ArchiveConfig; } export interface CreateAtlasRequest { atlasFields: AtlasPost; } export interface DeleteAtlasRequest { atlasId: string; } export interface ForceUpdateAtlasRequest { atlasId: string; } export interface GetAtlasRequest { atlasId: string; } export interface GetAtlasesRequest { ids?: Array; } export interface UnarchiveAtlasRequest { atlasId: string; archiveConfig: ArchiveConfig; } export interface UpdateAtlasRequest { atlasId: string; atlasFields: AtlasMergePatch; } /** * */ export class AtlasesApi extends runtime.BaseAPI { /** * Archive an atlas * Archive an atlas */ async archiveAtlasRaw(requestParameters: ArchiveAtlasRequest, ): Promise> { if (requestParameters.atlasId === null || requestParameters.atlasId === undefined) { throw new runtime.RequiredError('atlasId','Required parameter requestParameters.atlasId was null or undefined when calling archiveAtlas.'); } if (requestParameters.archiveConfig === null || requestParameters.archiveConfig === undefined) { throw new runtime.RequiredError('archiveConfig','Required parameter requestParameters.archiveConfig was null or undefined when calling archiveAtlas.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; if (this.configuration && this.configuration.accessToken) { const token = this.configuration.accessToken; const tokenString = await token("bearer", []); if (tokenString) { headerParameters["Authorization"] = `Bearer ${tokenString}`; } } const response = await this.request({ path: `/atlases/{atlas_id}/archive`.replace(`{${"atlas_id"}}`, encodeURIComponent(String(requestParameters.atlasId))), method: 'POST', headers: headerParameters, query: queryParameters, body: requestParameters.archiveConfig, }); return new runtime.VoidApiResponse(response); } /** * Archive an atlas * Archive an atlas */ async archiveAtlas(atlasId: string, archiveConfig: ArchiveConfig, ): Promise { await this.archiveAtlasRaw({ atlasId: atlasId, archiveConfig: archiveConfig }, ); } /** * Create a new atlas * Create atlas */ async createAtlasRaw(requestParameters: CreateAtlasRequest, ): Promise> { if (requestParameters.atlasFields === null || requestParameters.atlasFields === undefined) { throw new runtime.RequiredError('atlasFields','Required parameter requestParameters.atlasFields was null or undefined when calling createAtlas.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; if (this.configuration && this.configuration.accessToken) { const token = this.configuration.accessToken; const tokenString = await token("bearer", []); if (tokenString) { headerParameters["Authorization"] = `Bearer ${tokenString}`; } } const response = await this.request({ path: `/atlases`, method: 'POST', headers: headerParameters, query: queryParameters, body: requestParameters.atlasFields, }); return new runtime.JSONApiResponse(response); } /** * Create a new atlas * Create atlas */ async createAtlas(atlasFields: AtlasPost, ): Promise { const response = await this.createAtlasRaw({ atlasFields: atlasFields }, ); return await response.value(); } /** * Delete an atlas */ async deleteAtlasRaw(requestParameters: DeleteAtlasRequest, ): Promise> { if (requestParameters.atlasId === null || requestParameters.atlasId === undefined) { throw new runtime.RequiredError('atlasId','Required parameter requestParameters.atlasId was null or undefined when calling deleteAtlas.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.accessToken) { const token = this.configuration.accessToken; const tokenString = await token("bearer", []); if (tokenString) { headerParameters["Authorization"] = `Bearer ${tokenString}`; } } const response = await this.request({ path: `/atlases/{atlas_id}`.replace(`{${"atlas_id"}}`, encodeURIComponent(String(requestParameters.atlasId))), method: 'DELETE', headers: headerParameters, query: queryParameters, }); return new runtime.VoidApiResponse(response); } /** * Delete an atlas */ async deleteAtlas(atlasId: string, ): Promise { await this.deleteAtlasRaw({ atlasId: atlasId }, ); } /** * Trigger a rerun for this resource. Faraday automatically updates resources when their config changes, but this option is available in case of transient errors. * Trigger a rerun for this resource. */ async forceUpdateAtlasRaw(requestParameters: ForceUpdateAtlasRequest, ): Promise> { if (requestParameters.atlasId === null || requestParameters.atlasId === undefined) { throw new runtime.RequiredError('atlasId','Required parameter requestParameters.atlasId was null or undefined when calling forceUpdateAtlas.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.accessToken) { const token = this.configuration.accessToken; const tokenString = await token("bearer", []); if (tokenString) { headerParameters["Authorization"] = `Bearer ${tokenString}`; } } const response = await this.request({ path: `/atlases/{atlas_id}/force_update`.replace(`{${"atlas_id"}}`, encodeURIComponent(String(requestParameters.atlasId))), method: 'POST', headers: headerParameters, query: queryParameters, }); return new runtime.VoidApiResponse(response); } /** * Trigger a rerun for this resource. Faraday automatically updates resources when their config changes, but this option is available in case of transient errors. * Trigger a rerun for this resource. */ async forceUpdateAtlas(atlasId: string, ): Promise { await this.forceUpdateAtlasRaw({ atlasId: atlasId }, ); } /** * Retrieve details on a specific atlas * Retrieve an atlas */ async getAtlasRaw(requestParameters: GetAtlasRequest, ): Promise> { if (requestParameters.atlasId === null || requestParameters.atlasId === undefined) { throw new runtime.RequiredError('atlasId','Required parameter requestParameters.atlasId was null or undefined when calling getAtlas.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.accessToken) { const token = this.configuration.accessToken; const tokenString = await token("bearer", []); if (tokenString) { headerParameters["Authorization"] = `Bearer ${tokenString}`; } } const response = await this.request({ path: `/atlases/{atlas_id}`.replace(`{${"atlas_id"}}`, encodeURIComponent(String(requestParameters.atlasId))), method: 'GET', headers: headerParameters, query: queryParameters, }); return new runtime.JSONApiResponse(response); } /** * Retrieve details on a specific atlas * Retrieve an atlas */ async getAtlas(atlasId: string, ): Promise { const response = await this.getAtlasRaw({ atlasId: atlasId }, ); return await response.value(); } /** * Get a list of the atlases defined on the account * List atlases */ async getAtlasesRaw(requestParameters: GetAtlasesRequest, ): Promise>> { const queryParameters: any = {}; if (requestParameters.ids) { queryParameters['ids'] = requestParameters.ids; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.accessToken) { const token = this.configuration.accessToken; const tokenString = await token("bearer", []); if (tokenString) { headerParameters["Authorization"] = `Bearer ${tokenString}`; } } const response = await this.request({ path: `/atlases`, method: 'GET', headers: headerParameters, query: queryParameters, }); return new runtime.JSONApiResponse(response); } /** * Get a list of the atlases defined on the account * List atlases */ async getAtlases(ids?: Array, ): Promise> { const response = await this.getAtlasesRaw({ ids: ids }, ); return await response.value(); } /** * Unarchive an atlas * Unarchive an atlas */ async unarchiveAtlasRaw(requestParameters: UnarchiveAtlasRequest, ): Promise> { if (requestParameters.atlasId === null || requestParameters.atlasId === undefined) { throw new runtime.RequiredError('atlasId','Required parameter requestParameters.atlasId was null or undefined when calling unarchiveAtlas.'); } if (requestParameters.archiveConfig === null || requestParameters.archiveConfig === undefined) { throw new runtime.RequiredError('archiveConfig','Required parameter requestParameters.archiveConfig was null or undefined when calling unarchiveAtlas.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; if (this.configuration && this.configuration.accessToken) { const token = this.configuration.accessToken; const tokenString = await token("bearer", []); if (tokenString) { headerParameters["Authorization"] = `Bearer ${tokenString}`; } } const response = await this.request({ path: `/atlases/{atlas_id}/unarchive`.replace(`{${"atlas_id"}}`, encodeURIComponent(String(requestParameters.atlasId))), method: 'POST', headers: headerParameters, query: queryParameters, body: requestParameters.archiveConfig, }); return new runtime.VoidApiResponse(response); } /** * Unarchive an atlas * Unarchive an atlas */ async unarchiveAtlas(atlasId: string, archiveConfig: ArchiveConfig, ): Promise { await this.unarchiveAtlasRaw({ atlasId: atlasId, archiveConfig: archiveConfig }, ); } /** * Update an existing atlas * Update atlas */ async updateAtlasRaw(requestParameters: UpdateAtlasRequest, ): Promise> { if (requestParameters.atlasId === null || requestParameters.atlasId === undefined) { throw new runtime.RequiredError('atlasId','Required parameter requestParameters.atlasId was null or undefined when calling updateAtlas.'); } if (requestParameters.atlasFields === null || requestParameters.atlasFields === undefined) { throw new runtime.RequiredError('atlasFields','Required parameter requestParameters.atlasFields was null or undefined when calling updateAtlas.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/merge-patch+json'; if (this.configuration && this.configuration.accessToken) { const token = this.configuration.accessToken; const tokenString = await token("bearer", []); if (tokenString) { headerParameters["Authorization"] = `Bearer ${tokenString}`; } } const response = await this.request({ path: `/atlases/{atlas_id}`.replace(`{${"atlas_id"}}`, encodeURIComponent(String(requestParameters.atlasId))), method: 'PATCH', headers: headerParameters, query: queryParameters, body: requestParameters.atlasFields, }); return new runtime.JSONApiResponse(response); } /** * Update an existing atlas * Update atlas */ async updateAtlas(atlasId: string, atlasFields: AtlasMergePatch, ): Promise { const response = await this.updateAtlasRaw({ atlasId: atlasId, atlasFields: atlasFields }, ); return await response.value(); } }