API reference
API reference
Select your platform
No SDKs available
No versions available

Users

Updated: Oct 30, 2025

Users

class Users
This class provides methods to access information about the horizon.platform.users.models.User. It allows you to retrieve a user’s ID, access token, and org-scoped ID, as well as their friends list and recently met users. Additionally, it provides methods to launch various flows such as blocking, unblocking, reporting, and sending friend requests. It’s useful when you need to manage user relationships or perform actions that require user authentication within your application.

Constructors

NameSummary
Users
constructor()

Types

NameSummary
Companion
object Companion

Functions

NameSummary
get
suspend fun get(userId: String): User
Retrieve the user with the given ID. This might fail if the ID is invalid or the user is blocked. NOTE: Users will have a unique ID per application.
getAccessToken
suspend fun getAccessToken(): String
Return an access token string for this user, suitable for making REST calls against graph.oculus.com.
getBlockedUsers
fun getBlockedUsers(coroutineScope: CoroutineScope): PagedResults<BlockedUser>
Return the IDs of users entitled to use the current app that are blocked by the specified user
getLinkedAccounts
suspend fun getLinkedAccounts(userOptions: UserOptions): List<LinkedAccount>
Returns a list of linked accounts that are associated with the specified service providers. Customization can be done via UserOptions. Create this object with horizon.platform.users.options.UserOptions. The params that could be used are:
getLoggedInUser
suspend fun getLoggedInUser(): User
Retrieve the currently signed in user. This call is available offline. NOTE: Please be aware that this function will only return the following information about the user: Alias (Oculus ID), ID (App Scoped ID), Profile URL (image_url). If you need to retrieve additional user information, such as presence details, please use the App Scoped ID obtained from Users.GetLoggedInUser() in conjunction with Users.Get(ulong UserID). This will provide access to more comprehensive user data. Retrieve the currently signed in user. This call is available offline. NOTE: This will not return the user’s presence as it should always be ‘online’ in your application. NOTE: Users will have a unique ID per application.
getLoggedInUserFriends
fun getLoggedInUserFriends(coroutineScope: CoroutineScope): PagedResults<User>
Retrieve a list of the logged in user’s bidirectional followers. The payload type will be an array of horizon.platform.users.models.User A list of the logged in user’s bidirectional followers.
getLoggedInUserManagedInfo
suspend fun getLoggedInUserManagedInfo(): User
Retrieve the currently signed in user’s managed info. This call is not available offline. NOTE: This will return data only if the logged in user is a managed Meta account (MMA).
getOrgScopedId
suspend fun getOrgScopedId(userId: String): OrgScopedID
returns an ovrID which is unique per org. allows different apps within the same org to identify the user.
getSdkAccounts
suspend fun getSdkAccounts(): List<SdkAccount>
Returns all accounts belonging to this user. Accounts are the Oculus user and x-users that are linked to this user.
getUserProof
suspend fun getUserProof(): UserProof
Part of the scheme to confirm the identity of a particular user in your backend. You can pass the result of horizon.platform.users.Users.getUserProof and a user ID from horizon.platform.users.models.User.id to your backend. Your server can then use our api to verify identity. ‘https://graph.oculus.com/user_nonce_validate?nonce=USER_PROOF&user_id=USER_ID&access_token=ACCESS_TOKEN’ NOTE: The nonce is only good for one check and then it is invalidated.
launchBlockFlow
suspend fun launchBlockFlow(userId: String): LaunchBlockFlowResult
Launch the flow for blocking the given user. You can’t follow, be followed, invited, or searched by a blocked user, for example. You can remove the block via ovr_User_LaunchUnblockFlow.
launchFriendRequestFlow
suspend fun launchFriendRequestFlow(userId: String): LaunchFriendRequestFlowResult
Launch the flow for sending a follow request to a user.
launchUnblockFlow
suspend fun launchUnblockFlow(userId: String): LaunchUnblockFlowResult
Launch the flow for unblocking a user that the viewer has blocked.

Companion

object Companion