User and Profiles
Gets a specific user by email or unique user ID.
GET /api/rest/user/{name} HTTP/1.1
Host: localhost:8080
Authorization: YOUR_API_KEY
Accept: */*
{
"code": "text",
"message": "text"
}
Deletes and permanently removes the user from the server. The server may keep some metadata as necessary to avoid data inconsistency. However, the user has been deleted from the client standpoint and will not be accessible through any of the existing APIs.
DELETE /api/rest/user/{name} HTTP/1.1
Host: localhost:8080
Authorization: YOUR_API_KEY
Accept: */*
{
"code": "text",
"message": "text"
}
Supplying the UserUpdatePasswordRequest, this will attempt to update the user's password only if they supply the correct existing password.
The user's current password.
The user's updated password.
The user's profile id to assign the new session. Leave blank for no profile id.
PUT /api/rest/user/{userId}/password HTTP/1.1
Host: localhost:8080
Authorization: YOUR_API_KEY
Content-Type: */*
Accept: */*
Content-Length: 56
{
"oldPassword": null,
"newPassword": null,
"profileId": null
}
{
"code": "text",
"message": "text"
}
Supplying the user object, this will update the user with the new information supplied in the body of the request. Optionally, the user's password may be provided in the User object.
^\S+$
^(.+)@(.+)$
([\.\+\-\s\/()]*[0-9][\.\+\-\s\/()]*){8,15}
^[A-Za-z0-9 ]{2,20}
^[A-Za-z0-9 ]{3,30}
The user's plaintext password, only to be provided in POST/PUT requests in the User Resource REST API interface. In the future, a dedicated REST API model may be constructed instead of using a direct User model.
^\S+$
PUT /api/rest/user/{userId} HTTP/1.1
Host: localhost:8080
Authorization: YOUR_API_KEY
Content-Type: */*
Accept: */*
Content-Length: 120
{
"name": null,
"email": null,
"primaryPhoneNb": null,
"firstName": null,
"lastName": null,
"password": null,
"level": "UNPRIVILEGED"
}
{
"code": "text",
"message": "text"
}
A special endpoint used to get the current user for the request. The current user is typically associated with the session but may be derived any other way. This is essentially an alias for using GET /user/myUserId
GET /api/rest/user/me HTTP/1.1
Host: localhost:8080
Authorization: YOUR_API_KEY
Accept: */*
{
"code": "text",
"message": "text"
}
Supplying the user object, this will update the user with the new information supplied in the body of the request. Optionally, the user's password may be provided in the User object.
^\S+$
^(.+)@(.+)$
([\.\+\-\s\/()]*[0-9][\.\+\-\s\/()]*){8,15}
^[A-Za-z0-9 ]{2,20}
^[A-Za-z0-9 ]{3,30}
The user's plaintext password, only to be provided in POST/PUT requests in the User Resource REST API interface. In the future, a dedicated REST API model may be constructed instead of using a direct User model.
^\S+$
The user's level to assign. Depending on the usage, the server may ignore this field and assign its own description.
A list of profiles to assign to this user during creation. The server will attempt to create a profile for each item in this list.
POST /api/rest/user HTTP/1.1
Host: localhost:8080
Authorization: YOUR_API_KEY
Content-Type: */*
Accept: */*
Content-Length: 191
{
"name": null,
"email": null,
"primaryPhoneNb": null,
"firstName": null,
"lastName": null,
"password": null,
"level": "UNPRIVILEGED",
"profiles": [
{
"applicationId": null,
"displayName": null,
"imageUrl": null
}
]
}
{
"code": "text",
"message": "text"
}
Searches all users in the system and returning the metadata for all matches against the given search filter.
0
20
GET /api/rest/user HTTP/1.1
Host: localhost:8080
Authorization: YOUR_API_KEY
Accept: */*
{
"code": "text",
"message": "text"
}
Supplying the user create request object, this will create a new user.
^\S+$
^(.+)@(.+)$
([\.\+\-\s\/()]*[0-9][\.\+\-\s\/()]*){8,15}
^[A-Za-z0-9 ]{2,20}
^[A-Za-z0-9 ]{3,30}
The user's plaintext password, only to be provided in POST/PUT requests in the User Resource REST API interface. In the future, a dedicated REST API model may be constructed instead of using a direct User model.
^\S+$
The user's level to assign. Depending on the usage, the server may ignore this field and assign its own description.
A list of profiles to assign to this user during creation. The server will attempt to create a profile for each item in this list.
POST /api/rest/signup HTTP/1.1
Host: localhost:8080
Authorization: YOUR_API_KEY
Content-Type: */*
Accept: */*
Content-Length: 191
{
"name": null,
"email": null,
"primaryPhoneNb": null,
"firstName": null,
"lastName": null,
"password": null,
"level": "UNPRIVILEGED",
"profiles": [
{
"applicationId": null,
"displayName": null,
"imageUrl": null
}
]
}
{
"code": "text",
"message": "text"
}
DELETE /api/rest/session HTTP/1.1
Host: localhost:8080
Authorization: YOUR_API_KEY
Accept: */*
{
"code": "text",
"message": "text"
}
Begins a session by accepting both the UserID and the Passoword. Upon successful completion of this call, the user will be added to the current HTTP session. If the session expires, the user will have to reestablish the session by supplying credentials again. This is most useful for applications delivered in a web page.
The user ID.
The password.
The profile ID to assign to the session.
A query string to select the profile to use.
POST /api/rest/session HTTP/1.1
Host: localhost:8080
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 71
{
"userId": null,
"password": null,
"profileId": null,
"profileSelector": null
}
{
"code": "text",
"message": "text"
}
DELETE /api/rest/session/{sessionSecret} HTTP/1.1
Host: localhost:8080
Authorization: YOUR_API_KEY
Accept: */*
{
"code": "text",
"message": "text"
}
Begins a session by accepting an auth code and identity token. Upon successful validation against Google's sign-in APIs, this will return a Session which can be used for authentication. If there isno User associated with the supplied credentials, this will implicitly create a new account and will include that account information in the response. If there is an account, or this method receives an existing session key, this will link the existing account to google if the account was not previously linked.
POST /api/rest/googlesignin_session HTTP/1.1
Host: localhost:8080
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 49
{
"applicationNameOrId": null,
"identityToken": null
}
{
"code": "text",
"message": "text"
}
Begins a session using Firebase login. Unlike other auth methods, which require the client specify the profile and name, this uses the supplied JWT token. Embedded in the JWT is the identifier for the application. Therefore, Elements will use Firebase's server-to-server APIs in order determine the application configuration to use. Just like other session APIs, if the session specifies a user, then this will link the existing account to the supplied firebase ID.
POST /api/rest/firebase_session HTTP/1.1
Host: localhost:8080
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 20
{
"firebaseJWT": null
}
{
"code": "text",
"message": "text"
}
Begins a session by accepting a Facebook OAuth token, SocialEngine Application ID, and the configuration ID for the application. This will generate a Session instance and return the result to the client.
POST /api/rest/facebook_session HTTP/1.1
Host: localhost:8080
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 100
{
"applicationNameOrId": null,
"applicationConfigurationNameOrId": null,
"facebookOAuthAccessToken": null
}
{
"code": "text",
"message": "text"
}
Begins a session by accepting an auth code and identity token. Upon successful validation against Apple's sign-in APIs, this will return a Session which can be used for authentication. If there isno User associated with the supplied credentials, this will implicitly create a new account and will include that account information in the response. If there is an account, or this method receives an existing session key, this will link the existing account to apple if the account was not previously linked.
POST /api/rest/applesignin_session HTTP/1.1
Host: localhost:8080
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 49
{
"applicationNameOrId": null,
"identityToken": null
}
{
"code": "text",
"message": "text"
}
Last updated