3dverse Asset API (1.0)

Download OpenAPI specification:Download

Getting Started

Welcome to the 3dverse Asset API. This is the reference for the REST API endpoints.

NPM package

We provide a TypeScript wrapper library to make typesafe API requests and get typed responses: https://www.npmjs.com/package/@3dverse/api.

Authentication

To authenticate your API calls, you'll need to generate an API key via the 3dverse Console and send an api_key header with your API requests. Alternatively, you can create a user, generate a token for the user and authenticate with a user_token.


Users

List users

Retrieve a list of all users in the current application.

Authorizations:
ApiKey
query Parameters
offset
integer
Default: 0

Pagination offset

limit
integer
Default: 10

Pagination limit

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Register a user

Registers the target user in the current application.

Authorizations:
ApiKey
Request Body schema: application/json

The user unique username.

username
required
string non-empty

Used only for debug purposes

Responses

Request samples

Content type
application/json
{
  • "user_id": "a169451c-8525-4352-b8ca-070dd449a1a5",
  • "username": "John-Mitchell"
}

Response samples

Content type
application/json
{
  • "user_id": "a169451c-8525-4352-b8ca-070dd449a1a5",
  • "username": "John-Mitchell",
  • "registered_at": "2019-08-24T14:15:22Z"
}

Get user details

Retrieves details about the target user.

Authorizations:
ApiKey
path Parameters
user_id
required
string <uuid> (UserId)

User unique identifier

Responses

Response samples

Content type
application/json
{
  • "user_id": "a169451c-8525-4352-b8ca-070dd449a1a5",
  • "username": "John-Mitchell",
  • "registered_at": "2019-08-24T14:15:22Z"
}

Update user details

Updates the details of the target user.

Authorizations:
ApiKey
path Parameters
user_id
required
string <uuid> (UserId)

User unique identifier

Request Body schema: application/json

Change the username

username
required
string non-empty

Used only for debug purposes

Responses

Request samples

Content type
application/json
{
  • "user_id": "a169451c-8525-4352-b8ca-070dd449a1a5",
  • "username": "John-Mitchell"
}

Delete user

Deletes the target user.

Authorizations:
ApiKey
path Parameters
user_id
required
string <uuid> (UserId)

User unique identifier

Responses

Response samples

Content type
application/json
{
  • "deleted_assets": {
    }
}

List groups

Lists all user groups.

Authorizations:
ApiKey
path Parameters
user_id
required
string <uuid> (UserId)

User unique identifier

Responses

Response samples

Content type
application/json
[
  • {
    }
]

List upload tasks

Lists all upload tasks of the target user.

Authorizations:
ApiKey
path Parameters
user_id
required
string <uuid> (UserId)

User unique identifier

query Parameters
offset
integer
Default: 0

Pagination offset

limit
integer
Default: 10

Pagination limit

Responses

Response samples

Content type
application/json
[
  • {
    }
]

User Authentication

Generate a user token

Generates a user token. This user token identifies the user when making a request.

Authorizations:
ApiKey
path Parameters
user_id
required
string <uuid> (UserId)

User unique identifier

Request Body schema: application/json
scope
required
string
Enum: "read" "write" "manage"

Token permission scope

ttl
string <duration>
Default: "1h"

Time to live

Responses

Request samples

Content type
application/json
{
  • "scope": "read",
  • "ttl": "1h"
}

Response samples

Content type
application/json
{
  • "user_token": "string",
  • "expires_in": 0,
  • "expires_on": 0
}

Groups

Create a group

Creates a new user group.

Authorizations:
ApiKey
Request Body schema: application/json
name
required
string non-empty
description
string
required
Array of objects (GroupMember)

Responses

Request samples

Content type
application/json
{
  • "group_id": "306db4e0-7449-4501-b76f-075576fe2d8f",
  • "name": "Delta Force",
  • "description": "The 1st Special Forces Operational Detachment-Delta (1st SFOD-D).",
  • "members": [
    ]
}

Response samples

Content type
application/json
{
  • "group_id": "306db4e0-7449-4501-b76f-075576fe2d8f",
  • "name": "Delta Force",
  • "description": "The 1st Special Forces Operational Detachment-Delta (1st SFOD-D).",
  • "created_at": "2019-08-24T14:15:22Z",
  • "members": [
    ]
}

Get group details

Gets a group details.

Authorizations:
ApiKeyUserToken
path Parameters
group_id
required
string <uuid> (GroupId)

Group unique identifier

Responses

Response samples

Content type
application/json
{
  • "group_id": "306db4e0-7449-4501-b76f-075576fe2d8f",
  • "name": "Delta Force",
  • "description": "The 1st Special Forces Operational Detachment-Delta (1st SFOD-D).",
  • "created_at": "2019-08-24T14:15:22Z",
  • "members": [
    ]
}

Update group details

Updates a group details.

Authorizations:
ApiKeyUserToken
path Parameters
group_id
required
string <uuid> (GroupId)

Group unique identifier

Request Body schema: application/json
name
required
string non-empty
description
required
string

Responses

Request samples

Content type
application/json
{
  • "group_id": "306db4e0-7449-4501-b76f-075576fe2d8f",
  • "name": "Delta Force",
  • "description": "The 1st Special Forces Operational Detachment-Delta (1st SFOD-D).",
  • "members": [
    ]
}

Delete group

Deletes a group and all its access rights.

Authorizations:
ApiKeyUserToken
path Parameters
group_id
required
string <uuid> (GroupId)

Group unique identifier

Responses

Grant access to group

Grants member access to the group.

Authorizations:
ApiKeyUserToken
path Parameters
group_id
required
string <uuid> (GroupId)

Group unique identifier

member_type
required
string
Enum: "users" "groups"

User or group

member_id
required
string <uuid>

User or group unique identifier

Request Body schema: application/json
group_access
required
string
Enum: "read" "write" "manage"
folder_access
required
string
Enum: "read" "write" "manage"

Responses

Request samples

Content type
application/json
{
  • "group_access": "read",
  • "folder_access": "read"
}

Revoke access to group

Revoke requested user access to group.

Authorizations:
ApiKeyUserToken
path Parameters
group_id
required
string <uuid> (GroupId)

Group unique identifier

member_type
required
string
Enum: "users" "groups"

User or group

member_id
required
string <uuid>

User or group unique identifier

Responses

Folders

List folders

Lists all accessible folders

Authorizations:
ApiKeyUserToken
query Parameters
offset
integer
Default: 0

Pagination offset

limit
integer
Default: 10

Pagination limit

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create a folder

Creates a folder.

Authorizations:
ApiKey
Request Body schema: application/json
name
required
string non-empty

Folder name

subfolders
Array of objects (Folder)

Responses

Request samples

Content type
application/json
{
  • "folder_id": "7695bac3-9397-4ec2-9335-45a2a16f1901",
  • "parent_folder_id": "26caaf35-00f1-4c8f-a2ac-cb04b9b9a6ec",
  • "name": "Characters",
  • "created_by": {
    },
  • "subfolders": [
    ]
}

Response samples

Content type
application/json
{
  • "folder_id": "7695bac3-9397-4ec2-9335-45a2a16f1901",
  • "parent_folder_id": "26caaf35-00f1-4c8f-a2ac-cb04b9b9a6ec",
  • "name": "Characters",
  • "created_at": "2019-08-24T14:15:22Z",
  • "created_by": {
    },
  • "subfolders": [
    ],
  • "source_file_count": 0,
  • "asset_count": 0
}

Get folder details

Gets the requested folder details.

Authorizations:
ApiKeyUserToken
path Parameters
folder_id
required
string <uuid> (FolderId)

Folder unique identifier

Responses

Response samples

Content type
application/json
{
  • "folder_id": "7695bac3-9397-4ec2-9335-45a2a16f1901",
  • "parent_folder_id": "26caaf35-00f1-4c8f-a2ac-cb04b9b9a6ec",
  • "name": "Characters",
  • "created_at": "2019-08-24T14:15:22Z",
  • "created_by": {
    },
  • "subfolders": [
    ],
  • "source_file_count": 0,
  • "asset_count": 0
}

Move folders

Move folders inside the specified folder.

Authorizations:
ApiKeyUserToken
path Parameters
folder_id
required
string <uuid> (FolderId)

Folder unique identifier

Request Body schema: application/json
Array (non-empty)
string <uuid> (FolderId)

Folder unique identifier

Responses

Request samples

Content type
application/json
[
  • "497f6eca-6276-4993-bfeb-53cbbbba6f08"
]

Update folder details

Updates the folder details.

Authorizations:
ApiKeyUserToken
path Parameters
folder_id
required
string <uuid> (FolderId)

Folder unique identifier

Request Body schema: application/json
name
string non-empty

Folder name

Responses

Request samples

Content type
application/json
{
  • "name": "Characters"
}

Delete folder

Deletes the requested folder. The target folder must be empty.

Authorizations:
ApiKeyUserToken
path Parameters
folder_id
required
string <uuid> (FolderId)

Folder unique identifier

Responses

Create a subfolder

Creates a subfolder.

Authorizations:
ApiKeyUserToken
path Parameters
folder_id
required
string <uuid> (FolderId)

Folder unique identifier

Request Body schema: application/json
name
required
string non-empty

Folder name

subfolders
Array of objects (Folder)

Responses

Request samples

Content type
application/json
{
  • "folder_id": "7695bac3-9397-4ec2-9335-45a2a16f1901",
  • "parent_folder_id": "26caaf35-00f1-4c8f-a2ac-cb04b9b9a6ec",
  • "name": "Characters",
  • "created_by": {
    },
  • "subfolders": [
    ]
}

Response samples

Content type
application/json
{
  • "folder_id": "7695bac3-9397-4ec2-9335-45a2a16f1901",
  • "parent_folder_id": "26caaf35-00f1-4c8f-a2ac-cb04b9b9a6ec",
  • "name": "Characters",
  • "created_at": "2019-08-24T14:15:22Z",
  • "created_by": {
    },
  • "subfolders": [
    ],
  • "source_file_count": 0,
  • "asset_count": 0
}

Lists all subfolders

Lists all subfolders of requested folder. This request can be recursive.

Authorizations:
ApiKeyUserToken
path Parameters
folder_id
required
string <uuid> (FolderId)

Folder unique identifier

query Parameters
depth
integer
Default: 0

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Folder Access

List member access

List member access to the targeted folder.

Authorizations:
ApiKeyUserToken
path Parameters
folder_id
required
string <uuid> (FolderId)

Folder unique identifier

Responses

Response samples

Content type
application/json
{
  • "users": [
    ],
  • "groups": [
    ]
}

Grant member access

Grants member access to the targeted folder.

Authorizations:
ApiKeyUserToken
path Parameters
folder_id
required
string <uuid> (FolderId)

Folder unique identifier

member_type
required
string
Enum: "users" "groups"

User or group

member_id
required
string <uuid>

User or group unique identifier

Request Body schema: application/json
access
required
string
Enum: "read" "write" "manage"

Responses

Request samples

Content type
application/json
{
  • "access": "read"
}

Revoke member access

Revokes member access to a target folder.

Authorizations:
ApiKeyUserToken
path Parameters
folder_id
required
string <uuid> (FolderId)

Folder unique identifier

member_type
required
string
Enum: "users" "groups"

User or group

member_id
required
string <uuid>

User or group unique identifier

Responses

Folder Source files

Upload source file(s)

Uploads the specified source file(s).

Authorizations:
ApiKeyUserToken
path Parameters
folder_id
required
string <uuid> (FolderId)

Folder unique identifier

Request Body schema: multipart/form-data
conversion_pipeline
required
string (ConversionPipeline)
Enum: "auto-detect" "volume" "scene" "texture" "animation"
Array of objects

Instead of submitting a source file as a multipart/form-data field, you can also submit a URL to a source file. This is useful if you want to upload a source file that is already available on a storage service, or upload a source file that is too large to upload via the API.

options
object

Options for the conversion pipeline. For future use.

Responses

Response samples

Content type
application/json
{
  • "upload_task_id": "b10b7b4d-5f5b-4227-81be-b65c01192c43"
}

List source files

Lists all source files in a folder.

Authorizations:
ApiKeyUserToken
path Parameters
folder_id
required
string <uuid> (FolderId)

Folder unique identifier

query Parameters
offset
integer
Default: 0

Pagination offset

limit
integer
Default: 10

Pagination limit

object (Filters)

A filter object containing properties to filter the query by

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Move source files

Move source files inside the specified folder.

Authorizations:
ApiKeyUserToken
path Parameters
folder_id
required
string <uuid> (FolderId)

Folder unique identifier

Request Body schema: application/json
Array
string <uuid> (SourceFileId)

Source file unique identifier

Responses

Request samples

Content type
application/json
[
  • "497f6eca-6276-4993-bfeb-53cbbbba6f08"
]

List upload tasks

Lists all upload tasks in a folder.

Authorizations:
ApiKeyUserToken
path Parameters
folder_id
required
string <uuid> (FolderId)

Folder unique identifier

query Parameters
offset
integer
Default: 0

Pagination offset

limit
integer
Default: 10

Pagination limit

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Folder Assets

List assets

Lists assets.

Authorizations:
ApiKeyUserToken
path Parameters
folder_id
required
string <uuid> (FolderId)

Folder unique identifier

query Parameters
offset
integer
Default: 0

Pagination offset

limit
integer
Default: 10

Pagination limit

object (Filter)

Filter options

Responses

Response samples

Content type
application/json
{
  • "action_maps": [
    ],
  • "algorithms": [
    ],
  • "animation_graphs": [
    ],
  • "animation_sequences": [
    ],
  • "animation_sets": [
    ],
  • "animations": [
    ],
  • "collision_geometries": [
    ],
  • "cubemaps": [
    ],
  • "event_maps": [
    ],
  • "materials": [
    ],
  • "meshes": [
    ],
  • "modules": [
    ],
  • "point_clouds": [
    ],
  • "render_graphs": [
    ],
  • "scenes": [
    ],
  • "scripts": [
    ],
  • "shaders": [
    ],
  • "skeletons": [
    ],
  • "sounds": [
    ],
  • "textures": [
    ],
  • "textures_1d": [
    ],
  • "textures_3d": [
    ],
  • "volume_materials": [
    ]
}

Create new asset

Creates a new asset.

Authorizations:
ApiKeyUserToken
path Parameters
folder_id
required
string <uuid> (FolderId)

