diff --git a/openapi/components/paths/files.yaml b/openapi/components/paths/files.yaml index b1d95736..1b80ae4f 100644 --- a/openapi/components/paths/files.yaml +++ b/openapi/components/paths/files.yaml @@ -179,7 +179,7 @@ paths: - files responses: '200': - $ref: ../../openapi.yaml#/components/responses/FileVersionUploadInfo + $ref: ../responses/files/FileVersionUploadStatus.yaml operationId: getFileDataUploadStatus security: - apiKeyCookie: [] diff --git a/openapi/components/paths/worlds.yaml b/openapi/components/paths/worlds.yaml new file mode 100644 index 00000000..22a3ce69 --- /dev/null +++ b/openapi/components/paths/worlds.yaml @@ -0,0 +1,415 @@ +openapi: 3.0.3 +info: + title: worlds + version: '1.0' + description: A +paths: + /worlds: + get: + summary: Search All Worlds + tags: + - worlds + responses: + '200': + $ref: ../responses/worlds/LimitedWorldListResponse.yaml + '401': + $ref: ../responses/MissingCredentialsError.yaml + operationId: searchWorlds + security: + - apiKeyCookie: [] + authCookie: [] + parameters: + - $ref: ../../openapi.yaml#/components/parameters/featured + - $ref: ../../openapi.yaml#/components/parameters/sortOptions + - schema: + type: string + enum: + - me + in: query + required: false + name: user + description: Set to `me` for searching own worlds. + - $ref: ../../openapi.yaml#/components/parameters/userIdQuery + - $ref: ../../openapi.yaml#/components/parameters/number + - $ref: ../../openapi.yaml#/components/parameters/orderOptions + - $ref: ../../openapi.yaml#/components/parameters/offset + - $ref: ../../openapi.yaml#/components/parameters/search + - $ref: ../../openapi.yaml#/components/parameters/tag + - $ref: ../../openapi.yaml#/components/parameters/notag + - $ref: ../../openapi.yaml#/components/parameters/releaseStatus + - $ref: ../../openapi.yaml#/components/parameters/maxUnityVersion + - $ref: ../../openapi.yaml#/components/parameters/minUnityVersion + - $ref: ../../openapi.yaml#/components/parameters/platform + description: Search and list any worlds by query filters. + post: + summary: Create World + operationId: createWorld + responses: + '200': + $ref: ../responses/worlds/WorldResponse.yaml + '400': + $ref: ../responses/CreateWorldNotAllowedYetError.yaml + '401': + $ref: ../responses/MissingCredentialsError.yaml + requestBody: + content: + application/json: + schema: + type: object + properties: + assetUrl: + type: string + minLength: 1 + assetVersion: + type: string + minLength: 1 + authorId: + $ref: ../schemas/UserID.yaml + authorName: + type: string + minLength: 1 + capacity: + type: integer + minimum: 1 + maximum: 40 + default: 16 + example: 16 + description: + type: string + id: + $ref: ../schemas/WorldID.yaml + imageUrl: + type: string + minLength: 1 + name: + type: string + minLength: 1 + platform: + $ref: ../schemas/Platform.yaml + releaseStatus: + $ref: ../schemas/ReleaseStatus.yaml + tags: + type: array + items: + $ref: ../schemas/Tag.yaml + unityPackageUrl: + type: string + minLength: 1 + unityVersion: + type: string + minLength: 1 + default: 5.3.4p1 + example: 2018.4.20f1 + required: + - assetUrl + - imageUrl + - name + description: '' + description: 'Create a new world. This endpoint requires `assetUrl` to be a valid File object with `.vrcw` file extension, and `imageUrl` to be a valid File object with an image file extension.' + tags: + - worlds + /worlds/active: + get: + summary: List Active Worlds + tags: + - worlds + responses: + '200': + $ref: ../responses/worlds/LimitedWorldListResponse.yaml + '401': + $ref: ../responses/MissingCredentialsError.yaml + operationId: getActiveWorlds + security: + - apiKeyCookie: [] + authCookie: [] + parameters: + - $ref: ../../openapi.yaml#/components/parameters/featured + - $ref: ../../openapi.yaml#/components/parameters/sortOptions + - $ref: ../../openapi.yaml#/components/parameters/number + - $ref: ../../openapi.yaml#/components/parameters/orderOptions + - $ref: ../../openapi.yaml#/components/parameters/offset + - $ref: ../../openapi.yaml#/components/parameters/search + - $ref: ../../openapi.yaml#/components/parameters/tag + - $ref: ../../openapi.yaml#/components/parameters/notag + - $ref: ../../openapi.yaml#/components/parameters/releaseStatus + - $ref: ../../openapi.yaml#/components/parameters/maxUnityVersion + - $ref: ../../openapi.yaml#/components/parameters/minUnityVersion + - $ref: ../../openapi.yaml#/components/parameters/platform + description: Search and list currently Active worlds by query filters. + /worlds/recent: + get: + summary: List Recent Worlds + tags: + - worlds + responses: + '200': + $ref: ../responses/worlds/LimitedWorldListResponse.yaml + '401': + $ref: ../responses/MissingCredentialsError.yaml + '403': + $ref: ../responses/SeeOtherUserRecentsError.yaml + operationId: getRecentWorlds + security: + - apiKeyCookie: [] + authCookie: [] + parameters: + - $ref: ../../openapi.yaml#/components/parameters/featured + - $ref: ../../openapi.yaml#/components/parameters/sortOptions + - $ref: ../../openapi.yaml#/components/parameters/number + - $ref: ../../openapi.yaml#/components/parameters/orderOptions + - $ref: ../../openapi.yaml#/components/parameters/offset + - $ref: ../../openapi.yaml#/components/parameters/search + - $ref: ../../openapi.yaml#/components/parameters/tag + - $ref: ../../openapi.yaml#/components/parameters/notag + - $ref: ../../openapi.yaml#/components/parameters/releaseStatus + - $ref: ../../openapi.yaml#/components/parameters/maxUnityVersion + - $ref: ../../openapi.yaml#/components/parameters/minUnityVersion + - $ref: ../../openapi.yaml#/components/parameters/platform + - $ref: ../../openapi.yaml#/components/parameters/userIdAdmin + description: Search and list recently visited worlds by query filters. + /worlds/favorites: + get: + summary: List Favorited Worlds + tags: + - worlds + responses: + '200': + $ref: ../responses/worlds/LimitedWorldListResponse.yaml + '401': + $ref: ../responses/MissingCredentialsError.yaml + '403': + $ref: ../responses/SeeOtherUserFavoritesError.yaml + operationId: getFavoritedWorlds + security: + - apiKeyCookie: [] + authCookie: [] + parameters: + - $ref: ../../openapi.yaml#/components/parameters/featured + - $ref: ../../openapi.yaml#/components/parameters/sortOptions + - $ref: ../../openapi.yaml#/components/parameters/number + - $ref: ../../openapi.yaml#/components/parameters/orderOptions + - $ref: ../../openapi.yaml#/components/parameters/offset + - $ref: ../../openapi.yaml#/components/parameters/search + - $ref: ../../openapi.yaml#/components/parameters/tag + - $ref: ../../openapi.yaml#/components/parameters/notag + - $ref: ../../openapi.yaml#/components/parameters/releaseStatus + - $ref: ../../openapi.yaml#/components/parameters/maxUnityVersion + - $ref: ../../openapi.yaml#/components/parameters/minUnityVersion + - $ref: ../../openapi.yaml#/components/parameters/platform + - $ref: ../../openapi.yaml#/components/parameters/userIdAdmin + description: Search and list favorited worlds by query filters. + '/worlds/{worldId}': + parameters: + - $ref: ../../openapi.yaml#/components/parameters/worldId + get: + summary: Get World by ID + tags: + - worlds + operationId: getWorld + responses: + '200': + $ref: ../responses/worlds/WorldResponse.yaml + '404': + $ref: ../responses/WorldNotFoundError.yaml + description: Get information about a specific World. + put: + summary: Update World + operationId: updateWorld + security: + - apiKeyCookie: [] + authCookie: [] + responses: + '200': + $ref: ../responses/worlds/WorldResponse.yaml + '401': + $ref: ../responses/MissingCredentialsError.yaml + '404': + $ref: ../responses/WorldNotFoundError.yaml + requestBody: + content: + application/json: + schema: + type: object + properties: + assetUrl: + type: string + minLength: 1 + assetVersion: + type: string + minLength: 1 + authorId: + $ref: ../schemas/UserID.yaml + authorName: + type: string + minLength: 1 + capacity: + type: integer + minimum: 1 + maximum: 40 + default: 16 + example: 16 + description: + type: string + id: + $ref: ../schemas/WorldID.yaml + imageUrl: + type: string + minLength: 1 + name: + type: string + minLength: 1 + platform: + $ref: ../schemas/Platform.yaml + releaseStatus: + $ref: ../schemas/ReleaseStatus.yaml + tags: + type: array + items: + $ref: ../schemas/Tag.yaml + unityPackageUrl: + type: string + minLength: 1 + unityVersion: + type: string + minLength: 1 + default: 5.3.4p1 + example: 2018.4.20f1 + description: Update information about a specific World. + tags: + - worlds + delete: + summary: Delete World + operationId: deleteWorld + security: + - apiKeyCookie: [] + authCookie: [] + responses: + '200': + description: OK + '401': + $ref: ../responses/MissingCredentialsError.yaml + '404': + $ref: ../responses/WorldNotFoundError.yaml + description: 'Delete a world. Notice a world is never fully "deleted", only its ReleaseStatus is set to "hidden" and the linked Files are deleted. The WorldID is permanently reserved.' + tags: + - worlds + '/worlds/{worldId}/{instanceId}': + parameters: + - $ref: ../../openapi.yaml#/components/parameters/worldId + - $ref: ../../openapi.yaml#/components/parameters/instanceId + get: + summary: Get World Instance + tags: + - worlds + operationId: getWorldInstance + security: + - apiKeyCookie: [] + authCookie: [] + description: Returns a worlds instance. + responses: + '200': + $ref: ../responses/worlds/InstanceResponse.yaml + '401': + $ref: ../responses/MissingCredentialsError.yaml + '/worlds/{worldId}/metadata': + parameters: + - $ref: ../../openapi.yaml#/components/parameters/worldId + get: + summary: Get World Metadata + tags: + - worlds + operationId: getWorldMetadata + security: + - apiKeyCookie: [] + authCookie: [] + deprecated: true + description: Return a worlds custom metadata. This is currently believed to be unused. Metadata can be set with `updateWorld` and can be any arbitrary object. + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + additionalProperties: false + properties: + id: + $ref: ../schemas/WorldID.yaml + metadata: + type: object + readOnly: true + required: + - id + - metadata + readOnly: true + '404': + $ref: ../responses/WorldNotFoundError.yaml + '/worlds/{worldId}/publish': + parameters: + - $ref: ../../openapi.yaml#/components/parameters/worldId + get: + summary: Get World Publish Status + tags: + - worlds + operationId: getWorldPublishStatus + security: + - apiKeyCookie: [] + authCookie: [] + description: Returns a worlds publish status. + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + additionalProperties: false + properties: + canPubilsh: + type: boolean + default: true + readOnly: true + required: + - canPubilsh + readOnly: true + '401': + $ref: ../responses/MissingCredentialsError.yaml + '404': + $ref: ../responses/WorldNotFoundError.yaml + put: + summary: Publish World + operationId: publishWorld + security: + - apiKeyCookie: [] + authCookie: [] + responses: + '200': + description: TODO + '401': + $ref: ../responses/MissingCredentialsError.yaml + '404': + $ref: ../responses/WorldNotFoundError.yaml + description: Publish a world. You can only publish one world per week. + tags: + - worlds + delete: + summary: Unpublish World + operationId: unpublishWorld + security: + - apiKeyCookie: [] + authCookie: [] + responses: + '200': + description: OK + '401': + $ref: ../responses/MissingCredentialsError.yaml + '404': + $ref: ../responses/WorldNotFoundError.yaml + description: Unpublish a world. + tags: + - worlds +tags: + $ref: ../../openapi.yaml#/tags +components: + securitySchemes: + $ref: ../../openapi.yaml#/components/securitySchemes \ No newline at end of file diff --git a/openapi/components/responses/files/FileVersionUploadStatus.yaml b/openapi/components/responses/files/FileVersionUploadStatus.yaml new file mode 100644 index 00000000..ac4b73ef --- /dev/null +++ b/openapi/components/responses/files/FileVersionUploadStatus.yaml @@ -0,0 +1,59 @@ +description: 'Current FileVersion upload status. Contains the uploadId needed for uploading, as well as the already uploaded parts.' +content: + application/json: + schema: + type: object + description: '' + properties: + uploadId: + type: string + minLength: 1 + example: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_xxxxxxxxxxxxxxxxxxxxxxxx.xxxxxxx_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx..xxxxxxxxxxxxxxxxxxxxxxx + readOnly: true + fileName: + type: string + minLength: 1 + example: Avatar-MyAvatar-Un.file_00000000-0000-0000-0000-000000000000.1.unitypackage + readOnly: true + nextPartNumber: + type: number + minimum: 0 + example: 0 + readOnly: true + maxParts: + type: number + minimum: 1 + example: 1000 + readOnly: true + parts: + type: array + minItems: 0 + items: + type: object + readOnly: true + readOnly: true + etags: + type: array + description: Unknown + minItems: 0 + items: + type: object + readOnly: true + readOnly: true + required: + - uploadId + - fileName + - nextPartNumber + - maxParts + - parts + - etags + readOnly: true + examples: + Example Access Key: + value: + uploadId: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_xxxxxxxxxxxxxxxxxxxxxxxx.xxxxxxx_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx..xxxxxxxxxxxxxxxxxxxxxxx + fileName: Avatar-MyAvatar-Un.file_00000000-0000-0000-0000-000000000000.1.unitypackage + nextPartNumber: 0 + maxParts: 1000 + parts: [] + etags: [] \ No newline at end of file diff --git a/openapi/components/responses/worlds/InstanceResponse.yaml b/openapi/components/responses/worlds/InstanceResponse.yaml new file mode 100644 index 00000000..42b311d7 --- /dev/null +++ b/openapi/components/responses/worlds/InstanceResponse.yaml @@ -0,0 +1,5 @@ +description: Returns a single Instance object. +content: + application/json: + schema: + $ref: ../../schemas/Instance.yaml \ No newline at end of file diff --git a/openapi/components/responses/worlds/LimitedWorldListResponse.yaml b/openapi/components/responses/worlds/LimitedWorldListResponse.yaml new file mode 100644 index 00000000..2e615064 --- /dev/null +++ b/openapi/components/responses/worlds/LimitedWorldListResponse.yaml @@ -0,0 +1,7 @@ +description: Returns a list of LimitedWorld objects. +content: + application/json: + schema: + type: array + items: + $ref: ../../schemas/LimitedWorld.yaml \ No newline at end of file diff --git a/openapi/components/responses/worlds/WorldResponse.yaml b/openapi/components/responses/worlds/WorldResponse.yaml new file mode 100644 index 00000000..0d783023 --- /dev/null +++ b/openapi/components/responses/worlds/WorldResponse.yaml @@ -0,0 +1,5 @@ +description: Returns a single World object. +content: + application/json: + schema: + $ref: ../../schemas/World.yaml \ No newline at end of file diff --git a/openapi/openapi.yaml b/openapi/openapi.yaml index f9447c28..dd3c690c 100644 --- a/openapi/openapi.yaml +++ b/openapi/openapi.yaml @@ -75,409 +75,21 @@ paths: '/file/{fileId}/{versionId}/{fileType}/finish': $ref: ./components/paths/files.yaml#/paths/~1file~1{fileId}~1{versionId}~1{fileType}~1finish /worlds: - get: - summary: Search All Worlds - tags: - - worlds - responses: - '200': - $ref: '#/components/responses/LimitedWorldList' - '401': - $ref: ./components/responses/MissingCredentialsError.yaml - operationId: searchWorlds - security: - - apiKeyCookie: [] - authCookie: [] - parameters: - - $ref: '#/components/parameters/featured' - - $ref: '#/components/parameters/sortOptions' - - schema: - type: string - enum: - - me - in: query - required: false - name: user - description: Set to `me` for searching own worlds. - - $ref: '#/components/parameters/userIdQuery' - - $ref: '#/components/parameters/number' - - $ref: '#/components/parameters/orderOptions' - - $ref: '#/components/parameters/offset' - - $ref: '#/components/parameters/search' - - $ref: '#/components/parameters/tag' - - $ref: '#/components/parameters/notag' - - $ref: '#/components/parameters/releaseStatus' - - $ref: '#/components/parameters/maxUnityVersion' - - $ref: '#/components/parameters/minUnityVersion' - - $ref: '#/components/parameters/platform' - description: Search and list any worlds by query filters. - post: - summary: Create World - operationId: createWorld - responses: - '200': - $ref: '#/components/responses/World' - '400': - $ref: ./components/responses/CreateWorldNotAllowedYetError.yaml - '401': - $ref: ./components/responses/MissingCredentialsError.yaml - requestBody: - content: - application/json: - schema: - type: object - properties: - assetUrl: - type: string - minLength: 1 - assetVersion: - type: string - minLength: 1 - authorId: - $ref: ./components/schemas/UserID.yaml - authorName: - type: string - minLength: 1 - capacity: - type: integer - minimum: 1 - maximum: 40 - default: 16 - example: 16 - description: - type: string - id: - $ref: ./components/schemas/WorldID.yaml - imageUrl: - type: string - minLength: 1 - name: - type: string - minLength: 1 - platform: - $ref: ./components/schemas/Platform.yaml - releaseStatus: - $ref: ./components/schemas/ReleaseStatus.yaml - tags: - type: array - items: - $ref: ./components/schemas/Tag.yaml - unityPackageUrl: - type: string - minLength: 1 - unityVersion: - type: string - minLength: 1 - default: 5.3.4p1 - example: 2018.4.20f1 - required: - - assetUrl - - imageUrl - - name - description: '' - description: 'Create a new world. This endpoint requires `assetUrl` to be a valid File object with `.vrcw` file extension, and `imageUrl` to be a valid File object with an image file extension.' - tags: - - worlds + $ref: ./components/paths/worlds.yaml#/paths/~1worlds /worlds/active: - get: - summary: List Active Worlds - tags: - - worlds - responses: - '200': - $ref: '#/components/responses/LimitedWorldList' - '401': - $ref: ./components/responses/MissingCredentialsError.yaml - operationId: getActiveWorlds - security: - - apiKeyCookie: [] - authCookie: [] - parameters: - - $ref: '#/components/parameters/featured' - - $ref: '#/components/parameters/sortOptions' - - $ref: '#/components/parameters/number' - - $ref: '#/components/parameters/orderOptions' - - $ref: '#/components/parameters/offset' - - $ref: '#/components/parameters/search' - - $ref: '#/components/parameters/tag' - - $ref: '#/components/parameters/notag' - - $ref: '#/components/parameters/releaseStatus' - - $ref: '#/components/parameters/maxUnityVersion' - - $ref: '#/components/parameters/minUnityVersion' - - $ref: '#/components/parameters/platform' - description: Search and list currently Active worlds by query filters. + $ref: ./components/paths/worlds.yaml#/paths/~1worlds~1active /worlds/recent: - get: - summary: List Recent Worlds - tags: - - worlds - responses: - '200': - $ref: '#/components/responses/LimitedWorldList' - '401': - $ref: ./components/responses/MissingCredentialsError.yaml - '403': - $ref: ./components/responses/SeeOtherUserRecentsError.yaml - operationId: getRecentWorlds - security: - - apiKeyCookie: [] - authCookie: [] - parameters: - - $ref: '#/components/parameters/featured' - - $ref: '#/components/parameters/sortOptions' - - $ref: '#/components/parameters/number' - - $ref: '#/components/parameters/orderOptions' - - $ref: '#/components/parameters/offset' - - $ref: '#/components/parameters/search' - - $ref: '#/components/parameters/tag' - - $ref: '#/components/parameters/notag' - - $ref: '#/components/parameters/releaseStatus' - - $ref: '#/components/parameters/maxUnityVersion' - - $ref: '#/components/parameters/minUnityVersion' - - $ref: '#/components/parameters/platform' - - $ref: '#/components/parameters/userIdAdmin' - description: Search and list recently visited worlds by query filters. + $ref: ./components/paths/worlds.yaml#/paths/~1worlds~1recent /worlds/favorites: - get: - summary: List Favorited Worlds - tags: - - worlds - responses: - '200': - $ref: '#/components/responses/LimitedWorldList' - '401': - $ref: ./components/responses/MissingCredentialsError.yaml - '403': - $ref: ./components/responses/SeeOtherUserFavoritesError.yaml - operationId: getFavoritedWorlds - security: - - apiKeyCookie: [] - authCookie: [] - parameters: - - $ref: '#/components/parameters/featured' - - $ref: '#/components/parameters/sortOptions' - - $ref: '#/components/parameters/number' - - $ref: '#/components/parameters/orderOptions' - - $ref: '#/components/parameters/offset' - - $ref: '#/components/parameters/search' - - $ref: '#/components/parameters/tag' - - $ref: '#/components/parameters/notag' - - $ref: '#/components/parameters/releaseStatus' - - $ref: '#/components/parameters/maxUnityVersion' - - $ref: '#/components/parameters/minUnityVersion' - - $ref: '#/components/parameters/platform' - - $ref: '#/components/parameters/userIdAdmin' - description: Search and list favorited worlds by query filters. + $ref: ./components/paths/worlds.yaml#/paths/~1worlds~1favorites '/worlds/{worldId}': - parameters: - - $ref: '#/components/parameters/worldId' - get: - summary: Get World by ID - tags: - - worlds - operationId: getWorld - responses: - '200': - $ref: '#/components/responses/World' - '404': - $ref: ./components/responses/WorldNotFoundError.yaml - description: Get information about a specific World. - put: - summary: Update World - operationId: updateWorld - security: - - apiKeyCookie: [] - authCookie: [] - responses: - '200': - $ref: '#/components/responses/World' - '401': - $ref: ./components/responses/MissingCredentialsError.yaml - '404': - $ref: ./components/responses/WorldNotFoundError.yaml - requestBody: - content: - application/json: - schema: - type: object - properties: - assetUrl: - type: string - minLength: 1 - assetVersion: - type: string - minLength: 1 - authorId: - $ref: ./components/schemas/UserID.yaml - authorName: - type: string - minLength: 1 - capacity: - type: integer - minimum: 1 - maximum: 40 - default: 16 - example: 16 - description: - type: string - id: - $ref: ./components/schemas/WorldID.yaml - imageUrl: - type: string - minLength: 1 - name: - type: string - minLength: 1 - platform: - $ref: ./components/schemas/Platform.yaml - releaseStatus: - $ref: ./components/schemas/ReleaseStatus.yaml - tags: - type: array - items: - $ref: ./components/schemas/Tag.yaml - unityPackageUrl: - type: string - minLength: 1 - unityVersion: - type: string - minLength: 1 - default: 5.3.4p1 - example: 2018.4.20f1 - description: Update information about a specific World. - tags: - - worlds - delete: - summary: Delete World - operationId: deleteWorld - security: - - apiKeyCookie: [] - authCookie: [] - responses: - '200': - description: OK - '401': - $ref: ./components/responses/MissingCredentialsError.yaml - '404': - $ref: ./components/responses/WorldNotFoundError.yaml - description: 'Delete a world. Notice a world is never fully "deleted", only its ReleaseStatus is set to "hidden" and the linked Files are deleted. The WorldID is permanently reserved.' - tags: - - worlds + $ref: ./components/paths/worlds.yaml#/paths/~1worlds~1{worldId} '/worlds/{worldId}/{instanceId}': - parameters: - - $ref: '#/components/parameters/worldId' - - $ref: '#/components/parameters/instanceId' - get: - summary: Get World Instance - tags: - - worlds - operationId: getWorldInstance - security: - - apiKeyCookie: [] - authCookie: [] - description: Returns a worlds instance. - responses: - '200': - $ref: '#/components/responses/Instance' - '401': - $ref: ./components/responses/MissingCredentialsError.yaml + $ref: ./components/paths/worlds.yaml#/paths/~1worlds~1{worldId}~1{instanceId} '/worlds/{worldId}/metadata': - parameters: - - $ref: '#/components/parameters/worldId' - get: - summary: Get World Metadata - tags: - - worlds - operationId: getWorldMetadata - security: - - apiKeyCookie: [] - authCookie: [] - deprecated: true - description: Return a worlds custom metadata. This is currently believed to be unused. Metadata can be set with `updateWorld` and can be any arbitrary object. - responses: - '200': - description: OK - content: - application/json: - schema: - type: object - additionalProperties: false - properties: - id: - $ref: ./components/schemas/WorldID.yaml - metadata: - type: object - readOnly: true - required: - - id - - metadata - readOnly: true - '404': - $ref: ./components/responses/WorldNotFoundError.yaml + $ref: ./components/paths/worlds.yaml#/paths/~1worlds~1{worldId}~1metadata '/worlds/{worldId}/publish': - parameters: - - $ref: '#/components/parameters/worldId' - get: - summary: Get World Publish Status - tags: - - worlds - operationId: getWorldPublishStatus - security: - - apiKeyCookie: [] - authCookie: [] - description: Returns a worlds publish status. - responses: - '200': - description: OK - content: - application/json: - schema: - type: object - additionalProperties: false - properties: - canPubilsh: - type: boolean - default: true - readOnly: true - required: - - canPubilsh - readOnly: true - '401': - $ref: ./components/responses/MissingCredentialsError.yaml - '404': - $ref: ./components/responses/WorldNotFoundError.yaml - put: - summary: Publish World - operationId: publishWorld - security: - - apiKeyCookie: [] - authCookie: [] - responses: - '200': - description: TODO - '401': - $ref: ./components/responses/MissingCredentialsError.yaml - '404': - $ref: ./components/responses/WorldNotFoundError.yaml - description: Publish a world. You can only publish one world per week. - tags: - - worlds - delete: - summary: Unpublish World - operationId: unpublishWorld - security: - - apiKeyCookie: [] - authCookie: [] - responses: - '200': - description: OK - '401': - $ref: ./components/responses/MissingCredentialsError.yaml - '404': - $ref: ./components/responses/WorldNotFoundError.yaml - description: Unpublish a world. - tags: - - worlds + $ref: ./components/paths/worlds.yaml#/paths/~1worlds~1{worldId}~1publish /favorites: get: summary: List Favorites @@ -1074,86 +686,7 @@ components: in: cookie description: 2FA device remembrance via Cookie responses: - FileVersionUploadInfo: - description: 'Current FileVersion upload status. Contains the uploadId needed for uploading, as well as the already uploaded parts.' - content: - application/json: - schema: - type: object - description: '' - properties: - uploadId: - type: string - minLength: 1 - example: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_xxxxxxxxxxxxxxxxxxxxxxxx.xxxxxxx_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx..xxxxxxxxxxxxxxxxxxxxxxx - readOnly: true - fileName: - type: string - minLength: 1 - example: Avatar-MyAvatar-Un.file_00000000-0000-0000-0000-000000000000.1.unitypackage - readOnly: true - nextPartNumber: - type: number - minimum: 0 - example: 0 - readOnly: true - maxParts: - type: number - minimum: 1 - example: 1000 - readOnly: true - parts: - type: array - minItems: 0 - items: - type: object - readOnly: true - readOnly: true - etags: - type: array - description: Unknown - minItems: 0 - items: - type: object - readOnly: true - readOnly: true - required: - - uploadId - - fileName - - nextPartNumber - - maxParts - - parts - - etags - readOnly: true - examples: - Example Access Key: - value: - uploadId: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_xxxxxxxxxxxxxxxxxxxxxxxx.xxxxxxx_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx..xxxxxxxxxxxxxxxxxxxxxxx - fileName: Avatar-MyAvatar-Un.file_00000000-0000-0000-0000-000000000000.1.unitypackage - nextPartNumber: 0 - maxParts: 1000 - parts: [] - etags: [] - LimitedWorldList: - description: Returns a list of LimitedWorld objects. - content: - application/json: - schema: - type: array - items: - $ref: ./components/schemas/LimitedWorld.yaml - World: - description: Returns a single World object. - content: - application/json: - schema: - $ref: ./components/schemas/World.yaml - Instance: - description: Returns a single Instance object. - content: - application/json: - schema: - $ref: ./components/schemas/Instance.yaml + Favorite: description: Returns a single Favorite object. content: