VRChat.Worlds (vrchat v1.20.0)

View Source

API calls for all endpoints tagged Worlds.

Summary

Functions

Check User Persistence Exists Checks whether the user has persistence data for a given world

Create World 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.

Delete User Persistence Deletes the user's persistence data for a given world

Delete World 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.

List Active Worlds Search and list currently Active worlds by query filters.

List Favorited Worlds Search and list favorited worlds by query filters.

List Recent Worlds Search and list recently visited worlds by query filters.

Get World by ID Get information about a specific World. Works unauthenticated but when so will always return 0 for certain fields.

Get World Instance Returns a worlds instance.

Get World Metadata Return a worlds custom metadata. This is currently believed to be unused. Metadata can be set with updateWorld and can be any arbitrary object.

Get World Publish Status Returns a worlds publish status.

Publish World Publish a world. You can only publish one world per week.

Search All Worlds Search and list any worlds by query filters.

Unpublish World Unpublish a world.

Update World Update information about a specific World.

Functions

check_user_persistence_exists(connection, user_id, world_id, opts \\ [])

@spec check_user_persistence_exists(
  Tesla.Env.client(),
  String.t(),
  String.t(),
  keyword()
) ::
  {:ok, nil} | {:ok, VRChat.Model.Error.t()} | {:error, Tesla.Env.t()}

Check User Persistence Exists Checks whether the user has persistence data for a given world

Parameters

  • connection (VRChat.Connection): Connection to server
  • user_id (String.t): Must be a valid user ID.
  • world_id (String.t): Must be a valid world ID.
  • opts (keyword): Optional parameters

Returns

  • {:ok, nil} on success
  • {:error, Tesla.Env.t} on failure

create_world(connection, opts \\ [])

@spec create_world(
  Tesla.Env.client(),
  keyword()
) ::
  {:ok, VRChat.Model.World.t()}
  | {:ok, VRChat.Model.Error.t()}
  | {:error, Tesla.Env.t()}

Create World 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.

Parameters

  • connection (VRChat.Connection): Connection to server
  • opts (keyword): Optional parameters
    • :body (CreateWorldRequest):

Returns

  • {:ok, VRChat.Model.World.t} on success
  • {:error, Tesla.Env.t} on failure

delete_user_persistence(connection, user_id, world_id, opts \\ [])

@spec delete_user_persistence(Tesla.Env.client(), String.t(), String.t(), keyword()) ::
  {:ok, nil} | {:ok, VRChat.Model.Error.t()} | {:error, Tesla.Env.t()}

Delete User Persistence Deletes the user's persistence data for a given world

Parameters

  • connection (VRChat.Connection): Connection to server
  • user_id (String.t): Must be a valid user ID.
  • world_id (String.t): Must be a valid world ID.
  • opts (keyword): Optional parameters

Returns

  • {:ok, nil} on success
  • {:error, Tesla.Env.t} on failure

delete_world(connection, world_id, opts \\ [])

@spec delete_world(Tesla.Env.client(), String.t(), keyword()) ::
  {:ok, nil} | {:ok, VRChat.Model.Error.t()} | {:error, Tesla.Env.t()}

Delete World 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.

Parameters

  • connection (VRChat.Connection): Connection to server
  • world_id (String.t): Must be a valid world ID.
  • opts (keyword): Optional parameters

Returns

  • {:ok, nil} on success
  • {:error, Tesla.Env.t} on failure

get_active_worlds(connection, opts \\ [])

@spec get_active_worlds(
  Tesla.Env.client(),
  keyword()
) ::
  {:ok, [VRChat.Model.LimitedWorld.t()]}
  | {:ok, VRChat.Model.Error.t()}
  | {:error, Tesla.Env.t()}

List Active Worlds Search and list currently Active worlds by query filters.

Parameters

  • connection (VRChat.Connection): Connection to server
  • opts (keyword): Optional parameters
    • :featured (boolean()): Filters on featured results.
    • :sort (SortOption): The sort order of the results.
    • :n (integer()): The number of objects to return.
    • :order (OrderOption): Result ordering
    • :offset (integer()): A zero-based offset from the default object sorting from where search results start.
    • :search (String.t): Filters by world name.
    • :tag (String.t): Tags to include (comma-separated). Any of the tags needs to be present.
    • :notag (String.t): Tags to exclude (comma-separated).
    • :releaseStatus (ReleaseStatus): Filter by ReleaseStatus.
    • :maxUnityVersion (String.t): The maximum Unity version supported by the asset.
    • :minUnityVersion (String.t): The minimum Unity version supported by the asset.
    • :platform (String.t): The platform the asset supports.