Folder unique identifier

Request Body schema: application/json

Asset creation options.

One of
asset_type
required
string (_index_AssetTypeCreatable)
Enum: "action_map" "algorithm" "animation_graph" "animation_sequence" "cubemap" "event_map" "material" "module" "render_graph" "scene" "script" "shader" "volume_material"
name
required
string non-empty

Responses

Request samples

Content type
application/json
Example
{
  • "asset_type": "scene",
  • "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "asset_id": "b4695157-0d1d-4da0-8f9e-5c53149389e4",
  • "name": "my_asset",
  • "source_to_copy_asset_id_map": {
    }
}

Move assets

Move assets inside the specified folder.

Authorizations:
ApiKeyUserToken
path Parameters
folder_id
required
string <uuid> (FolderId)

Folder unique identifier

Request Body schema: application/json

A flat list of asset ids to move.

Array (non-empty)
string <uuid> (_index_AssetId)

Asset unique identifier

Responses

Request samples

Content type
application/json
[
  • "497f6eca-6276-4993-bfeb-53cbbbba6f08"
]

Folder Sessions

List sessions Deprecated

Lists all sessions running on scenes contained in a specified folder.

Authorizations:
ApiKeyUserToken
path Parameters
folder_id
required
string <uuid> (FolderId)

Folder unique identifier

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Source files

List source files

List source files.

Authorizations:
ApiKeyUserToken
query Parameters
offset
integer
Default: 0

Pagination offset

limit
integer
Default: 10

Pagination limit

object (Filters)

A filter object containing properties to filter the query by

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Delete source files

Deletes the target source files. Deleting a source file is permanent.

Authorizations:
ApiKeyUserToken
Request Body schema: application/json
Array
string <uuid> (SourceFileId)

Source file unique identifier

Responses

Request samples

Content type
application/json
[
  • "497f6eca-6276-4993-bfeb-53cbbbba6f08"
]

Download source file

Downloads the target source file.

Authorizations:
ApiKeyUserToken
path Parameters
source_file_id
required
string <uuid> (SourceFileId)

Source file unique identifier

Responses

Get source file details

Get source file details.

Authorizations:
ApiKeyUserToken
path Parameters
source_file_id
required
string <uuid> (SourceFileId)

Source file unique identifier

Responses

Response samples

Content type
application/json
{
  • "source_file_id": "2c63f495-4e59-4976-a6f1-8f22fcc6afab",
  • "source_file_original_name": "my_scene.fbx",
  • "name": "My Scene (FBX)",
  • "size": 12354
}

Update source file details

Updates details for a specific source file.

Authorizations:
ApiKeyUserToken
path Parameters
source_file_id
required
string <uuid> (SourceFileId)

Source file unique identifier

Request Body schema: application/json
name
required
string non-empty

Source file display name

Responses

Request samples

Content type
application/json
{
  • "source_file_id": "2c63f495-4e59-4976-a6f1-8f22fcc6afab",
  • "name": "My Scene (FBX)"
}

List linked assets

Lists all assets generated from the requested source file.

Authorizations:
ApiKeyUserToken
path Parameters
source_file_id
required
string <uuid> (SourceFileId)

Source file unique identifier

Responses

Response samples

Content type
application/json
{
  • "action_maps": [
    ],
  • "algorithms": [
    ],
  • "animation_graphs": [
    ],
  • "animation_sequences": [
    ],
  • "animation_sets": [
    ],
  • "animations": [
    ],
  • "collision_geometries": [
    ],
  • "cubemaps": [
    ],
  • "event_maps": [
    ],
  • "materials": [
    ],
  • "meshes": [
    ],
  • "modules": [
    ],
  • "point_clouds": [
    ],
  • "render_graphs": [
    ],
  • "scenes": [
    ],
  • "scripts": [
    ],
  • "shaders": [
    ],
  • "skeletons": [
    ],
  • "sounds": [
    ],
  • "textures": [
    ],
  • "textures_1d": [
    ],
  • "textures_3d": [
    ],
  • "volume_materials": [
    ]
}

Upload tasks

List upload tasks

Lists all upload tasks. These upload tasks relate to uploaded source files.

Authorizations:
ApiKey
query Parameters
offset
integer
Default: 0

Pagination offset

limit
integer
Default: 10

Pagination limit

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get upload task

Gets information related to an upload task. This upload task relates to uploaded source files.

Authorizations:
ApiKeyUserToken
path Parameters
upload_task_id
required
string <uuid> (UploadTaskId)

Upload task unique identifier

Responses

Response samples

Content type
application/json
{
  • "upload_task_id": "b10b7b4d-5f5b-4227-81be-b65c01192c43",
  • "folder_id": "7695bac3-9397-4ec2-9335-45a2a16f1901",
  • "uploaded_at": "2019-08-24T14:15:22Z",
  • "uploaded_by": {
    },
  • "progress": 0.5,
  • "download_progress": 0.5,
  • "status": "converting",
  • "conversion_tasks": [
    ]
}

