/* tslint:disable */ /* eslint-disable */ /** * Fabric API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * The version of the OpenAPI document: 1.0.0 * * * 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 { CopyResources202Response, CopyResourcesRequest, FilterResourcesRequest, MoveResourcesRequest, RecoverResourcesRequest, RemoveResourcesRequest, ReorderResourcesRequest, ResourceDetail, ResourceFilterResponse, Search200Response, SearchRequest, UpdateResourceRequest, } from '../models/index'; import { CopyResources202ResponseFromJSON, CopyResources202ResponseToJSON, CopyResourcesRequestFromJSON, CopyResourcesRequestToJSON, FilterResourcesRequestFromJSON, FilterResourcesRequestToJSON, MoveResourcesRequestFromJSON, MoveResourcesRequestToJSON, RecoverResourcesRequestFromJSON, RecoverResourcesRequestToJSON, RemoveResourcesRequestFromJSON, RemoveResourcesRequestToJSON, ReorderResourcesRequestFromJSON, ReorderResourcesRequestToJSON, ResourceDetailFromJSON, ResourceDetailToJSON, ResourceFilterResponseFromJSON, ResourceFilterResponseToJSON, Search200ResponseFromJSON, Search200ResponseToJSON, SearchRequestFromJSON, SearchRequestToJSON, UpdateResourceRequestFromJSON, UpdateResourceRequestToJSON, } from '../models/index'; export type CopyResourcesOperationRequest = Omit; export type FilterResourcesOperationRequest = Omit; export type GetResourceRequest = Omit<{ resourceId: string; baseId?: string; snapshotAt?: string | null; xSnapshotAt?: Date; }, 'baseId'>; export type MoveResourcesOperationRequest = Omit; export type RecoverResourcesOperationRequest = Omit; export type RemoveResourcesOperationRequest = Omit; export type ReorderResourcesOperationRequest = Omit; export type SearchOperationRequest = Omit; export type UpdateResourceOperationRequest = Omit; /** * */ export class ResourcesApi extends runtime.BaseAPI { /** * Start an asynchronous copy of one or more resources to a destination folder. * Copy resources */ async copyRaw(requestParameters: CopyResourcesOperationRequest, initOverrides?: runtime.InitOverrides | runtime.InitOverrideFunction): Promise> { if (requestParameters['destinationParentId'] == null) { throw new runtime.RequiredError( 'destinationParentId', 'Required parameter "destinationParentId" was null or undefined when calling ().' ); } const queryParameters: any = {}; if (requestParameters['accessToken'] != null) { queryParameters['accessToken'] = requestParameters['accessToken']; } const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; if (requestParameters['baseId'] != null) { headerParameters['X-Fabric-Base-Id'] = String(requestParameters['baseId']); } if (this.configuration && this.configuration.accessToken) { // oauth required headerParameters["Authorization"] = await this.configuration.accessToken("OAuth2", []); } if (this.configuration && this.configuration.apiKey) { headerParameters["X-Api-Key"] = await this.configuration.apiKey("X-Api-Key"); // ApiKey authentication } let urlPath = `/v2/resources/{destinationParentId}/copy`; urlPath = urlPath.replace(`{${"destinationParentId"}}`, encodeURIComponent(String(requestParameters['destinationParentId']))); const response = await this.request({ path: urlPath, method: 'PUT', headers: headerParameters, query: queryParameters, body: CopyResourcesRequestToJSON(requestParameters), }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => CopyResources202ResponseFromJSON(jsonValue)); } /** * Start an asynchronous copy of one or more resources to a destination folder. * Copy resources */ async copy(requestParameters: CopyResourcesOperationRequest, initOverrides?: runtime.InitOverrides | runtime.InitOverrideFunction): Promise { const response = await this.copyRaw(requestParameters, initOverrides); return await response.value(); } /** * Filter and list resources using advanced criteria such as kind, tags, and date ranges. * List resources */ async filterRaw(requestParameters: FilterResourcesOperationRequest, initOverrides?: runtime.InitOverrides | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; if (requestParameters['baseId'] != null) { headerParameters['X-Fabric-Base-Id'] = String(requestParameters['baseId']); } if (requestParameters['xSnapshotAt'] != null) { headerParameters['X-Snapshot-At'] = String(requestParameters['xSnapshotAt']); } if (this.configuration && this.configuration.accessToken) { // oauth required headerParameters["Authorization"] = await this.configuration.accessToken("OAuth2", []); } if (this.configuration && this.configuration.apiKey) { headerParameters["X-Api-Key"] = await this.configuration.apiKey("X-Api-Key"); // ApiKey authentication } let urlPath = `/v2/resources/filter`; const response = await this.request({ path: urlPath, method: 'POST', headers: headerParameters, query: queryParameters, body: FilterResourcesRequestToJSON(requestParameters), }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => ResourceFilterResponseFromJSON(jsonValue)); } /** * Filter and list resources using advanced criteria such as kind, tags, and date ranges. * List resources */ async filter(requestParameters: FilterResourcesOperationRequest, initOverrides?: runtime.InitOverrides | runtime.InitOverrideFunction): Promise { const response = await this.filterRaw(requestParameters, initOverrides); return await response.value(); } /** * Retrieve the full details of a specific resource by ID. * Get resource */ async getRaw(requestParameters: GetResourceRequest, initOverrides?: runtime.InitOverrides | runtime.InitOverrideFunction): Promise> { if (requestParameters['resourceId'] == null) { throw new runtime.RequiredError( 'resourceId', 'Required parameter "resourceId" was null or undefined when calling ().' ); } const queryParameters: any = {}; if (requestParameters['snapshotAt'] != null) { queryParameters['snapshotAt'] = requestParameters['snapshotAt']; } const headerParameters: runtime.HTTPHeaders = {}; if (requestParameters['baseId'] != null) { headerParameters['X-Fabric-Base-Id'] = String(requestParameters['baseId']); } if (requestParameters['xSnapshotAt'] != null) { headerParameters['X-Snapshot-At'] = String(requestParameters['xSnapshotAt']); } if (this.configuration && this.configuration.accessToken) { // oauth required headerParameters["Authorization"] = await this.configuration.accessToken("OAuth2", []); } if (this.configuration && this.configuration.apiKey) { headerParameters["X-Api-Key"] = await this.configuration.apiKey("X-Api-Key"); // ApiKey authentication } let urlPath = `/v2/resources/{resourceId}`; urlPath = urlPath.replace(`{${"resourceId"}}`, encodeURIComponent(String(requestParameters['resourceId']))); const response = await this.request({ path: urlPath, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => ResourceDetailFromJSON(jsonValue)); } /** * Retrieve the full details of a specific resource by ID. * Get resource */ async get(requestParameters: GetResourceRequest, initOverrides?: runtime.InitOverrides | runtime.InitOverrideFunction): Promise { const response = await this.getRaw(requestParameters, initOverrides); return await response.value(); } /** * Move one or more resources to a different parent folder. * Move resources */ async moveRaw(requestParameters: MoveResourcesOperationRequest, initOverrides?: runtime.InitOverrides | runtime.InitOverrideFunction): Promise> { if (requestParameters['destinationParentId'] == null) { throw new runtime.RequiredError( 'destinationParentId', 'Required parameter "destinationParentId" was null or undefined when calling ().' ); } const queryParameters: any = {}; if (requestParameters['accessToken'] != null) { queryParameters['accessToken'] = requestParameters['accessToken']; } const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; if (requestParameters['baseId'] != null) { headerParameters['X-Fabric-Base-Id'] = String(requestParameters['baseId']); } if (this.configuration && this.configuration.accessToken) { // oauth required headerParameters["Authorization"] = await this.configuration.accessToken("OAuth2", []); } if (this.configuration && this.configuration.apiKey) { headerParameters["X-Api-Key"] = await this.configuration.apiKey("X-Api-Key"); // ApiKey authentication } let urlPath = `/v2/resources/{destinationParentId}/move`; urlPath = urlPath.replace(`{${"destinationParentId"}}`, encodeURIComponent(String(requestParameters['destinationParentId']))); const response = await this.request({ path: urlPath, method: 'PUT', headers: headerParameters, query: queryParameters, body: MoveResourcesRequestToJSON(requestParameters), }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Move one or more resources to a different parent folder. * Move resources */ async move(requestParameters: MoveResourcesOperationRequest, initOverrides?: runtime.InitOverrides | runtime.InitOverrideFunction): Promise { await this.moveRaw(requestParameters, initOverrides); } /** * Restore previously deleted resources from the trash. * Recover resources */ async recoverRaw(requestParameters: RecoverResourcesOperationRequest, initOverrides?: runtime.InitOverrides | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; if (requestParameters['accessToken'] != null) { queryParameters['accessToken'] = requestParameters['accessToken']; } const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; if (requestParameters['baseId'] != null) { headerParameters['X-Fabric-Base-Id'] = String(requestParameters['baseId']); } if (this.configuration && this.configuration.accessToken) { // oauth required headerParameters["Authorization"] = await this.configuration.accessToken("OAuth2", []); } if (this.configuration && this.configuration.apiKey) { headerParameters["X-Api-Key"] = await this.configuration.apiKey("X-Api-Key"); // ApiKey authentication } let urlPath = `/v2/resources/recover`; const response = await this.request({ path: urlPath, method: 'POST', headers: headerParameters, query: queryParameters, body: RecoverResourcesRequestToJSON(requestParameters), }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Restore previously deleted resources from the trash. * Recover resources */ async recover(requestParameters: RecoverResourcesOperationRequest, initOverrides?: runtime.InitOverrides | runtime.InitOverrideFunction): Promise { await this.recoverRaw(requestParameters, initOverrides); } /** * Delete one or more resources by ID. Set `archive=true` to move to trash instead of permanent deletion. * Delete resources */ async removeRaw(requestParameters: RemoveResourcesOperationRequest, initOverrides?: runtime.InitOverrides | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; if (requestParameters['accessToken'] != null) { queryParameters['accessToken'] = requestParameters['accessToken']; } const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; if (requestParameters['baseId'] != null) { headerParameters['X-Fabric-Base-Id'] = String(requestParameters['baseId']); } if (this.configuration && this.configuration.accessToken) { // oauth required headerParameters["Authorization"] = await this.configuration.accessToken("OAuth2", []); } if (this.configuration && this.configuration.apiKey) { headerParameters["X-Api-Key"] = await this.configuration.apiKey("X-Api-Key"); // ApiKey authentication } let urlPath = `/v2/resources/delete`; const response = await this.request({ path: urlPath, method: 'POST', headers: headerParameters, query: queryParameters, body: RemoveResourcesRequestToJSON(requestParameters), }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Delete one or more resources by ID. Set `archive=true` to move to trash instead of permanent deletion. * Delete resources */ async remove(requestParameters: RemoveResourcesOperationRequest, initOverrides?: runtime.InitOverrides | runtime.InitOverrideFunction): Promise { await this.removeRaw(requestParameters, initOverrides); } /** * Reorder multiple resources within the same parent by specifying new positions. * Reorder resources */ async reorderRaw(requestParameters: ReorderResourcesOperationRequest, initOverrides?: runtime.InitOverrides | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; if (requestParameters['accessToken'] != null) { queryParameters['accessToken'] = requestParameters['accessToken']; } const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; if (requestParameters['baseId'] != null) { headerParameters['X-Fabric-Base-Id'] = String(requestParameters['baseId']); } if (this.configuration && this.configuration.accessToken) { // oauth required headerParameters["Authorization"] = await this.configuration.accessToken("OAuth2", []); } if (this.configuration && this.configuration.apiKey) { headerParameters["X-Api-Key"] = await this.configuration.apiKey("X-Api-Key"); // ApiKey authentication } let urlPath = `/v2/resources/position`; const response = await this.request({ path: urlPath, method: 'PATCH', headers: headerParameters, query: queryParameters, body: ReorderResourcesRequestToJSON(requestParameters), }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Reorder multiple resources within the same parent by specifying new positions. * Reorder resources */ async reorder(requestParameters: ReorderResourcesOperationRequest, initOverrides?: runtime.InitOverrides | runtime.InitOverrideFunction): Promise { await this.reorderRaw(requestParameters, initOverrides); } /** * Search through resources using multiple modes with filtering, pagination, and sorting. * Search */ async searchRaw(requestParameters: SearchOperationRequest, initOverrides?: runtime.InitOverrides | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; if (requestParameters['baseId'] != null) { headerParameters['X-Fabric-Base-Id'] = String(requestParameters['baseId']); } if (this.configuration && this.configuration.accessToken) { // oauth required headerParameters["Authorization"] = await this.configuration.accessToken("OAuth2", []); } if (this.configuration && this.configuration.apiKey) { headerParameters["X-Api-Key"] = await this.configuration.apiKey("X-Api-Key"); // ApiKey authentication } let urlPath = `/v2/search`; const response = await this.request({ path: urlPath, method: 'POST', headers: headerParameters, query: queryParameters, body: SearchRequestToJSON(requestParameters), }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => Search200ResponseFromJSON(jsonValue)); } /** * Search through resources using multiple modes with filtering, pagination, and sorting. * Search */ async search(requestParameters: SearchOperationRequest, initOverrides?: runtime.InitOverrides | runtime.InitOverrideFunction): Promise { const response = await this.searchRaw(requestParameters, initOverrides); return await response.value(); } /** * Update resource properties such as name, description, icon, cover, or position. * Update resource */ async patchRaw(requestParameters: UpdateResourceOperationRequest, initOverrides?: runtime.InitOverrides | runtime.InitOverrideFunction): Promise> { if (requestParameters['resourceId'] == null) { throw new runtime.RequiredError( 'resourceId', 'Required parameter "resourceId" was null or undefined when calling ().' ); } const queryParameters: any = {}; if (requestParameters['accessToken'] != null) { queryParameters['accessToken'] = requestParameters['accessToken']; } const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; if (requestParameters['baseId'] != null) { headerParameters['X-Fabric-Base-Id'] = String(requestParameters['baseId']); } if (this.configuration && this.configuration.accessToken) { // oauth required headerParameters["Authorization"] = await this.configuration.accessToken("OAuth2", []); } if (this.configuration && this.configuration.apiKey) { headerParameters["X-Api-Key"] = await this.configuration.apiKey("X-Api-Key"); // ApiKey authentication } let urlPath = `/v2/resources/{resourceId}`; urlPath = urlPath.replace(`{${"resourceId"}}`, encodeURIComponent(String(requestParameters['resourceId']))); const response = await this.request({ path: urlPath, method: 'PATCH', headers: headerParameters, query: queryParameters, body: UpdateResourceRequestToJSON(requestParameters), }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Update resource properties such as name, description, icon, cover, or position. * Update resource */ async patch(requestParameters: UpdateResourceOperationRequest, initOverrides?: runtime.InitOverrides | runtime.InitOverrideFunction): Promise { await this.patchRaw(requestParameters, initOverrides); } }