Returns

  • {:ok, [%LimitedWorld{}, ...]} on success
  • {:error, Tesla.Env.t} on failure

get_favorited_worlds(connection, opts \\ [])

@spec get_favorited_worlds(
  Tesla.Env.client(),
  keyword()
) ::
  {:ok, [VRChat.Model.FavoritedWorld.t()]}
  | {:ok, VRChat.Model.Error.t()}
  | {:error, Tesla.Env.t()}

List Favorited Worlds Search and list favorited worlds by query filters.

Parameters

  • connection (VRChat.Connection): Connection to server
  • opts (keyword): Optional parameters
    • :featured (boolean()): Filters on featured results.
    • :sort (SortOption): The sort order of the results.
    • :n (integer()): The number of objects to return.
    • :order (OrderOption): Result ordering
    • :offset (integer()): A zero-based offset from the default object sorting from where search results start.
    • :search (String.t): Filters by world name.
    • :tag (String.t): Tags to include (comma-separated). Any of the tags needs to be present.
    • :notag (String.t): Tags to exclude (comma-separated).
    • :releaseStatus (ReleaseStatus): Filter by ReleaseStatus.
    • :maxUnityVersion (String.t): The maximum Unity version supported by the asset.
    • :minUnityVersion (String.t): The minimum Unity version supported by the asset.
    • :platform (String.t): The platform the asset supports.
    • :userId (String.t): Target user to see information on, admin-only.

Returns

  • {:ok, [%FavoritedWorld{}, ...]} on success
  • {:error, Tesla.Env.t} on failure

get_recent_worlds(connection, opts \\ [])

@spec get_recent_worlds(
  Tesla.Env.client(),
  keyword()
) ::
  {:ok, [VRChat.Model.LimitedWorld.t()]}
  | {:ok, VRChat.Model.Error.t()}
  | {:error, Tesla.Env.t()}

List Recent Worlds Search and list recently visited worlds by query filters.

Parameters

  • connection (VRChat.Connection): Connection to server
  • opts (keyword): Optional parameters
    • :featured (boolean()): Filters on featured results.
    • :sort (SortOption): The sort order of the results.
    • :n (integer()): The number of objects to return.
    • :order (OrderOption): Result ordering
    • :offset (integer()): A zero-based offset from the default object sorting from where search results start.
    • :search (String.t): Filters by world name.
    • :tag (String.t): Tags to include (comma-separated). Any of the tags needs to be present.
    • :notag (String.t): Tags to exclude (comma-separated).
    • :releaseStatus (ReleaseStatus): Filter by ReleaseStatus.
    • :maxUnityVersion (String.t): The maximum Unity version supported by the asset.
    • :minUnityVersion (String.t): The minimum Unity version supported by the asset.
    • :platform (String.t): The platform the asset supports.
    • :userId (String.t): Target user to see information on, admin-only.

Returns

  • {:ok, [%LimitedWorld{}, ...]} on success
  • {:error, Tesla.Env.t} on failure

get_world(connection, world_id, opts \\ [])

@spec get_world(Tesla.Env.client(), String.t(), keyword()) ::
  {:ok, VRChat.Model.World.t()}
  | {:ok, VRChat.Model.Error.t()}
  | {:error, Tesla.Env.t()}

Get World by ID Get information about a specific World. Works unauthenticated but when so will always return 0 for certain fields.

Parameters

  • connection (VRChat.Connection): Connection to server
  • world_id (String.t): Must be a valid world ID.
  • opts (keyword): Optional parameters

Returns

  • {:ok, VRChat.Model.World.t} on success
  • {:error, Tesla.Env.t} on failure

get_world_instance(connection, world_id, instance_id, opts \\ [])

@spec get_world_instance(Tesla.Env.client(), String.t(), String.t(), keyword()) ::
  {:ok, VRChat.Model.Instance.t()}
  | {:ok, VRChat.Model.Error.t()}
  | {:error, Tesla.Env.t()}

Get World Instance Returns a worlds instance.

Parameters

  • connection (VRChat.Connection): Connection to server
  • world_id (String.t): Must be a valid world ID.
  • instance_id (String.t): Must be a valid instance ID.
  • opts (keyword): Optional parameters

Returns

  • {:ok, VRChat.Model.Instance.t} on success
  • {:error, Tesla.Env.t} on failure

get_world_metadata(connection, world_id, opts \\ [])