Assets

List all assets

Returns a list of all assets.

Authorizations:
ApiKeyUserToken
query Parameters
offset
integer
Default: 0

Pagination offset

limit
integer
Default: 10

Pagination limit

object (Filter)

Filter options

Responses

Response samples

Content type
application/json
{
  • "action_maps": [
    ],
  • "algorithms": [
    ],
  • "animation_graphs": [
    ],
  • "animation_sequences": [
    ],
  • "animation_sets": [
    ],
  • "animations": [
    ],
  • "collision_geometries": [
    ],
  • "cubemaps": [
    ],
  • "event_maps": [
    ],
  • "materials": [
    ],
  • "meshes": [
    ],
  • "modules": [
    ],
  • "point_clouds": [
    ],
  • "render_graphs": [
    ],
  • "scenes": [
    ],
  • "scripts": [
    ],
  • "shaders": [
    ],
  • "skeletons": [
    ],
  • "sounds": [
    ],
  • "textures": [
    ],
  • "textures_1d": [
    ],
  • "textures_3d": [
    ],
  • "volume_materials": [
    ]
}

Delete assets

Batch delete assets. You MUST NOT reference assets.

Authorizations:
ApiKeyUserToken
Request Body schema: application/json
Array (non-empty)
string <uuid> (_index_AssetId)

Asset unique identifier

Responses

Request samples

Content type
application/json
[
  • "497f6eca-6276-4993-bfeb-53cbbbba6f08"
]

Delete asset

Deletes the asset.

Authorizations:
ApiKeyUserToken
path Parameters
asset_container
required
string (_index_AssetContainer)
Enum: "action_maps" "algorithms" "animations" "animation_graphs" "animation_sequences" "animation_sets" "collision_geometries" "cubemaps" "event_maps" "materials" "meshes" "modules" "point_clouds" "render_graphs" "scenes" "scripts" "shaders" "skeletons" "sounds" "textures" "textures_1d" "textures_3d" "volume_materials"

Asset container

asset_id
required
string <uuid> (_index_AssetId)

Asset identifier

Responses

Get asset source file

Gets the source file of the specified asset.

Authorizations:
ApiKeyUserToken
path Parameters
asset_container
required
string (_index_AssetContainer)
Enum: "action_maps" "algorithms" "animations" "animation_graphs" "animation_sequences" "animation_sets" "collision_geometries" "cubemaps" "event_maps" "materials" "meshes" "modules" "point_clouds" "render_graphs" "scenes" "scripts" "shaders" "skeletons" "sounds" "textures" "textures_1d" "textures_3d" "volume_materials"

Asset container

asset_id
required
string <uuid> (_index_AssetId)

Asset identifier

Responses

Response samples

Content type
application/json
{
  • "source_file_id": "2c63f495-4e59-4976-a6f1-8f22fcc6afab",
  • "source_file_original_name": "my_scene.fbx",
  • "name": "My Scene (FBX)",
  • "size": 12354
}

Get asset folder

Gets the asset folder from the specified asset.

Authorizations:
ApiKeyUserToken
path Parameters
asset_container
required
string (_index_AssetContainer)
Enum: "action_maps" "algorithms" "animations" "animation_graphs" "animation_sequences" "animation_sets" "collision_geometries" "cubemaps" "event_maps" "materials" "meshes" "modules" "point_clouds" "render_graphs" "scenes" "scripts" "shaders" "skeletons" "sounds" "textures" "textures_1d" "textures_3d" "volume_materials"

Asset container

asset_id
required
string <uuid> (_index_AssetId)

Asset identifier

Responses

Response samples

Content type
application/json
{
  • "folder_id": "7695bac3-9397-4ec2-9335-45a2a16f1901",
  • "parent_folder_id": "26caaf35-00f1-4c8f-a2ac-cb04b9b9a6ec",
  • "name": "Characters",
  • "created_at": "2019-08-24T14:15:22Z",
  • "created_by": {
    },
  • "subfolders": [
    ],
  • "source_file_count": 0,
  • "asset_count": 0
}

Package asset

Packages and downloads the target asset.

Authorizations:
ApiKeyUserToken
path Parameters
asset_container
required
string (_index_AssetContainer)
Enum: "action_maps" "algorithms" "animations" "animation_graphs" "animation_sequences" "animation_sets" "collision_geometries" "cubemaps" "event_maps" "materials" "meshes" "modules" "point_clouds" "render_graphs" "scenes" "scripts" "shaders" "skeletons" "sounds" "textures" "textures_1d" "textures_3d" "volume_materials"

Asset container

asset_id
required
string <uuid> (_index_AssetId)

Asset identifier

Responses

Export an asset

Downloads an asset payload in a given format. Only mesh is supported for the moment. This endpoint requires special export permission.

Authorizations:
ApiKeyUserToken
path Parameters
asset_container_exportable
required
string (_index_AssetContainerExportable)
Enum: "meshes" "sounds"

Asset that can be exported and downloaded from the api

asset_id
required
string <uuid> (_index_AssetId)

Asset identifier

format
required
string
Enum: "obj" "stl"

Exported mesh format

query Parameters
scale
number
Default: 1

Apply a scale on the exported mesh

Responses

Asset Parts

Get asset details

Gets the asset details from the specified asset.

Authorizations:
ApiKeyUserToken
path Parameters
asset_container
required
string (_index_AssetContainer)
Enum: "action_maps" "algorithms" "animations" "animation_graphs" "animation_sequences" "animation_sets" "collision_geometries" "cubemaps" "event_maps" "materials" "meshes" "modules" "point_clouds" "render_graphs" "scenes" "scripts" "shaders" "skeletons" "sounds" "textures" "textures_1d" "textures_3d" "volume_materials"

Asset container

asset_id
required
string <uuid> (_index_AssetId)

Asset identifier

Responses

Response samples

Content type
application/json
{
  • "asset_id": "b4695157-0d1d-4da0-8f9e-5c53149389e4",
  • "contributors": [
    ],
  • "created_at": "2019-08-24T14:15:22Z",
  • "created_by": {
    },
  • "last_edited_at": "2019-08-24T14:15:22Z",
  • "last_edited_by": {
    },
  • "name": "SM_Sphere",
  • "type": "scene"
}

Get asset dependencies

Gets the asset dependencies from the specified asset.

Authorizations:
ApiKeyUserToken
path Parameters
asset_container
required
string (_index_AssetContainer)
Enum: "action_maps" "algorithms" "animations" "animation_graphs" "animation_sequences" "animation_sets" "collision_geometries" "cubemaps" "event_maps" "materials" "meshes" "modules" "point_clouds" "render_graphs" "scenes" "scripts" "shaders" "skeletons" "sounds" "textures" "textures_1d" "textures_3d" "volume_materials"

Asset container

asset_id
required
string <uuid> (_index_AssetId)

Asset identifier

query Parameters
"flat" (string) or "graph" (string) (Format)
Default: "flat"

Format the dependency results

"all" (string) or "direct" (string) (Depth)
Default: "all"

Filter level

object (Filter)

Filter options

Responses

Response samples

Content type
application/json
Example
{
  • "action_maps": [
    ],
  • "algorithms": [
    ],
  • "animation_graphs": [
    ],
  • "animation_sequences": [
    ],
  • "animation_sets": [
    ],
  • "animations": [
    ],
  • "collision_geometries": [
    ],
  • "cubemaps": [
    ],
  • "event_maps": [
    ],
  • "materials": [
    ],
  • "meshes": [
    ],
  • "modules": [
    ],
  • "point_clouds": [
    ],
  • "render_graphs": [
    ],
  • "scenes": [
    ],
  • "scripts": [
    ],
  • "shaders": [
    ],
  • "skeletons": [
    ],
  • "sounds": [
    ],
  • "textures": [
    ],
  • "textures_1d": [
    ],
  • "textures_3d": [
    ],
  • "volume_materials": [
    ]
}

Get asset references

Gets the asset references from the specified asset.

Authorizations:
ApiKeyUserToken
path Parameters
asset_container
required
string (_index_AssetContainer)
Enum: "action_maps" "algorithms" "animations" "animation_graphs" "animation_sequences" "animation_sets" "collision_geometries" "cubemaps" "event_maps" "materials" "meshes" "modules" "point_clouds" "render_graphs" "scenes" "scripts" "shaders" "skeletons" "sounds" "textures" "textures_1d" "textures_3d" "volume_materials"

Asset container

asset_id
required
string <uuid> (_index_AssetId)

Asset identifier

Responses

Response samples

Content type
application/json
{
  • "action_maps": [
    ],
  • "algorithms": [
    ],
  • "animation_graphs": [
    ],
  • "animation_sequences": [
    ],
  • "animation_sets": [
    ],
  • "animations": [
    ],
  • "collision_geometries": [
    ],
  • "cubemaps": [
    ],
  • "event_maps": [
    ],
  • "materials": [
    ],
  • "meshes": [
    ],
  • "modules": [
    ],
  • "point_clouds": [
    ],
  • "render_graphs": [
    ],
  • "scenes": [
    ],
  • "scripts": [
    ],
  • "shaders": [
    ],
  • "skeletons": [
    ],
  • "sounds": [
    ],
  • "textures": [
    ],
  • "textures_1d": [
    ],
  • "textures_3d": [
    ],
  • "volume_materials": [
    ]
}

Get asset description

Gets the asset description from the specified asset.

