Pipeline Model API
Upload and manage 3D models in Vuframe® Pipeline (formerly Aura™ 3D Model API).
v1.0.0Download aura3d-model-api.yml
The model API allows you to upload, download, process and convert CAD / 3D files with Vuframe's Aura™ service.
Servers
https://api.vuframe.com/v3/aura
Authentication
basicHTTP basic
Contact [email protected]
Endpoints
- Admins
- GET
/resources/{id}retrieve details of a specific resource by ID - GET
/models/{token}retrieve the details for a specific model - PUT
/models/{token}puts the settings or hotspots for a specific model - GET
/models/{token}/filesretrieve the details for a specific model - GET
/models/{token}/formatsretrieve the details for a specific model - GET
/models/{token}/statusretrieve the details for a specific model - GET
/models/{token}/issuesretrieve the details for a specific model - GET
/models/{token}/resourcesretrieve the details for a specific model - GET
/models/{token}/tasksretrieve the tasks for a specific model - POST
/models/{token}/reprocessreprocess a specific model - GET
/models/{token}/operationsretrieve the details for a specific model - PATCH
/models/{token}/operations/{operation}retrieve the details for a specific model - PATCH
/models/{token}/upload/{relative_path}retrieve the details for a specific model
- GET
- Hotspots
- Workspace
Admins
Secured Admin-only calls
retrieve details of a specific resource by ID
GET/resources/{id}
Authentication basic
This request allows you to get resource details with model details and original resource details, if they exist.
Path parameters
| Name | Type | Description |
|---|---|---|
idrequired | integer | database id of the resource |
Responses
200Resource Details
Content type application/json
| Field | Type | Description |
|---|---|---|
resource | object | |
resource.id | string | ID of resource |
resource.type | string | type of resource |
resource.source_url | string | S3 presigned download url for original resource |
resource.source_filesize | integer | filesize in bits |
resource.assets_url | string | S3 presigned download url for assets.zip |
item | object | |
item.title | string | title of model |
item.project | string | title of project / space |
item.token | string | token of model |
item.live_content | boolean | is this item part of a shared SmartVu®? |
item.version | integer | version number |
item.file_type | string | content type of latest resource |
item.uploaded_file_type | string | content type of original resource |
item.resource | object | |
item.resource.id | integer | ID of resource |
item.resource.key | string | S3 storage key of resource |
item.resource.type | string | content type of resource |
item.original | object | |
item.original.id | integer | ID of original resource |
item.original.key | string | S3 storage key of original resource |
item.original.type | string | content type of original resource |
Example
{
"resource": {
"id": "string",
"type": "Cms2::Any3dFileResource",
"source_url": "string",
"source_filesize": 503639292,
"assets_url": "string"
},
"item": {
"title": "string",
"project": "string",
"token": "string",
"live_content": true,
"version": 0,
"file_type": "any_3d.unity",
"uploaded_file_type": "any_3d.unity",
"resource": {
"id": 0,
"key": "resources/39532/",
"type": "any_3d.unity"
},
"original": {
"id": 0,
"key": "resources/39532/",
"type": "any_3d.unity"
}
}
}Example request
curl -X GET "https://api.vuframe.com/v3/aura/resources/{id}" \
-u "USER:PASSWORD"retrieve the details for a specific model
GET/models/{token}
Authentication basic
By passing in the appropriate options, you can search for available inventory in the system
Path parameters
| Name | Type | Description |
|---|---|---|
tokenrequired | string | the token identifying the model |
Responses
200Model Details
Content type application/json
| Field | Type | Description |
|---|---|---|
id | number | ID of Model |
title | string | Title of Model |
project | string | Title of Project containing Model |
token | string | Token of Model |
studio_url | string | Studio URL to Model |
download_url | string | unsigned CDN URL to Model |
live_content | boolean | Is live content? |
version | number | Latest Version Number |
file_type | string | Type of File Resource |
file_size | number | Storage Usage of Model |
uploaded_file_type | string | Type of Original File Resource |
resource | object | Latest Resource |
resource.id | number | ID of Resource |
resource.key | string | S3 Storage Path |
resource.type | string | Type of Resource |
original | object | Optional: Original Resource |
original.id | number | ID of Resource |
original.key | string | S3 Storage Path |
original.type | string | Type of Resource |
settings | SettingsObject | |
settings.api_version | number | API version |
settings.studio_owner_token | string | Studio Owner Token |
settings.main_file_name | string | Name of the main file. This option is needed to set the main file that includes other files within. We need this behavior for uploads of zip Archives (e.g. CATIA, Solidworks) |
settings.scale | number | Scale of 3D Model in float |
settings.rotate_x | number | X value of rotation in float |
settings.rotate_y | number | Y value of rotation in float |
settings.rotate_z | number | Z value of rotation in float |
settings.positioning_x | string | X value of positioning ("MIN|CENTER|MAX") |
settings.positioning_y | string | X value of positioning ("MIN|CENTER|MAX") |
settings.positioning_z | string | X value of positioning ("MIN|CENTER|MAX") |
settings.offset_x | number | X value of offset in meter (Unity standard) |
settings.offset_y | number | X value of offset in meter (Unity standard) |
settings.offset_z | number | X value of offset in meter (Unity standard) |
settings.flip_x | boolean | Should flip 3D model on X axis? |
settings.flip_y | boolean | Should flip 3D model on Y axis? |
settings.flip_z | boolean | Should flip 3D model on Z axis? |
settings.limit_uv_coordinates_for_seam | boolean | Limits the v-value for UV coordinates to 0.99 or lower for all objects whose name starts with the word "Seam". This is a customer-specific fix for Olymp. |
settings.environment_asset | object | |
settings.environment_asset.token | string | |
settings.environment_asset.uri | string | URI with AWS URI or file uri |
settings.addon_assets | array of object | |
settings.addon_assets[].token | string | |
settings.addon_assets[].uri | string | URI with AWS URI or file uri |
settings.ambient_occlusion | AmbientOcclusionObject | |
settings.ambient_occlusion.enabled | boolean | Has Ambient Occlusion enabled? |
settings.ambient_occlusion.radius | number | Radius of Ambient Occlusion in float |
settings.ambient_occlusion.intensity | number | Intensity of Ambient Occlusion in float |
settings.ground_shadow | boolean | Should ground shadows get created? Default: false. |
hotspots | array of HotspotObject | |
hotspots[].id | string | unique ID of this hotspot, automatically generated |
hotspots[].path | string | the path of the hotspot /foo/bar/name |
hotspots[].source | string | where did this hotspot come from? Was it contained in the originally uploaded model (Unity 3D exports only) or generated during processing (based on naming conventions) or created in the editor. One of: "UPLOAD", "GENERATED", "EDITOR", "UNKNOWN". |
hotspots[].source_resource_version | number | <die versionsnummer der resource mit dem der hotspot initial im modell hinzugefügt wurde> |
hotspots[].changed_in_editor | boolean | returns true if this hotspot was changed from the original definition contained in the uploaded model. |
hotspots[].properties | HotspotProperties | Properties are used to create or update hotspots. Requests return an HotspotObject, which contains all properties of a hotspot, including read-only ones. |
hotspots[].properties.name | string | the name of the hotspot object, this is used to access it using Actions |
hotspots[].properties.title | string | human-readable title |
hotspots[].properties.description | string | human-readable description |
hotspots[].properties.removed | boolean | if true this hotspot will not be displayed |
hotspots[].properties.removed_by | string | indicates where and why this hotspot was removed. by_model_revision: the hotspot was not included in a newer model revision, that was uploaded. This only applies for hotspots generated from the original CAD/3D file. in_editor: the hotspot was removed in the editor, this applies for hotspots generated from the original CAD/3D file which are then removed by the user in the online editor. One of: "from_resource", "in_editor". |
hotspots[].properties.position | VectorObject | |
hotspots[].properties.position.x | number | X float |
hotspots[].properties.position.y | number | Y float |
hotspots[].properties.position.z | number | Z float |
hotspots[].properties.rotation | VectorObject | |
hotspots[].properties.rotation.x | number | X float |
hotspots[].properties.rotation.y | number | Y float |
hotspots[].properties.rotation.z | number | Z float |
hotspots[].properties.is_billboard | boolean | Has billboarding activated? This will overwrite rotation if set to true. Default: false. |
hotspots[].properties.type | string | the type of the hotspot One of: "event", "ego". |
hotspots[].properties.texture | object | Image Item |
hotspots[].properties.texture.token | string | Token of Item |
hotspots[].properties.texture.url | string | Presigned S3 URL |
hotspots[].properties.color | string | color of the hotspot. r,g.b,a with rgb between 0 and 255 and a between 0 and 1 Default: "(0,255,0,1)". |
hotspots[].properties.scale | number | float between 0.1 to 5.0 Default: 1. |
Example
{
"id": 0,
"title": "string",
"project": "string",
"token": "string",
"studio_url": "string",
"download_url": "string",
"live_content": true,
"version": 0,
"file_type": "string",
"file_size": 0,
"uploaded_file_type": "string",
"resource": {
"id": 0,
"key": "string",
"type": "string"
},
"original": {
"id": 0,
"key": "string",
"type": "string"
},
"settings": {
"api_version": 0,
"studio_owner_token": "string",
"main_file_name": "string",
"scale": 0,
"rotate_x": 0,
"rotate_y": 0,
"rotate_z": 0,
"positioning_x": "string",
"positioning_y": "string",
"positioning_z": "string",
"offset_x": 0,
"offset_y": 0,
"offset_z": 0,
"flip_x": true,
"flip_y": true,
"flip_z": true,
"limit_uv_coordinates_for_seam": true,
"environment_asset": {
"token": "string",
"uri": "string"
},
"addon_assets": [
{
"token": "string",
"uri": "string"
}
],
"ambient_occlusion": {
"enabled": true,
"radius": 0,
"intensity": 0
},
"ground_shadow": false
},
"hotspots": [
{
"id": "string",
"path": "string",
"source": "UPLOAD",
"source_resource_version": 0,
"changed_in_editor": true,
"properties": {
"name": "string",
"title": "string",
"description": "string",
"removed": true,
"removed_by": "from_resource",
"position": {
"x": 0,
"y": 0,
"z": 0
},
"rotation": {
"x": 0,
"y": 0,
"z": 0
},
"is_billboard": false,
"type": "event",
"texture": {
"token": "string",
"url": "string"
},
"color": "(0,255,0,1)",
"scale": 1
}
}
]
}400bad input parameter
No body.
Example request
curl -X GET "https://api.vuframe.com/v3/aura/models/{token}" \
-u "USER:PASSWORD"puts the settings or hotspots for a specific model
PUT/models/{token}
Authentication basic
By passing in the appropriate options, you can search for available inventory in the system
Path parameters
| Name | Type | Description |
|---|---|---|
tokenrequired | string | the token identifying the model |
Request body required
Content type application/json
| Field | Type | Description |
|---|---|---|
settings | EditableSettingsObject | |
settings.scale | number | Scale of 3D Model in float |
settings.rotate_x | number | X value of rotation in float |
settings.rotate_y | number | Y value of rotation in float |
settings.rotate_z | number | Z value of rotation in float |
settings.positioning_x | string | X value of positioning ("MIN|CENTER|MAX") |
settings.positioning_y | string | X value of positioning ("MIN|CENTER|MAX") |
settings.positioning_z | string | X value of positioning ("MIN|CENTER|MAX") |
settings.offset_x | number | X value of offset in meter (Unity standard) |
settings.offset_y | number | X value of offset in meter (Unity standard) |
settings.offset_z | number | X value of offset in meter (Unity standard) |
settings.flip_x | boolean | Should flip 3D model on X axis? |
settings.flip_y | boolean | Should flip 3D model on Y axis? |
settings.flip_z | boolean | Should flip 3D model on Z axis? |
settings.limit_uv_coordinates_for_seam | boolean | Limits the v-value for UV coordinates to 0.99 or lower for all objects whose name starts with the word "Seam". This is a customer-specific fix for Olymp. |
settings.environment_asset | object | |
settings.environment_asset.token | string | |
settings.environment_asset.uri | string | URI with AWS URI or file uri |
settings.addon_assets | array of object | |
settings.addon_assets[].token | string | |
settings.addon_assets[].uri | string | URI with AWS URI or file uri |
settings.ambient_occlusion | AmbientOcclusionObject | |
settings.ambient_occlusion.enabled | boolean | Has Ambient Occlusion enabled? |
settings.ambient_occlusion.radius | number | Radius of Ambient Occlusion in float |
settings.ambient_occlusion.intensity | number | Intensity of Ambient Occlusion in float |
settings.ground_shadow | boolean | Should ground shadows get created? Default: false. |
hotspots | array of HotspotObject | |
hotspots[].id | string | unique ID of this hotspot, automatically generated |
hotspots[].path | string | the path of the hotspot /foo/bar/name |
hotspots[].source | string | where did this hotspot come from? Was it contained in the originally uploaded model (Unity 3D exports only) or generated during processing (based on naming conventions) or created in the editor. One of: "UPLOAD", "GENERATED", "EDITOR", "UNKNOWN". |
hotspots[].source_resource_version | number | <die versionsnummer der resource mit dem der hotspot initial im modell hinzugefügt wurde> |
hotspots[].changed_in_editor | boolean | returns true if this hotspot was changed from the original definition contained in the uploaded model. |
hotspots[].properties | HotspotProperties | Properties are used to create or update hotspots. Requests return an HotspotObject, which contains all properties of a hotspot, including read-only ones. |
hotspots[].properties.name | string | the name of the hotspot object, this is used to access it using Actions |
hotspots[].properties.title | string | human-readable title |
hotspots[].properties.description | string | human-readable description |
hotspots[].properties.removed | boolean | if true this hotspot will not be displayed |
hotspots[].properties.removed_by | string | indicates where and why this hotspot was removed. by_model_revision: the hotspot was not included in a newer model revision, that was uploaded. This only applies for hotspots generated from the original CAD/3D file. in_editor: the hotspot was removed in the editor, this applies for hotspots generated from the original CAD/3D file which are then removed by the user in the online editor. One of: "from_resource", "in_editor". |
hotspots[].properties.position | VectorObject | |
hotspots[].properties.position.x | number | X float |
hotspots[].properties.position.y | number | Y float |
hotspots[].properties.position.z | number | Z float |
hotspots[].properties.rotation | VectorObject | |
hotspots[].properties.rotation.x | number | X float |
hotspots[].properties.rotation.y | number | Y float |
hotspots[].properties.rotation.z | number | Z float |
hotspots[].properties.is_billboard | boolean | Has billboarding activated? This will overwrite rotation if set to true. Default: false. |
hotspots[].properties.type | string | the type of the hotspot One of: "event", "ego". |
hotspots[].properties.texture | object | Image Item |
hotspots[].properties.texture.token | string | Token of Item |
hotspots[].properties.texture.url | string | Presigned S3 URL |
hotspots[].properties.color | string | color of the hotspot. r,g.b,a with rgb between 0 and 255 and a between 0 and 1 Default: "(0,255,0,1)". |
hotspots[].properties.scale | number | float between 0.1 to 5.0 Default: 1. |
Example
{
"settings": {
"scale": 0,
"rotate_x": 0,
"rotate_y": 0,
"rotate_z": 0,
"positioning_x": "string",
"positioning_y": "string",
"positioning_z": "string",
"offset_x": 0,
"offset_y": 0,
"offset_z": 0,
"flip_x": true,
"flip_y": true,
"flip_z": true,
"limit_uv_coordinates_for_seam": true,
"environment_asset": {
"token": "string",
"uri": "string"
},
"addon_assets": [
{
"token": "string",
"uri": "string"
}
],
"ambient_occlusion": {
"enabled": true,
"radius": 0,
"intensity": 0
},
"ground_shadow": false
},
"hotspots": [
{
"id": "string",
"path": "string",
"source": "UPLOAD",
"source_resource_version": 0,
"changed_in_editor": true,
"properties": {
"name": "string",
"title": "string",
"description": "string",
"removed": true,
"removed_by": "from_resource",
"position": {
"x": 0,
"y": 0,
"z": 0
},
"rotation": {
"x": 0,
"y": 0,
"z": 0
},
"is_billboard": false,
"type": "event",
"texture": {
"token": "string",
"url": "string"
},
"color": "(0,255,0,1)",
"scale": 1
}
}
]
}Responses
200search results matching criteria
Content type application/json
| Field | Type | Description |
|---|---|---|
[].platform_version | number | |
[].token | string | |
[].title | string | |
[].title_translations | object | |
[].description | string | |
[].description_translations | object | |
[].hashtags | string | |
[].hashtags_translations | object | |
[].item_type | string | |
[].version | number | |
[].file_size | number | |
[].updated_at | string | |
[].inclusion | string | |
[].folder_token | string | |
[].file_extension | string | |
[].package_resolutions | string | |
[].preview_image_url | string | |
[].preview_image_mime_type | string | |
[].thumbnail_image_url | string | |
[].content_url | string | |
[].content_mime_type | string | |
[].properties_url | string | |
[].named_resources_url | string | |
[].properties | object | |
[].project | string | |
[].company | string |
Example
[
{
"platform_version": 1,
"token": "string",
"title": "A title",
"title_translations": {},
"description": "A description",
"description_translations": {},
"hashtags": "string",
"hashtags_translations": {},
"item_type": "any3d_scene",
"version": 0,
"file_size": 0,
"updated_at": "string",
"inclusion": "string",
"folder_token": "string",
"file_extension": "string",
"package_resolutions": "string",
"preview_image_url": "string",
"preview_image_mime_type": "string",
"thumbnail_image_url": "string",
"content_url": "string",
"content_mime_type": "string",
"properties_url": "string",
"named_resources_url": "string",
"properties": {},
"project": "string",
"company": "string"
}
]400bad input parameter
No body.
Example request
curl -X PUT "https://api.vuframe.com/v3/aura/models/{token}" \
-u "USER:PASSWORD" \
-H "Content-Type: application/json" \
-d '{"settings":{"scale":0,"rotate_x":0,"rotate_y":0,"rotate_z":0,"positioning_x":"string","positioning_y":"string","positioning_z":"string","offset_x":0,"offset_y":0,"offset_z":0,"flip_x":true,"flip_y":true,"flip_z":true,"limit_uv_coordinates_for_seam":true,"environment_asset":{"token":"string","uri":"string"},"addon_assets":[{"token":"string","uri":"string"}],"ambient_occlusion":{"enabled":true,"radius":0,"intensity":0},"ground_shadow":false},"hotspots":[{"id":"string","path":"string","source":"UPLOAD","source_resource_version":0,"changed_in_editor":true,"properties":{"name":"string","title":"string","description":"string","removed":true,"removed_by":"from_resource","position":{"x":0,"y":0,"z":0},"rotation":{"x":0,"y":0,"z":0},"is_billboard":false,"type":"event","texture":{"token":"string","url":"string"},"color":"(0,255,0,1)","scale":1}}]}'retrieve the details for a specific model
GET/models/{token}/files
Authentication basic
Path parameters
| Name | Type | Description |
|---|---|---|
tokenrequired | string | the token identifying the model |
Responses
200search results matching criteria
Content type application/json object
Example request
curl -X GET "https://api.vuframe.com/v3/aura/models/{token}/files" \
-u "USER:PASSWORD"retrieve the details for a specific model
GET/models/{token}/formats
Authentication basic
Path parameters
| Name | Type | Description |
|---|---|---|
tokenrequired | string | the token identifying the model |
Responses
200search results matching criteria
Content type application/json object
Example request
curl -X GET "https://api.vuframe.com/v3/aura/models/{token}/formats" \
-u "USER:PASSWORD"retrieve the details for a specific model
GET/models/{token}/status
Authentication basic
Path parameters
| Name | Type | Description |
|---|---|---|
tokenrequired | string | the token identifying the model |
Responses
200search results matching criteria
Content type application/json object
Example request
curl -X GET "https://api.vuframe.com/v3/aura/models/{token}/status" \
-u "USER:PASSWORD"retrieve the details for a specific model
GET/models/{token}/issues
Authentication basic
Path parameters
| Name | Type | Description |
|---|---|---|
tokenrequired | string | the token identifying the model |
Responses
200search results matching criteria
Content type application/json object
Example request
curl -X GET "https://api.vuframe.com/v3/aura/models/{token}/issues" \
-u "USER:PASSWORD"retrieve the details for a specific model
GET/models/{token}/resources
Authentication basic
Path parameters
| Name | Type | Description |
|---|---|---|
tokenrequired | string | the token identifying the model |
Responses
200search results matching criteria
Content type application/json object
Example request
curl -X GET "https://api.vuframe.com/v3/aura/models/{token}/resources" \
-u "USER:PASSWORD"retrieve the tasks for a specific model
GET/models/{token}/tasks
Authentication basic
Path parameters
| Name | Type | Description |
|---|---|---|
tokenrequired | string | the token identifying the model |
Responses
200search results matching criteria
Content type application/json object
Example request
curl -X GET "https://api.vuframe.com/v3/aura/models/{token}/tasks" \
-u "USER:PASSWORD"reprocess a specific model
POST/models/{token}/reprocess
Authentication basic
Path parameters
| Name | Type | Description |
|---|---|---|
tokenrequired | string | the token identifying the model |
Request body
Optional body with filter options like file_type.
Content type application/json
| Field | Type | Description |
|---|---|---|
file_type | string | File Type of Model (e.g. aura3d_files) described here: https://share.vuframe.com/1759d56c |
Example
{
"file_type": "aura3d_files"
}Responses
200list of items that will be reprocessed.
Content type application/json object
Example request
curl -X POST "https://api.vuframe.com/v3/aura/models/{token}/reprocess" \
-u "USER:PASSWORD" \
-H "Content-Type: application/json" \
-d '{"file_type":"aura3d_files"}'retrieve the details for a specific model
GET/models/{token}/operations
Authentication basic
Path parameters
| Name | Type | Description |
|---|---|---|
tokenrequired | string | the token identifying the model |
Responses
200search results matching criteria
Content type application/json object
Example request
curl -X GET "https://api.vuframe.com/v3/aura/models/{token}/operations" \
-u "USER:PASSWORD"retrieve the details for a specific model
PATCH/models/{token}/operations/{operation}
Authentication basic
Path parameters
| Name | Type | Description |
|---|---|---|
tokenrequired | string | the token identifying the model |
operationrequired | string | the operation's id |
Responses
200search results matching criteria
Content type application/json object
Example request
curl -X PATCH "https://api.vuframe.com/v3/aura/models/{token}/operations/{operation}" \
-u "USER:PASSWORD"retrieve the details for a specific model
PATCH/models/{token}/upload/{relative_path}
Authentication basic
Path parameters
| Name | Type | Description |
|---|---|---|
tokenrequired | string | the token identifying the model |
relative_pathrequired | string | the relative path of the uploaded file |
Responses
200search results matching criteria
Content type application/json object
Example request
curl -X PATCH "https://api.vuframe.com/v3/aura/models/{token}/upload/{relative_path}" \
-u "USER:PASSWORD"Hotspots
⚠️ not implemented - get all hotspots of a specific model
GET/models/{token}/hotspots
Authentication basic
Path parameters
| Name | Type | Description |
|---|---|---|
tokenrequired | string | the token identifying the model |
Responses
200Response of Success
Content type application/json
| Field | Type | Description |
|---|---|---|
[].id | string | unique ID of this hotspot, automatically generated |
[].path | string | the path of the hotspot /foo/bar/name |
[].source | string | where did this hotspot come from? Was it contained in the originally uploaded model (Unity 3D exports only) or generated during processing (based on naming conventions) or created in the editor. One of: "UPLOAD", "GENERATED", "EDITOR", "UNKNOWN". |
[].source_resource_version | number | <die versionsnummer der resource mit dem der hotspot initial im modell hinzugefügt wurde> |
[].changed_in_editor | boolean | returns true if this hotspot was changed from the original definition contained in the uploaded model. |
[].properties | HotspotProperties | Properties are used to create or update hotspots. Requests return an HotspotObject, which contains all properties of a hotspot, including read-only ones. |
[].properties.name | string | the name of the hotspot object, this is used to access it using Actions |
[].properties.title | string | human-readable title |
[].properties.description | string | human-readable description |
[].properties.removed | boolean | if true this hotspot will not be displayed |
[].properties.removed_by | string | indicates where and why this hotspot was removed. by_model_revision: the hotspot was not included in a newer model revision, that was uploaded. This only applies for hotspots generated from the original CAD/3D file. in_editor: the hotspot was removed in the editor, this applies for hotspots generated from the original CAD/3D file which are then removed by the user in the online editor. One of: "from_resource", "in_editor". |
[].properties.position | VectorObject | |
[].properties.position.x | number | X float |
[].properties.position.y | number | Y float |
[].properties.position.z | number | Z float |
[].properties.rotation | VectorObject | |
[].properties.rotation.x | number | X float |
[].properties.rotation.y | number | Y float |
[].properties.rotation.z | number | Z float |
[].properties.is_billboard | boolean | Has billboarding activated? This will overwrite rotation if set to true. Default: false. |
[].properties.type | string | the type of the hotspot One of: "event", "ego". |
[].properties.texture | object | Image Item |
[].properties.texture.token | string | Token of Item |
[].properties.texture.url | string | Presigned S3 URL |
[].properties.color | string | color of the hotspot. r,g.b,a with rgb between 0 and 255 and a between 0 and 1 Default: "(0,255,0,1)". |
[].properties.scale | number | float between 0.1 to 5.0 Default: 1. |
Example
[
{
"id": "string",
"path": "string",
"source": "UPLOAD",
"source_resource_version": 0,
"changed_in_editor": true,
"properties": {
"name": "string",
"title": "string",
"description": "string",
"removed": true,
"removed_by": "from_resource",
"position": {
"x": 0,
"y": 0,
"z": 0
},
"rotation": {
"x": 0,
"y": 0,
"z": 0
},
"is_billboard": false,
"type": "event",
"texture": {
"token": "string",
"url": "string"
},
"color": "(0,255,0,1)",
"scale": 1
}
}
]Example request
curl -X GET "https://api.vuframe.com/v3/aura/models/{token}/hotspots" \
-u "USER:PASSWORD"⚠️ not implemented - create, update and remove one or many hotspots
POST/models/{token}/hotspots
Authentication basic
Path parameters
| Name | Type | Description |
|---|---|---|
tokenrequired | string | the token identifying the model |
Request body required
Content type application/json
| Field | Type | Description |
|---|---|---|
[].id | string | unique ID of this hotspot, automatically generated |
[].path | string | the path of the hotspot /foo/bar/name |
[].source | string | where did this hotspot come from? Was it contained in the originally uploaded model (Unity 3D exports only) or generated during processing (based on naming conventions) or created in the editor. One of: "UPLOAD", "GENERATED", "EDITOR", "UNKNOWN". |
[].source_resource_version | number | <die versionsnummer der resource mit dem der hotspot initial im modell hinzugefügt wurde> |
[].changed_in_editor | boolean | returns true if this hotspot was changed from the original definition contained in the uploaded model. |
[].properties | HotspotProperties | Properties are used to create or update hotspots. Requests return an HotspotObject, which contains all properties of a hotspot, including read-only ones. |
[].properties.name | string | the name of the hotspot object, this is used to access it using Actions |
[].properties.title | string | human-readable title |
[].properties.description | string | human-readable description |
[].properties.removed | boolean | if true this hotspot will not be displayed |
[].properties.removed_by | string | indicates where and why this hotspot was removed. by_model_revision: the hotspot was not included in a newer model revision, that was uploaded. This only applies for hotspots generated from the original CAD/3D file. in_editor: the hotspot was removed in the editor, this applies for hotspots generated from the original CAD/3D file which are then removed by the user in the online editor. One of: "from_resource", "in_editor". |
[].properties.position | VectorObject | |
[].properties.position.x | number | X float |
[].properties.position.y | number | Y float |
[].properties.position.z | number | Z float |
[].properties.rotation | VectorObject | |
[].properties.rotation.x | number | X float |
[].properties.rotation.y | number | Y float |
[].properties.rotation.z | number | Z float |
[].properties.is_billboard | boolean | Has billboarding activated? This will overwrite rotation if set to true. Default: false. |
[].properties.type | string | the type of the hotspot One of: "event", "ego". |
[].properties.texture | object | Image Item |
[].properties.texture.token | string | Token of Item |
[].properties.texture.url | string | Presigned S3 URL |
[].properties.color | string | color of the hotspot. r,g.b,a with rgb between 0 and 255 and a between 0 and 1 Default: "(0,255,0,1)". |
[].properties.scale | number | float between 0.1 to 5.0 Default: 1. |
Example
[
{
"id": "string",
"path": "string",
"source": "UPLOAD",
"source_resource_version": 0,
"changed_in_editor": true,
"properties": {
"name": "string",
"title": "string",
"description": "string",
"removed": true,
"removed_by": "from_resource",
"position": {
"x": 0,
"y": 0,
"z": 0
},
"rotation": {
"x": 0,
"y": 0,
"z": 0
},
"is_billboard": false,
"type": "event",
"texture": {
"token": "string",
"url": "string"
},
"color": "(0,255,0,1)",
"scale": 1
}
}
]Responses
200Response for Success
Content type application/json
| Field | Type | Description |
|---|---|---|
success | boolean | Was the Request successfully processed? Default: true. |
Example
{
"success": true
}404Bad Request
Content type application/json
| Field | Type | Description |
|---|---|---|
error | string | Error Message |
Example
{
"error": "string"
}Example request
curl -X POST "https://api.vuframe.com/v3/aura/models/{token}/hotspots" \
-u "USER:PASSWORD" \
-H "Content-Type: application/json" \
-d '[{"id":"string","path":"string","source":"UPLOAD","source_resource_version":0,"changed_in_editor":true,"properties":{"name":"string","title":"string","description":"string","removed":true,"removed_by":"from_resource","position":{"x":0,"y":0,"z":0},"rotation":{"x":0,"y":0,"z":0},"is_billboard":false,"type":"event","texture":{"token":"string","url":"string"},"color":"(0,255,0,1)","scale":1}}]'Workspace
retrieve all models of a workspace
GET/workspaces/{token}/models
Authentication basic
Path parameters
| Name | Type | Description |
|---|---|---|
tokenrequired | string | the token identifying the workspace |
Responses
200search results matching criteria
Content type application/json
| Field | Type | Description |
|---|---|---|
platform_version | number | |
token | string | |
title | string | |
title_translations | object | |
description | string | |
description_translations | object | |
hashtags | string | |
hashtags_translations | object | |
item_type | string | |
version | number | |
file_size | number | |
updated_at | string | |
inclusion | string | |
folder_token | string | |
file_extension | string | |
package_resolutions | string | |
preview_image_url | string | |
preview_image_mime_type | string | |
thumbnail_image_url | string | |
content_url | string | |
content_mime_type | string | |
properties_url | string | |
named_resources_url | string | |
properties | object | |
project | string | |
company | string |
Example
{
"platform_version": 1,
"token": "string",
"title": "A title",
"title_translations": {},
"description": "A description",
"description_translations": {},
"hashtags": "string",
"hashtags_translations": {},
"item_type": "any3d_scene",
"version": 0,
"file_size": 0,
"updated_at": "string",
"inclusion": "string",
"folder_token": "string",
"file_extension": "string",
"package_resolutions": "string",
"preview_image_url": "string",
"preview_image_mime_type": "string",
"thumbnail_image_url": "string",
"content_url": "string",
"content_mime_type": "string",
"properties_url": "string",
"named_resources_url": "string",
"properties": {},
"project": "string",
"company": "string"
}Example request
curl -X GET "https://api.vuframe.com/v3/aura/workspaces/{token}/models" \
-u "USER:PASSWORD"reprocess every model of a workspace
POST/workspaces/{token}/reprocess
Authentication basic
Path parameters
| Name | Type | Description |
|---|---|---|
tokenrequired | string | the token identifying the workspace |
Request body
Optional body with filter options like file_type.
Content type application/json
| Field | Type | Description |
|---|---|---|
file_type | string | File Type of Model (e.g. aura3d_files) described here: https://share.vuframe.com/1759d56c |
Example
{
"file_type": "aura3d_files"
}Responses
200list of items that will be reprocessed.
Content type application/json object
Example request
curl -X POST "https://api.vuframe.com/v3/aura/workspaces/{token}/reprocess" \
-u "USER:PASSWORD" \
-H "Content-Type: application/json" \
-d '{"file_type":"aura3d_files"}'