HomeGuidesAPI ReferenceChangelogDiscussions
Hire a ReactVision Expert 🛠️Launch Studio 🖥️Sponsor on GitHub ❤️Log In
API Reference

Attach content to a cloud anchor

Secret key only.

Attaches content to an anchor at a position relative to it: a team asset from the library, a file uploaded with POST /assets/upload, or a stored file named by its URL, which becomes a new file record. A file must belong to the anchor's project.

An id your key cannot reach (another team's, or another project's for a bound key) gets the same answer as an id that does not exist.

Not counted against the monthly API request quota.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Path Params
uuid
required

Anchor id.

Body Params

Name exactly one source: team_asset_id, user_asset_id, or file_url for a file to turn into a new file record. With an id, file_url is ignored.

uuid

A team asset of your team.

uuid

A file of the anchor's project.

string

The file_url of a file this project uploaded. Creates a file record, whose size is read from storage and counted against the storage quota.

string

With file_url: the new file's name. Default: the file name from the URL. Cut to 250 characters.

string
length ≤ 2000

With file_url: up to 2000 characters.

string
enum

With file_url. Default OTHER.

Allowed:
string
length ≤ 255

With file_url: your app's id for the user. Up to 255 characters.

external_user_metadata
object

With file_url: your data about the user, up to 4096 bytes as JSON.

position
object
rotation
object

Quaternion.

number

Default 1.

boolean

Default true.

metadata
object

Up to 4096 bytes as JSON. Default {}.

Responses

INVALID_BODY: the body is not valid JSON, or not a JSON object.

INVALID_FIELD_VALUE: a field has the wrong type, such as metadata that is not an object.

FIELD_TOO_LONG: a text field is over its limit, or a JSON object is over 4096 bytes.

USER_ASSET_PROJECT_MISMATCH: user_asset_id belongs to another project of the team.

INVALID_FILE_URL: file_url is not a storage URL of this platform.

INVALID_ASSET_TYPE: asset_type is not IMAGE, VIDEO, 3D-MODEL or OTHER.

FILE_NOT_FOUND: no stored file at file_url.

INVALID_ASSET_REFERENCE: none of team_asset_id, user_asset_id and file_url was sent.

MISSING_API_KEY: no x-api-key header.

INVALID_API_KEY_FORMAT: the key is not rv_live_, rv_client_ or rv_secret_ followed by 64 lowercase hexadecimal characters.

INVALID_API_KEY: no such key, or a key sent with the wrong prefix for its type.

API_KEY_EXPIRED: the key is past its expiry date.

AUTH_ERROR: a user token (rv_ut_) was sent as a Bearer token. This operation does not accept user tokens.

API_KEY_TYPE_NOT_ALLOWED: a client key. This operation needs a secret key.

STORAGE_LIMIT_REACHED: a new file record would exceed the team's storage quota.

ANCHOR_NOT_FOUND: no such anchor, or one the key cannot reach.

TEAM_ASSET_NOT_FOUND: no such team asset in your team.

USER_ASSET_NOT_FOUND: no such file in your team.

RATE_LIMITED: more than 600 a minute from one IP address; or, for a secret key, more than 1,200 requests a minute across all operations. Wait the number of seconds in Retry-After. See Limits.

ASSET_CREATE_FAILED: the new file record could not be created.

ATTACH_ASSET_FAILED: the attachment could not be stored.

INTERNAL_ERROR: an unexpected error. Retry, and quote meta.request_id to support if it persists.

API_KEY_LOOKUP_FAILED: the key could not be checked. Retry; this does not mean the key is invalid.

PROJECT_LOOKUP_FAILED: the project could not be checked. Retry.

Language
Credentials
Header
LoadingLoading…
Response
Choose an example:
application/json