Authorizations:
ApiKeyUserToken
path Parameters
asset_container
required
string (_index_AssetContainer)
Enum: "action_maps" "algorithms" "animations" "animation_graphs" "animation_sequences" "animation_sets" "collision_geometries" "cubemaps" "event_maps" "materials" "meshes" "modules" "point_clouds" "render_graphs" "scenes" "scripts" "shaders" "skeletons" "sounds" "textures" "textures_1d" "textures_3d" "volume_materials"

Asset container

asset_id
required
string <uuid> (_index_AssetId)

Asset identifier

Responses

Response samples

Content type
application/json
Example
{
  • "actions": {
    },
  • "name": "my_asset",
  • "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f"
}

Update asset description

Updates asset description. Supports only updating name.

Authorizations:
ApiKeyUserToken
path Parameters
asset_container
required
string (_index_AssetContainer)
Enum: "action_maps" "algorithms" "animations" "animation_graphs" "animation_sequences" "animation_sets" "collision_geometries" "cubemaps" "event_maps" "materials" "meshes" "modules" "point_clouds" "render_graphs" "scenes" "scripts" "shaders" "skeletons" "sounds" "textures" "textures_1d" "textures_3d" "volume_materials"

Asset container

asset_id
required
string <uuid> (_index_AssetId)

Asset identifier

Request Body schema: application/json
name
string non-empty

Responses

Request samples

Content type
application/json
{
  • "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
  • "name": "string"
}

Get asset payload

Gets the asset payload from the specified asset.

Authorizations:
ApiKeyUserToken
path Parameters
asset_container_with_payload
required
string (_index_AssetContainerWithPayload)
Enum: "animations" "animation_sequences" "collision_geometries" "meshes" "point_clouds" "scripts" "shaders" "skeletons" "sounds" "textures" "textures_1d" "textures_3d"

Asset that has payload

asset_id
required
string <uuid> (_index_AssetId)

Asset identifier

Responses

Get asset history

Gets the asset history from the specified asset.

Authorizations:
ApiKeyUserToken
path Parameters
asset_container
required
string (_index_AssetContainer)
Enum: "action_maps" "algorithms" "animations" "animation_graphs" "animation_sequences" "animation_sets" "collision_geometries" "cubemaps" "event_maps" "materials" "meshes" "modules" "point_clouds" "render_graphs" "scenes" "scripts" "shaders" "skeletons" "sounds" "textures" "textures_1d" "textures_3d" "volume_materials"

Asset container

asset_id
required
string <uuid> (_index_AssetId)

Asset identifier

Responses

Response samples

Content type
application/json
{ }

Get asset metadata

Gets the asset metadata from the specified asset.

Authorizations:
ApiKeyUserToken
path Parameters
asset_container
required
string (_index_AssetContainer)
Enum: "action_maps" "algorithms" "animations" "animation_graphs" "animation_sequences" "animation_sets" "collision_geometries" "cubemaps" "event_maps" "materials" "meshes" "modules" "point_clouds" "render_graphs" "scenes" "scripts" "shaders" "skeletons" "sounds" "textures" "textures_1d" "textures_3d" "volume_materials"

Asset container

asset_id
required
string <uuid> (_index_AssetId)

Asset identifier

Responses

Response samples

Content type
application/json
{ }

Get asset code

Gets the code of the specified asset.

Authorizations:
ApiKeyUserToken
path Parameters
asset_container_with_code
required
string (_index_AssetContainerWithCode)
Enum: "algorithms" "animation_sequences" "modules" "scripts" "shaders"

Asset that has code

asset_id
required
string <uuid> (_index_AssetId)

Asset identifier

Responses

Get asset thumbnail

Gets the asset thumbnail from the specified asset.

Authorizations:
UserToken
path Parameters
asset_container
required
string (_index_AssetContainer)
Enum: "action_maps" "algorithms" "animations" "animation_graphs" "animation_sequences" "animation_sets" "collision_geometries" "cubemaps" "event_maps" "materials" "meshes" "modules" "point_clouds" "render_graphs" "scenes" "scripts" "shaders" "skeletons" "sounds" "textures" "textures_1d" "textures_3d" "volume_materials"

Asset container

asset_id
required
string <uuid> (_index_AssetId)

Asset identifier

query Parameters
size
required
string
Enum: "large" "medium" "small" "tiny"

The size of the thumbnail

default_url
string <uri>

A default image url to redirect to if the thumbnail is not found

Responses

Assign a thumbnail

Assigns a thumbnail to the specified asset.

Authorizations:
ApiKeyUserToken
path Parameters
asset_container
required
string (_index_AssetContainer)
Enum: "action_maps" "algorithms" "animations" "animation_graphs" "animation_sequences" "animation_sets" "collision_geometries" "cubemaps" "event_maps" "materials" "meshes" "modules" "point_clouds" "render_graphs" "scenes" "scripts" "shaders" "skeletons" "sounds" "textures" "textures_1d" "textures_3d" "volume_materials"

Asset container

asset_id
required
string <uuid> (_index_AssetId)

Asset identifier

