Users & Devices

Users and Devices are the primary ways to identify access to the system. Devices are great to track anonymous access, while Users allow you to model signing up, signing in, etc.

Users

Properties

Property Type Description


uuid UUID User’s unique entity ID type string Type of entity, in this case “user” created long UNIX timestamp of entity creation modified long UNIX timestamp of entity modification username string Valid and unique string username (mandatory) password string User password email string Valid and unique email address name string User display name activated boolean Whether the user account is activated disabled boolean Whether the user account is administratively disabled firstname string User first name middlename string User middle name lastname string User last name picture string User picture

Sets

Set Type Description


connections string Set of connection types (e.g., likes) rolenames string Set of roles assigned to a user permissions string Set of user permissions credentials string Set of user credentials

Relationshops

Collection Type Description


groups group Collection of groups to which a user belongs devices device Collection of devices in the service activities activity Collection of activities a user has performed feed activity Inbox of activity notifications a user has received roles role Set of roles assigned to a user

Facebook Sign-in

You can authenticate your Apache Usergrid requests by logging into Facebook. To access Apache Usergrid resources, you need to provide an access token with each request (unless you use the sandbox app). You can get an access token by connecting to an appropriate web service endpoint and providing the correct client credentials — this is further described in Authenticating users and application clients. However, you can also obtain an access token by logging into Facebook.

To enable authentication to Apache Usergrid through Facebook, do the following in your app:

  1. Make a login call to the Facebook API (do this using the Facebook SDK or API). If the login succeeds, a Facebook access token is returned.

  2. Send the Facebook access token to Apache Usergrid. If the Facebook access token is valid and the user does not already exist in App Services, Apache Usergrid provisions a new Apache Usergrid user. It also returns an Apache Usergrid access token, which you can use for subsequent Apache Usergrid API calls. Behind the scenes, Apache Usergrid uses the Facebook access token to retrieve the user's profile information from Facebook.

    If the Facebook access token is invalid, Facebook returns an OAuth authentication error, and the login does not succeed.

The request to authenticate to Apache Usergrid using a Facebook access token is:

GET https://api.usergrid.com/{my_org}/{my_app}/auth/facebook?fb_access_token={fb_access_token}

where:

  • {my_org} is the organization UUID or organization name.\
  • {my_app} is the application UUID or application name.\
  • {fb_access_token} is the Facebook access token.

Devices

Properties

Property Type Description


uuid UUID Entity unique ID type string Entity type (e.g., device) created long UNIX timestamp of entity creation modified long UNIX timestamp of entity modification name string Device name (mandatory)

Relationships

Devices have the following associated collection.

Collection Type Description


users user Collection of users to which a device belongs