@spec get_world_metadata(Tesla.Env.client(), String.t(), keyword()) ::
  {:ok, VRChat.Model.WorldMetadata.t()}
  | {:ok, VRChat.Model.Error.t()}
  | {:error, Tesla.Env.t()}

Get World Metadata Return a worlds custom metadata. This is currently believed to be unused. Metadata can be set with updateWorld and can be any arbitrary object.

Parameters

  • connection (VRChat.Connection): Connection to server
  • world_id (String.t): Must be a valid world ID.
  • opts (keyword): Optional parameters

Returns

  • {:ok, VRChat.Model.WorldMetadata.t} on success
  • {:error, Tesla.Env.t} on failure

get_world_publish_status(connection, world_id, opts \\ [])

@spec get_world_publish_status(Tesla.Env.client(), String.t(), keyword()) ::
  {:ok, VRChat.Model.WorldPublishStatus.t()}
  | {:ok, VRChat.Model.Error.t()}
  | {:error, Tesla.Env.t()}

Get World Publish Status Returns a worlds publish status.

Parameters

  • connection (VRChat.Connection): Connection to server
  • world_id (String.t): Must be a valid world ID.
  • opts (keyword): Optional parameters

Returns

  • {:ok, VRChat.Model.WorldPublishStatus.t} on success
  • {:error, Tesla.Env.t} on failure

publish_world(connection, world_id, opts \\ [])

@spec publish_world(Tesla.Env.client(), String.t(), keyword()) ::
  {:ok, nil} | {:ok, VRChat.Model.Error.t()} | {:error, Tesla.Env.t()}

Publish World Publish a world. You can only publish one world per week.

Parameters

  • connection (VRChat.Connection): Connection to server
  • world_id (String.t): Must be a valid world ID.
  • opts (keyword): Optional parameters

Returns

  • {:ok, nil} on success
  • {:error, Tesla.Env.t} on failure

search_worlds(connection, opts \\ [])

@spec search_worlds(
  Tesla.Env.client(),
  keyword()
) ::
  {:ok, [VRChat.Model.LimitedWorld.t()]}
  | {:ok, VRChat.Model.Error.t()}
  | {:error, Tesla.Env.t()}

Search All Worlds Search and list any worlds by query filters.

Parameters

  • connection (VRChat.Connection): Connection to server
  • opts (keyword): Optional parameters
    • :featured (boolean()): Filters on featured results.
    • :sort (SortOption): The sort order of the results.
    • :user (String.t): Set to me for searching own worlds.
    • :userId (String.t): Filter by UserID.
    • :n (integer()): The number of objects to return.
    • :order (OrderOption): Result ordering
    • :offset (integer()): A zero-based offset from the default object sorting from where search results start.
    • :search (String.t): Filters by world name.
    • :tag (String.t): Tags to include (comma-separated). Any of the tags needs to be present.
    • :notag (String.t): Tags to exclude (comma-separated).
    • :releaseStatus (ReleaseStatus): Filter by ReleaseStatus.
    • :maxUnityVersion (String.t): The maximum Unity version supported by the asset.
    • :minUnityVersion (String.t): The minimum Unity version supported by the asset.
    • :platform (String.t): The platform the asset supports.
    • :fuzzy (boolean()):

Returns

  • {:ok, [%LimitedWorld{}, ...]} on success
  • {:error, Tesla.Env.t} on failure

unpublish_world(connection, world_id, opts \\ [])

@spec unpublish_world(Tesla.Env.client(), String.t(), keyword()) ::
  {:ok, nil} | {:ok, VRChat.Model.Error.t()} | {:error, Tesla.Env.t()}

Unpublish World Unpublish a world.

Parameters

  • connection (VRChat.Connection): Connection to server
  • world_id (String.t): Must be a valid world ID.
  • opts (keyword): Optional parameters

Returns

  • {:ok, nil} on success
  • {:error, Tesla.Env.t} on failure

update_world(connection, world_id, opts \\ [])

@spec update_world(Tesla.Env.client(), String.t(), keyword()) ::
  {:ok, VRChat.Model.World.t()}
  | {:ok, VRChat.Model.Error.t()}
  | {:error, Tesla.Env.t()}

Update World Update information about a specific World.

Parameters

  • connection (VRChat.Connection): Connection to server
  • world_id (String.t): Must be a valid world ID.
  • opts (keyword): Optional parameters
    • :body (UpdateWorldRequest):

Returns

  • {:ok, VRChat.Model.World.t} on success
  • {:error, Tesla.Env.t} on failure