Request Body schema:
string <binary>

The image payload in .jpg format.

Responses

Get custom types

Gets the asset custom types from the specified asset recursively.

Authorizations:
ApiKeyUserToken
path Parameters
asset_container_with_custom_types
required
string (_index_AssetContainerWithCustomTypes)
Value: "modules"

Asset that has custom types

asset_id
required
string <uuid> (_index_AssetId)

Asset identifier

Responses

Response samples

Content type
application/json
{ }

Scenes

List sessions Deprecated

Lists all sessions running a specified scene.

Authorizations:
ApiKeyUserToken
path Parameters
scene_id
required
string <uuid> (_index_AssetId)

Scene unique identifier

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get scene dimensions

Get the axis aligned bounding box of the specified scene.

Authorizations:
ApiKeyUserToken
path Parameters
scene_id
required
string <uuid> (_index_AssetId)

Scene unique identifier

Responses

Response samples

Content type
application/json
{
  • "max": [
    ],
  • "min": [
    ]
}

Get entity

Get a specific entity from a scene

Authorizations:
ApiKeyUserToken
path Parameters
scene_id
required
string <uuid> (_index_AssetId)

Scene unique identifier

entity_id
required
string <uuid>

Entity unique identifier

query Parameters
compute_global_transform
boolean
Default: false

Compute the entity global transform in the scene space

Responses

Response samples

Content type
application/json
Example
{
  • "animation_controller": {
    },
  • "euid": {
    }
}

Update entity

Update a specific entity from a scene

Authorizations:
ApiKeyUserToken
path Parameters
scene_id
required
string <uuid> (_index_AssetId)

Scene unique identifier

entity_id
required
string <uuid>

Entity unique identifier

Request Body schema: application/json

Entity components to update

Any of
required
object (Animation Controller)

Responses

Request samples

Content type
application/json
Example
{
  • "animation_controller": {
    }
}

Delete entity

Delete a specific entity from a scene

Authorizations:
ApiKeyUserToken
path Parameters
scene_id
required
string <uuid> (_index_AssetId)

Scene unique identifier

entity_id
required
string <uuid>

Entity unique identifier

Responses

Sessions

List sessions

Lists all running rendering sessions.

Authorizations:
ApiKeyUserToken
query Parameters
object (Filter)

Filter options

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create a session

Create a new rendering session

Authorizations:
UserToken
Request Body schema: application/json
scene_id
required
string <uuid> (_index_AssetId)

The unique identifier of the scene to launch.

renderer_version
string

The version of the renderer to use.

is_transient
boolean
Default: false

Whether the session should be created as transient or not.

Responses

Request samples

Content type
application/json
{
  • "scene_id": "861eef56-1159-4a95-802f-abab2d0cc192",
  • "renderer_version": "string",
  • "is_transient": false
}

Response samples

Content type
application/json
{
  • "session_id": "1ffd059c-17ea-40a8-8aef-70fd0307db82"
}

Get session details

Retrieves details about the target session.

Authorizations:
ApiKeyUserToken
path Parameters
session_id
required
string <uuid>

Session unique identifier

Responses

Response samples

Content type
application/json
{
  • "session_id": "1ffd059c-17ea-40a8-8aef-70fd0307db82",
  • "scene_id": "861eef56-1159-4a95-802f-abab2d0cc192",
  • "scene_name": "My character",
  • "folder_id": "7695bac3-9397-4ec2-9335-45a2a16f1901",
  • "max_users": 10,
  • "creator_user_id": "7cd45191-9c6d-4e03-9d6c-fdf3d3c08277",
  • "created_at": "2019-08-24T14:15:22Z",
  • "country_code": "US",
  • "continent_code": "NA",
  • "is_transient_session": "NA",
  • "clients": [
    ]
}

Kill session

Forcefully terminates a session.

Authorizations:
ApiKeyUserToken
path Parameters
session_id
required
string <uuid>

Session unique identifier

Responses

Join a session

Creates a new client for the user and returns a token to join the session.

Authorizations:
UserToken
path Parameters
session_id
required
string <uuid>

Session unique identifier

Responses

Response samples

Content type
application/json
{
  • "session_token": "string",
  • "endpoint_info": {
    }
}

Kick client

Kick a client from a running session.

Authorizations:
ApiKeyUserToken
path Parameters
session_id
required
string <uuid>

Session unique identifier

client_id
required
string <uuid>

Client unique identifier

Responses

Guests

Join a session as guest

Join a session as guest. The guest token is required in the guest_token header.

Authorizations:
GuestToken

Responses

Response samples

Content type
application/json
{
  • "session_token": "string",
  • "endpoint_info": {
    }
}

Generate guest token

Generates a token to join the session as a guest.

Authorizations:
ApiKeyUserToken
path Parameters
session_id
required
string <uuid>

Session unique identifier

Responses

Response samples

Content type
application/json
{
  • "guest_token": "a5q3vg"
}