diff --git a/api.ts b/api.ts index 79e3223..5ad2eb6 100644 --- a/api.ts +++ b/api.ts @@ -553,10 +553,10 @@ export interface AttachmentData { export interface AttachmentDataAttributes { /** * The underlying content of the attachment - * @type {FileAttachment | SceneViewStateAttachment} + * @type {FileAttachment} * @memberof AttachmentDataAttributes */ - content: FileAttachment | SceneViewStateAttachment; + content: FileAttachment; } /** * @@ -1227,10 +1227,10 @@ export type CreateAttachmentRequestDataTypeEnum = export interface CreateAttachmentRequestDataAttributes { /** * - * @type {WithFileContent | WithSceneViewStateContent} + * @type {WithFileContent} * @memberof CreateAttachmentRequestDataAttributes */ - withContent: WithFileContent | WithSceneViewStateContent; + withContent: WithFileContent; } /** * @@ -3522,11 +3522,18 @@ export interface DownloadUrlData { */ export interface DownloadUrlDataAttributes { /** - * + * Deprecated. Use `uri` instead. * @type {string} * @memberof DownloadUrlDataAttributes + * @deprecated */ downloadUrl: string; + /** + * + * @type {string} + * @memberof DownloadUrlDataAttributes + */ + uri: string; } /** * @@ -3777,6 +3784,24 @@ export interface FileAttachment { * @memberof FileAttachment */ id: string; + /** + * + * @type {string} + * @memberof FileAttachment + */ + name: string; + /** + * + * @type {string} + * @memberof FileAttachment + */ + status: string; + /** + * + * @type {number} + * @memberof FileAttachment + */ + size?: number; } export const FileAttachmentTypeEnum = { @@ -5782,6 +5807,69 @@ export interface Point { */ dy: number; } +/** + * + * @export + * @interface PresignedUrl + */ +export interface PresignedUrl { + /** + * + * @type {PresignedUrlData} + * @memberof PresignedUrl + */ + data: PresignedUrlData; + /** + * + * @type {{ [key: string]: Link; }} + * @memberof PresignedUrl + */ + links?: { [key: string]: Link }; +} +/** + * + * @export + * @interface PresignedUrlData + */ +export interface PresignedUrlData { + /** + * + * @type {string} + * @memberof PresignedUrlData + */ + type: string; + /** + * ID of the resource. + * @type {string} + * @memberof PresignedUrlData + */ + id: string; + /** + * + * @type {PresignedUrlDataAttributes} + * @memberof PresignedUrlData + */ + attributes: PresignedUrlDataAttributes; + /** + * + * @type {{ [key: string]: Link; }} + * @memberof PresignedUrlData + */ + links?: { [key: string]: Link }; +} +/** + * + * @export + * @interface PresignedUrlDataAttributes + */ +export interface PresignedUrlDataAttributes { + /** + * + * @type {string} + * @memberof PresignedUrlDataAttributes + */ + uri: string; +} /** * * @export @@ -7889,6 +7977,12 @@ export interface SceneReference { * @memberof SceneReference */ sceneItemId?: string; + /** + * + * @type {Array} + * @memberof SceneReference + */ + thumbnails: Array; } export const SceneReferenceTypeEnum = { @@ -8316,33 +8410,6 @@ export interface SceneViewState { */ links?: { [key: string]: Link }; } -/** - * - * @export - * @interface SceneViewStateAttachment - */ -export interface SceneViewStateAttachment { - /** - * - * @type {string} - * @memberof SceneViewStateAttachment - */ - type: SceneViewStateAttachmentTypeEnum; - /** - * ID of the resource. - * @type {string} - * @memberof SceneViewStateAttachment - */ - id: string; -} - -export const SceneViewStateAttachmentTypeEnum = { - SceneViewState: 'scene-view-state', -} as const; - -export type SceneViewStateAttachmentTypeEnum = - (typeof SceneViewStateAttachmentTypeEnum)[keyof typeof SceneViewStateAttachmentTypeEnum]; - /** * * @export @@ -9267,6 +9334,12 @@ export interface UpdateFileCollectionRequestDataAttributes { * @memberof UpdateFileCollectionRequestDataAttributes */ expiry?: number; + /** + * Updates to file collection metadata. Null values delete the associated key/value pair. + * @type {{ [key: string]: string; }} + * @memberof UpdateFileCollectionRequestDataAttributes + */ + metadata?: { [key: string]: string }; } /** * @@ -9318,6 +9391,12 @@ export interface UpdateFileRequestDataAttributes { * @memberof UpdateFileRequestDataAttributes */ expiry?: number | null; + /** + * Updates to file metadata. Null values delete the associated key/value pair. + * @type {{ [key: string]: string; }} + * @memberof UpdateFileRequestDataAttributes + */ + metadata?: { [key: string]: string }; } /** * An operation that updates items with the specified revision to the default rendition. @@ -10121,69 +10200,6 @@ export const UpdateWebhookSubscriptionRequestDataAttributesStatusEnum = { export type UpdateWebhookSubscriptionRequestDataAttributesStatusEnum = (typeof UpdateWebhookSubscriptionRequestDataAttributesStatusEnum)[keyof typeof UpdateWebhookSubscriptionRequestDataAttributesStatusEnum]; -/** - * - * @export - * @interface UploadUrl - */ -export interface UploadUrl { - /** - * - * @type {UploadUrlData} - * @memberof UploadUrl - */ - data: UploadUrlData; - /** - * - * @type {{ [key: string]: Link; }} - * @memberof UploadUrl - */ - links?: { [key: string]: Link }; -} -/** - * - * @export - * @interface UploadUrlData - */ -export interface UploadUrlData { - /** - * - * @type {string} - * @memberof UploadUrlData - */ - type: string; - /** - * ID of the resource. - * @type {string} - * @memberof UploadUrlData - */ - id: string; - /** - * - * @type {UploadUrlDataAttributes} - * @memberof UploadUrlData - */ - attributes: UploadUrlDataAttributes; - /** - * - * @type {{ [key: string]: Link; }} - * @memberof UploadUrlData - */ - links?: { [key: string]: Link }; -} -/** - * - * @export - * @interface UploadUrlDataAttributes - */ -export interface UploadUrlDataAttributes { - /** - * - * @type {string} - * @memberof UploadUrlDataAttributes - */ - uploadUrl: string; -} /** * * @export @@ -11247,33 +11263,6 @@ export const WithSceneViewIdTypeEnum = { export type WithSceneViewIdTypeEnum = (typeof WithSceneViewIdTypeEnum)[keyof typeof WithSceneViewIdTypeEnum]; -/** - * - * @export - * @interface WithSceneViewStateContent - */ -export interface WithSceneViewStateContent { - /** - * - * @type {string} - * @memberof WithSceneViewStateContent - */ - type: WithSceneViewStateContentTypeEnum; - /** - * - * @type {WithSceneViewId | WithSceneViewStateId} - * @memberof WithSceneViewStateContent - */ - withSceneViewState: WithSceneViewId | WithSceneViewStateId; -} - -export const WithSceneViewStateContentTypeEnum = { - SceneViewStateContent: 'scene-view-state-content', -} as const; - -export type WithSceneViewStateContentTypeEnum = - (typeof WithSceneViewStateContentTypeEnum)[keyof typeof WithSceneViewStateContentTypeEnum]; - /** * A sceneViewStateId to be associated as a reference. * @export @@ -12831,6 +12820,142 @@ export const AttachmentsApiAxiosParamCreator = function ( options: localVarRequestOptions, }; }, + /** + * Create a download url for a file `attachment` by ID. + * @param {string} id The `attachment` ID. + * @param {CreateDownloadRequest} createDownloadRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + createAttachmentDownloadUrl: async ( + id: string, + createDownloadRequest: CreateDownloadRequest, + options: AxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'id' is not null or undefined + assertParamExists('createAttachmentDownloadUrl', 'id', id); + // verify required parameter 'createDownloadRequest' is not null or undefined + assertParamExists( + 'createAttachmentDownloadUrl', + 'createDownloadRequest', + createDownloadRequest + ); + const localVarPath = `/attachments/{id}/download-url`.replace( + `{${'id'}}`, + encodeURIComponent(String(id)) + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication OAuth2 required + // oauth required + await setOAuthToObject( + localVarHeaderParameter, + 'OAuth2', + [], + configuration + ); + + localVarHeaderParameter['Content-Type'] = 'application/vnd.api+json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions?.headers ?? {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + localVarRequestOptions.data = serializeDataIfNeeded( + createDownloadRequest, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Create an upload url for a file `attachment` by ID. + * @param {string} id The `attachment` ID. + * @param {CreateUploadRequest} createUploadRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + createAttachmentUploadUrl: async ( + id: string, + createUploadRequest: CreateUploadRequest, + options: AxiosRequestConfig = {} + ): Promise => { + // verify required parameter 'id' is not null or undefined + assertParamExists('createAttachmentUploadUrl', 'id', id); + // verify required parameter 'createUploadRequest' is not null or undefined + assertParamExists( + 'createAttachmentUploadUrl', + 'createUploadRequest', + createUploadRequest + ); + const localVarPath = `/attachments/{id}/upload-url`.replace( + `{${'id'}}`, + encodeURIComponent(String(id)) + ); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: 'POST', + ...baseOptions, + ...options, + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication OAuth2 required + // oauth required + await setOAuthToObject( + localVarHeaderParameter, + 'OAuth2', + [], + configuration + ); + + localVarHeaderParameter['Content-Type'] = 'application/vnd.api+json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions?.headers ?? {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers, + }; + localVarRequestOptions.data = serializeDataIfNeeded( + createUploadRequest, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, /** * List attachments **Preview:** This is a preview API and is subject to change. * @param {string} filterRelationshipId A relationship id to filter attachments for @@ -12949,6 +13074,60 @@ export const AttachmentsApiFp = function (configuration?: Configuration) { configuration ); }, + /** + * Create a download url for a file `attachment` by ID. + * @param {string} id The `attachment` ID. + * @param {CreateDownloadRequest} createDownloadRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async createAttachmentDownloadUrl( + id: string, + createDownloadRequest: CreateDownloadRequest, + options?: AxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.createAttachmentDownloadUrl( + id, + createDownloadRequest, + options + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + ); + }, + /** + * Create an upload url for a file `attachment` by ID. + * @param {string} id The `attachment` ID. + * @param {CreateUploadRequest} createUploadRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async createAttachmentUploadUrl( + id: string, + createUploadRequest: CreateUploadRequest, + options?: AxiosRequestConfig + ): Promise< + (axios?: AxiosInstance, basePath?: string) => AxiosPromise + > { + const localVarAxiosArgs = + await localVarAxiosParamCreator.createAttachmentUploadUrl( + id, + createUploadRequest, + options + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + ); + }, /** * List attachments **Preview:** This is a preview API and is subject to change. * @param {string} filterRelationshipId A relationship id to filter attachments for @@ -13009,6 +13188,38 @@ export const AttachmentsApiFactory = function ( .createAttachment(createAttachmentRequest, options) .then((request) => request(axios, basePath)); }, + /** + * Create a download url for a file `attachment` by ID. + * @param {string} id The `attachment` ID. + * @param {CreateDownloadRequest} createDownloadRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + createAttachmentDownloadUrl( + id: string, + createDownloadRequest: CreateDownloadRequest, + options?: any + ): AxiosPromise { + return localVarFp + .createAttachmentDownloadUrl(id, createDownloadRequest, options) + .then((request) => request(axios, basePath)); + }, + /** + * Create an upload url for a file `attachment` by ID. + * @param {string} id The `attachment` ID. + * @param {CreateUploadRequest} createUploadRequest + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + createAttachmentUploadUrl( + id: string, + createUploadRequest: CreateUploadRequest, + options?: any + ): AxiosPromise { + return localVarFp + .createAttachmentUploadUrl(id, createUploadRequest, options) + .then((request) => request(axios, basePath)); + }, /** * List attachments **Preview:** This is a preview API and is subject to change. * @param {string} filterRelationshipId A relationship id to filter attachments for @@ -13052,6 +13263,48 @@ export interface AttachmentsApiCreateAttachmentRequest { readonly createAttachmentRequest: CreateAttachmentRequest; } +/** + * Request parameters for createAttachmentDownloadUrl operation in AttachmentsApi. + * @export + * @interface AttachmentsApiCreateAttachmentDownloadUrlRequest + */ +export interface AttachmentsApiCreateAttachmentDownloadUrlRequest { + /** + * The `attachment` ID. + * @type {string} + * @memberof AttachmentsApiCreateAttachmentDownloadUrl + */ + readonly id: string; + + /** + * + * @type {CreateDownloadRequest} + * @memberof AttachmentsApiCreateAttachmentDownloadUrl + */ + readonly createDownloadRequest: CreateDownloadRequest; +} + +/** + * Request parameters for createAttachmentUploadUrl operation in AttachmentsApi. + * @export + * @interface AttachmentsApiCreateAttachmentUploadUrlRequest + */ +export interface AttachmentsApiCreateAttachmentUploadUrlRequest { + /** + * The `attachment` ID. + * @type {string} + * @memberof AttachmentsApiCreateAttachmentUploadUrl + */ + readonly id: string; + + /** + * + * @type {CreateUploadRequest} + * @memberof AttachmentsApiCreateAttachmentUploadUrl + */ + readonly createUploadRequest: CreateUploadRequest; +} + /** * Request parameters for listAttachments operation in AttachmentsApi. * @export @@ -13110,6 +13363,46 @@ export class AttachmentsApi extends BaseAPI { .then((request) => request(this.axios, this.basePath)); } + /** + * Create a download url for a file `attachment` by ID. + * @param {AttachmentsApiCreateAttachmentDownloadUrlRequest} requestParameters Request parameters. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AttachmentsApi + */ + public createAttachmentDownloadUrl( + requestParameters: AttachmentsApiCreateAttachmentDownloadUrlRequest, + options?: AxiosRequestConfig + ) { + return AttachmentsApiFp(this.configuration) + .createAttachmentDownloadUrl( + requestParameters.id, + requestParameters.createDownloadRequest, + options + ) + .then((request) => request(this.axios, this.basePath)); + } + + /** + * Create an upload url for a file `attachment` by ID. + * @param {AttachmentsApiCreateAttachmentUploadUrlRequest} requestParameters Request parameters. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof AttachmentsApi + */ + public createAttachmentUploadUrl( + requestParameters: AttachmentsApiCreateAttachmentUploadUrlRequest, + options?: AxiosRequestConfig + ) { + return AttachmentsApiFp(this.configuration) + .createAttachmentUploadUrl( + requestParameters.id, + requestParameters.createUploadRequest, + options + ) + .then((request) => request(this.axios, this.basePath)); + } + /** * List attachments **Preview:** This is a preview API and is subject to change. * @param {AttachmentsApiListAttachmentsRequest} requestParameters Request parameters. @@ -16703,7 +16996,7 @@ export const FilesApiFp = function (configuration?: Configuration) { createUploadRequest: CreateUploadRequest, options?: AxiosRequestConfig ): Promise< - (axios?: AxiosInstance, basePath?: string) => AxiosPromise + (axios?: AxiosInstance, basePath?: string) => AxiosPromise > { const localVarAxiosArgs = await localVarAxiosParamCreator.createUploadUrl( id, @@ -16899,7 +17192,7 @@ export const FilesApiFactory = function ( id: string, createUploadRequest: CreateUploadRequest, options?: any - ): AxiosPromise { + ): AxiosPromise { return localVarFp .createUploadUrl(id, createUploadRequest, options) .then((request) => request(axios, basePath)); diff --git a/client/version.ts b/client/version.ts index cb7a16e..70daa2e 100644 --- a/client/version.ts +++ b/client/version.ts @@ -1 +1 @@ -export const version = '0.35.0'; +export const version = '0.36.0'; diff --git a/package.json b/package.json index 1a082a9..2946b6d 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@vertexvis/api-client-node", - "version": "0.35.0", + "version": "0.36.0", "description": "The Vertex REST API client for Node.js.", "license": "MIT", "author": "Vertex Developers (https://developer.vertexvis.com)", diff --git a/spec.yml b/spec.yml index 0789895..33210fc 100644 --- a/spec.yml +++ b/spec.yml @@ -878,6 +878,136 @@ paths: - OAuth2: [] tags: - attachments + /attachments/{id}/download-url: + post: + description: Create a download url for a file `attachment` by ID. + operationId: createAttachmentDownloadUrl + parameters: + - description: The `attachment` ID. + explode: false + in: path + name: id + required: true + schema: + $ref: '#/components/schemas/Uuid' + style: simple + requestBody: + content: + application/vnd.api+json: + schema: + $ref: '#/components/schemas/CreateDownloadRequest' + required: true + responses: + '201': + content: + application/vnd.api+json: + schema: + $ref: '#/components/schemas/PresignedUrl' + description: Created + '401': + content: + application/vnd.api+json: + example: + errors: + - status: '401' + code: Unauthorized + title: Invalid or missing credentials. + schema: + $ref: '#/components/schemas/Failure' + description: Unauthorized + '404': + content: + application/vnd.api+json: + example: + errors: + - status: '404' + code: NotFound + title: The requested resource was not found. + schema: + $ref: '#/components/schemas/Failure' + description: Not Found + '415': + content: + application/vnd.api+json: + example: + errors: + - status: '415' + code: UnsupportedMediaType + title: + The provided media type is not supported. Update the Content-Type + header to application/vnd.api+json and try again. + schema: + $ref: '#/components/schemas/Failure' + description: Unsupported Media Type + security: + - OAuth2: [] + tags: + - attachments + /attachments/{id}/upload-url: + post: + description: Create an upload url for a file `attachment` by ID. + operationId: createAttachmentUploadUrl + parameters: + - description: The `attachment` ID. + explode: false + in: path + name: id + required: true + schema: + $ref: '#/components/schemas/Uuid' + style: simple + requestBody: + content: + application/vnd.api+json: + schema: + $ref: '#/components/schemas/CreateUploadRequest' + required: true + responses: + '201': + content: + application/vnd.api+json: + schema: + $ref: '#/components/schemas/PresignedUrl' + description: Created + '401': + content: + application/vnd.api+json: + example: + errors: + - status: '401' + code: Unauthorized + title: Invalid or missing credentials. + schema: + $ref: '#/components/schemas/Failure' + description: Unauthorized + '404': + content: + application/vnd.api+json: + example: + errors: + - status: '404' + code: NotFound + title: The requested resource was not found. + schema: + $ref: '#/components/schemas/Failure' + description: Not Found + '415': + content: + application/vnd.api+json: + example: + errors: + - status: '415' + code: UnsupportedMediaType + title: + The provided media type is not supported. Update the Content-Type + header to application/vnd.api+json and try again. + schema: + $ref: '#/components/schemas/Failure' + description: Unsupported Media Type + security: + - OAuth2: [] + tags: + - attachments /batches: post: description: @@ -2193,7 +2323,7 @@ paths: content: application/vnd.api+json: schema: - $ref: '#/components/schemas/UploadUrl' + $ref: '#/components/schemas/PresignedUrl' description: Created '401': content: @@ -10600,6 +10730,15 @@ components: schema: $ref: '#/components/schemas/Uuid' style: simple + AttachmentId: + description: The `attachment` ID. + explode: false + in: path + name: id + required: true + schema: + $ref: '#/components/schemas/Uuid' + style: simple PerspectiveCamera: description: A perspective camera that mimics the way the human eye sees. explode: true @@ -11624,6 +11763,34 @@ components: required: - data type: object + CreateDownloadRequest: + additionalProperties: false + properties: + data: + $ref: '#/components/schemas/CreateDownloadRequest_data' + required: + - data + type: object + PresignedUrl: + additionalProperties: false + properties: + data: + $ref: '#/components/schemas/PresignedUrlData' + links: + additionalProperties: + $ref: '#/components/schemas/Link' + type: object + required: + - data + type: object + CreateUploadRequest: + additionalProperties: false + properties: + data: + $ref: '#/components/schemas/CreateUploadRequest_data' + required: + - data + type: object CreateBatchRequest: additionalProperties: false properties: @@ -11820,34 +11987,6 @@ components: required: - data type: object - CreateUploadRequest: - additionalProperties: false - properties: - data: - $ref: '#/components/schemas/CreateUploadRequest_data' - required: - - data - type: object - UploadUrl: - additionalProperties: false - properties: - data: - $ref: '#/components/schemas/UploadUrlData' - links: - additionalProperties: - $ref: '#/components/schemas/Link' - type: object - required: - - data - type: object - CreateDownloadRequest: - additionalProperties: false - properties: - data: - $ref: '#/components/schemas/CreateDownloadRequest_data' - required: - - data - type: object DownloadUrl: additionalProperties: false properties: @@ -12054,7 +12193,10 @@ components: refresh_token: $ref: '#/components/schemas/NonEmptyString' subject_token: - $ref: '#/components/schemas/NonEmptyString' + example: some-string + maxLength: 4096 + minLength: 1 + type: string required: - grant_type type: object @@ -13295,29 +13437,29 @@ components: - name - type type: object - WithSceneViewStateContent: + WithThread: additionalProperties: false properties: type: enum: - - scene-view-state-content + - thread + type: string + id: + description: ID of the resource. + example: f79d4760-0b71-44e4-ad0b-22743fdd4ca3 + format: uuid + maxLength: 36 type: string - withSceneViewState: - discriminator: - propertyName: type - oneOf: - - $ref: '#/components/schemas/WithSceneViewId' - - $ref: '#/components/schemas/WithSceneViewStateId' required: + - id - type - - withSceneViewState type: object - WithThread: + WithReply: additionalProperties: false properties: type: enum: - - thread + - reply type: string id: description: ID of the resource. @@ -13329,12 +13471,11 @@ components: - id - type type: object - WithReply: + PresignedUrlData: additionalProperties: false properties: type: - enum: - - reply + example: presigned-url type: string id: description: ID of the resource. @@ -13342,7 +13483,14 @@ components: format: uuid maxLength: 36 type: string + attributes: + $ref: '#/components/schemas/PresignedUrlData_attributes' + links: + additionalProperties: + $ref: '#/components/schemas/Link' + type: object required: + - attributes - id - type type: object @@ -13565,29 +13713,6 @@ components: - id - type type: object - UploadUrlData: - additionalProperties: false - properties: - type: - example: upload-url - type: string - id: - description: ID of the resource. - example: f79d4760-0b71-44e4-ad0b-22743fdd4ca3 - format: uuid - maxLength: 36 - type: string - attributes: - $ref: '#/components/schemas/UploadUrlData_attributes' - links: - additionalProperties: - $ref: '#/components/schemas/Link' - type: object - required: - - attributes - - id - - type - type: object DownloadUrlData: additionalProperties: false properties: @@ -15246,26 +15371,31 @@ components: format: uuid maxLength: 36 type: string + name: + example: some-string + maxLength: 1024 + minLength: 1 + type: string + status: + example: complete + type: string + size: + format: int64 + type: integer required: - id + - name + - status - type type: object - SceneViewStateAttachment: + AccountRelationship: additionalProperties: false + description: Relationship to an `account`. properties: - type: - enum: - - scene-view-state - type: string - id: - description: ID of the resource. - example: f79d4760-0b71-44e4-ad0b-22743fdd4ca3 - format: uuid - maxLength: 36 - type: string + data: + $ref: '#/components/schemas/AccountRelationship_data' required: - - id - - type + - data type: object WithSceneViewId: additionalProperties: false @@ -15303,15 +15433,6 @@ components: - sceneViewStateId - type type: object - AccountRelationship: - additionalProperties: false - description: Relationship to an `account`. - properties: - data: - $ref: '#/components/schemas/AccountRelationship_data' - required: - - data - type: object SceneReference: additionalProperties: false description: A reference to a scene for a thread. @@ -15340,8 +15461,13 @@ components: format: uuid maxLength: 36 type: string + thumbnails: + items: + $ref: '#/components/schemas/ThumbnailData' + type: array required: - sceneId + - thumbnails - type type: object CollaborationContextRelationship: @@ -16502,7 +16628,6 @@ components: propertyName: type oneOf: - $ref: '#/components/schemas/WithFileContent' - - $ref: '#/components/schemas/WithSceneViewStateContent' required: - withContent type: object @@ -16534,6 +16659,58 @@ components: - relationships - type type: object + CreateDownloadRequest_data_attributes: + properties: + expiry: + description: + Specifies the duration for which this pre-signed request should + be valid. After this time has expired, attempting to use the presigned + request will fail. (Defaults to 1 hour, max value is 24 hours) + example: 3600 + format: int32 + maximum: 86400 + minimum: 1 + type: integer + type: object + CreateDownloadRequest_data: + properties: + type: + description: Resource object type. + example: download-url + maxLength: 32 + type: string + attributes: + $ref: '#/components/schemas/CreateDownloadRequest_data_attributes' + required: + - attributes + - type + type: object + CreateUploadRequest_data_attributes: + properties: + expiry: + description: + Specifies the duration for which this pre-signed request should + be valid for upload. After this time has expired, attempting to use the + presigned request will fail. (Defaults to 1 hour, max value is 24 hours) + example: 3600 + format: int32 + maximum: 86400 + minimum: 1 + type: integer + type: object + CreateUploadRequest_data: + properties: + type: + description: Resource object type. + example: upload-url + maxLength: 32 + type: string + attributes: + $ref: '#/components/schemas/CreateUploadRequest_data_attributes' + required: + - attributes + - type + type: object CreateCollaborationContextRequest_data: properties: type: @@ -16673,6 +16850,14 @@ components: minimum: 1 nullable: true type: integer + metadata: + additionalProperties: + nullable: true + type: string + description: + Updates to file metadata. Null values delete the associated + key/value pair. + type: object type: object UpdateFileRequest_data: properties: @@ -16687,58 +16872,6 @@ components: - attributes - type type: object - CreateUploadRequest_data_attributes: - properties: - expiry: - description: - Specifies the duration for which this pre-signed request should - be valid for upload. After this time has expired, attempting to use the - presigned request will fail. (Defaults to 1 hour, max value is 24 hours) - example: 3600 - format: int32 - maximum: 86400 - minimum: 1 - type: integer - type: object - CreateUploadRequest_data: - properties: - type: - description: Resource object type. - example: upload-url - maxLength: 32 - type: string - attributes: - $ref: '#/components/schemas/CreateUploadRequest_data_attributes' - required: - - attributes - - type - type: object - CreateDownloadRequest_data_attributes: - properties: - expiry: - description: - Specifies the duration for which this pre-signed request should - be valid. After this time has expired, attempting to use the presigned - request will fail. (Defaults to 1 hour, max value is 24 hours) - example: 3600 - format: int32 - maximum: 86400 - minimum: 1 - type: integer - type: object - CreateDownloadRequest_data: - properties: - type: - description: Resource object type. - example: download-url - maxLength: 32 - type: string - attributes: - $ref: '#/components/schemas/CreateDownloadRequest_data_attributes' - required: - - attributes - - type - type: object CreateFileCollectionRequest_data_attributes: properties: name: @@ -16791,6 +16924,14 @@ components: format: int32 minimum: 1 type: integer + metadata: + additionalProperties: + nullable: true + type: string + description: + Updates to file collection metadata. Null values delete the + associated key/value pair. + type: object type: object UpdateFileCollectionRequest_data: properties: @@ -18222,9 +18363,17 @@ components: description: The underlying content of the attachment oneOf: - $ref: '#/components/schemas/FileAttachment' - - $ref: '#/components/schemas/SceneViewStateAttachment' required: - content + - thumbnails + type: object + PresignedUrlData_attributes: + properties: + uri: + example: https://example.com/path/to/file.zip + type: string + required: + - uri type: object BatchOperation_ref: description: Target of batch operation. @@ -18395,21 +18544,19 @@ components: - name - status type: object - UploadUrlData_attributes: - properties: - uploadUrl: - example: https://example.com/path/to/file.zip - type: string - required: - - uploadUrl - type: object DownloadUrlData_attributes: properties: downloadUrl: + deprecated: true + description: Deprecated. Use `uri` instead. + example: https://example.com/path/to/file.zip + type: string + uri: example: https://example.com/path/to/file.zip type: string required: - downloadUrl + - uri type: object FileCollectionMetadataData_attributes: properties: