Creates User for the App. App42 Cloud API's provides a complete User Management for any Mobile or Web App. It supports User registration, retrieval, state management e.g. lock, delete and Authentication.
Along with User management the platform provides API's for persistent SessionManagement
In order to use the various functions available under a particular API, a developer will have to create an instance of ServiceAPI by passing the apiKey and the secretKey which has been received while creating an app.
ServiceAPI api = new ServiceAPI("<API_KEY>","<SECRET_KEY>");
After initialization, developer needs to call the buildXXXService method on ServiceAPI instance to get the instance of the particular API that you wish to build. For example, To build an instance of UserService, buildUserService() method needs to be called.
UserService userService = api.buildUserService();
Once the API instance has been retrieved, You are ready to use the functions available for that particular API.
The methods available under a particular API will return the domain object (like User in this case) as a response which will have the accessor / mutator to access the available properties for that object. You can get the response in the form of JSON as well. We have also provided the JSON response with every function detail which can be retrieved by calling the toString() on the returned object.
String userName = "Nick";
String pwd = "********";
String emailId = "nick@shephertz.com";
User user = userService.createUser(userName, pwd, emailId); /* returns the User object. */
System.out.println("userName is " + user.getUserName());
System.out.println("emailId is " + user.getEmail());
String jsonResponse = user.toString(); /* returns the response in JSON format. */
The functions available under User API can throw some exceptions in abnormal conditions. Example of the same has been given below.
E.g. If App developer is creating a user with username which is already in database, the function will throw the App42Exception (as shown below) with message as "Bad Request" and the appErrorCode as "2001" and the details as "The request parameters are invalid. Username '<userName>' already exists".
String userName = "Nick";
String pwd = "********";
String emailId = "nick@shephertz.com";
try
{
User user = userService.createUser(userName, pwd, emailId);
}
catch(App42Exception ex)
{
int appErrorCode = ex.getAppErrorCode();
int httpErrorCode = ex.getHttpErrorCode();
if(appErrorCode == 2001)
{
// Handle here for Bad Request (The request parameters are invalid. Username '<userName>' already exists.)
}
else if(appErrorCode == 2005)
{
// Handle here for Bad Request (The request parameters are invalid. User with emailId '<emailId>' already exists.)
}
else if(appErrorCode == 1401)
{
// handle here for Client is not authorized
}
else if(appErrorCode == 1500)
{
// handle here for Internal Server Error
}
String jsonText = ex.getMessage(); /* returns the Exception text in JSON format. (as shown below)*/
}
{
"app42Fault": {
"httpErrorCode": 400,
"appErrorCode": 2001,
"message": "Bad Request",
"details": "The Request parameters are invalid. Username 'Nick' already Exists"
}
}
Below are the HTTP Error Codes and their description, the function under the User API can throw.
/* 1400 - BAD REQUEST - The Request parameters are invalid 1401 - UNAUTHORIZED - Client is not authorized 1500 - INTERNAL SERVER ERROR - Internal Server Error. Please try again */
Below are the Application Error Codes and their description, the function under the User API can throw.
/* 2000 - NOT FOUND - User by the name '<userName>' does not exist. 2001 - BAD REQUEST - The request parameters are invalid. Username '<userName>' already exists. 2002 - NOT FOUND - UserName/Password did not match. Authentication Failed. 2003 - BAD REQUEST - Old Password is not matching for user '<userName>'. 2004 - NOT FOUND - User with the emailId '<emailId>' does not exist. 2005 - BAD REQUEST - The request parameters are invalid. User with emailId '<emailId>' already exists. 2006 - NOT FOUND - Users do not exist. 2007 - NOT FOUND - The number of users are less than the specified offset : <offset>. 2008 - NOT FOUND - The number of locked users are less than the specified offset : <offset>. 2009 - NOT FOUND - Users with the role '<role>' do not exist. 2010 - NOT FOUND - No role found for the user '<userName>'. 2011 - NOT FOUND - Role '<role>' for the user '<userName>' does not exist. 2012 - NOT FOUND - Roles for the user '<userName>' do not exist. */
Various functions available under User API has been explained below.
Create user for the App.
Parameters:
Returns:
Response: User Object
Exception:
/* 2001 - BAD REQUEST - The request parameters are invalid. Username '<userName>' already exists. 2005 - BAD REQUEST - The request parameters are invalid. User with emailId '<emailId>' already exists. */
String userName = "Nick";
String pwd = "********";
String emailId = "nick@shephertz.com";
User user = userService.createUser(userName, pwd, emailId); /* returns the User object. */
System.out.println("userName is " + user.getUserName());
System.out.println("emailId is " + user.getEmail());
String jsonResponse = user.toString(); /* returns the response in JSON format. (as shown below)*/
{
"app42": {
"response": {
"success": true,
"users": {
"user": {
"userName": "Nick",
"email": "nick@shephertz.com"
}
}
}
}
}
Create User for the App.
Parameters:
Returns:
Response: User Object
Exception:
/* 2001 - BAD REQUEST - The request parameters are invalid. Username '<userName>' already exists. 2005 - BAD REQUEST - The request parameters are invalid. User with emailId '<emailId>' already exists. */
String userName = "Nick";
String pwd = "*******";
String emailId = "nick@shephertz.com";
ArrayList<String> roleList = new ArrayList<String>();
roleList.add("Admin");
roleList.add("Manager");
roleList.add("Programmer");
roleList.add("Tester");
User user = userService.createUser(userName,pwd,emailId,roleList); /* returns the User object. */
System.out.println("userName is " + user.getUserName());
System.out.println("emailId is " + user.getEmail());
ArrayList <String> userRoleList = user.getRoleList();
for(String roles : userRoleList)
{
System.out.println("role is " + roles);
}
String jsonResponse = user.toString(); /* returns the response in JSON format. (as shown below)*/
{
"app42": {
"response": {
"success": true,
"users": {
"user": {
"userName": "Nick",
"email": "nick@shephertz.com",
"role": [
"Admin",
"Manager",
"Programmer",
"Tester"
]
}
}
}
}
}
Assign Roles for the App
Parameters:
Returns:
Response: User Object
Exception:
/* 2000 - NOT FOUND - User by the name '<userName>' does not exist. */
String userName = "Nick";
ArrayList<String> roleList = new ArrayList<String>();
roleList.add("Admin");
roleList.add("Manager");
roleList.add("Programmer");
roleList.add("Tester");
User user = userService.assignRoles(userName,roleList); /* returns the User object. */
System.out.println("userName is " + user.getUserName() );
ArrayList<String> userRoleList = user.getRoleList();
for(String roles : userRoleList)
{
System.out.println("role is " + roles);
}
String jsonResponse = user.toString(); /* returns the response in JSON format. (as shown below)*/
{
"app42": {
"response": {
"success": true,
"users": {
"user": {
"userName": "Nick",
"role": [
"Admin",
"Manager",
"Programmer",
"Tester"
]
}
}
}
}
}
Get Roles based on userName
Parameters:
Returns:
Response: User Object
Exception:
/* 2000 - NOT FOUND - User by the name '<userName>' does not exist. 2010 - NOT FOUND - No role found for the user '<userName>'. */
String userName = "Nick";
User user = userService.getRolesByUser(userName); /* returns the User object. */
System.out.println("userName is " + user.getUserName());
System.out.println("emailId is " + user.getEmail());
ArrayList<String> roleList = user.getRoleList();
System.out.println("roleList is " + user.getRoleList());
System.out.println("firstName is " + user.getProfile().getFirstName());
String jsonResponse = user.toString(); /* returns the response in JSON format. (as shown below)*/
{
"app42": {
"response": {
"success": true,
"users": {
"user": {
"userName": "Nick",
"email": "nick@shephertz.com",
"role": [
"Admin",
"Manager",
"Programmer",
"Tester"
],
"accountLocked": false,
"profile": {
"firstName": "Nick",
"lastName": "Gill",
"sex": "Male",
"dateOfBirth": "2012-12-11T18:30:00.000Z",
"mobile": "+1-1111-111-111",
"homeLandLine": "+1-2222-222-222",
"officeLandLine": "+1-33333-333-333",
"line1":"Line1",
"line2":"Line2",
"city": "Tulsa",
"state":"Oklahoma",
"pincode":"74193",
"country":"USA"
}
}
}
}
}
}
Get Users based on Role
Parameters:
Returns:
Response: ArrayList<User> Object
Exception:
/* 2009 - NOT FOUND - Users with the role '<role>' do not exist. */
String role = "Admin";
ArrayList<User> userList = userService.getUsersByRole(role); /* returns the User object. */
for(User user : userList)
{
System.out.println("userName is " + user.getUserName());
System.out.println("emailId is " + user.getEmail());
System.out.println("firstName is " + user.getProfile().getFirstName());
ArrayList<String> roleList = user.getRoleList();
System.out.println("roleList is " + user.getRoleList());
}
String jsonResponse = userList.toString(); /* returns the response in JSON format. (as shown below)*/
{
"app42": {
"response": {
"success": true,
"users": {
"user": [
{
"userName": "Nick",
"email": "nick@shephertz.com",
"role": "Admin",
"accountLocked": false,
"profile": {
"firstName": "Nick",
"lastName": "Gill",
"sex": "Male",
"dateOfBirth": "2012-12-11T18:30:00.000Z",
"mobile": "+1-1111-111-111",
"homeLandLine": "+1-2222-222-222",
"officeLandLine": "+1-33333-333-333",
"line1": "300 Oxford Street",
"line2": "W1A 1EX ",
"city": "Tulsa",
"state": "Oklahoma",
"pincode": "74193",
"country": "USA"
}
},
{
"userName": "Allen Hill",
"email": "allenHill@shephertz.com",
"role": "Admin",
"accountLocked": false,
"profile": {
"firstName": "Allen",
"lastName": "Hill",
"sex": "Male",
"dateOfBirth": "2012-12-11T18:30:00.000Z",
"mobile": "+1-1111-111-111",
"homeLandLine": "+1-2222-222-222",
"officeLandLine": "+1-33333-333-333",
"line1": "300 Oxford Street2",
"line2": "W1A 1EX 2",
"city": "Tulsa",
"state": "Oklahoma",
"pincode": "74193",
"country": "USA"
}
}
]
}
}
}
}
Gets user details based on userName.
Parameters:
Returns:
Response: User Object
Exception:
/* 2000 - NOT FOUND - User by the name '<userName>' does not exist. */
String userName = "Nick";
User user = userService.getUser(userName); /* returns the User object. */
System.out.println("userName is " + user.getUserName());
System.out.println("emailId is " + user.getEmail());
System.out.println("firstName is" + user.getProfile().getFirstName());
String jsonResponse = user.toString(); /* returns the response in JSON format. (as shown below)*/
{
"app42": {
"response": {
"success": true,
"users": {
"user": {
"userName": "Nick",
"email": "nick@shephertz.com",
"accountLocked": false,
"profile": {
"firstName": "Nick",
"lastName": "Gill",
"sex": "Male",
"dateOfBirth": "2012-12-11T18:30:00.000Z",
"mobile": "+1-1111-111-111",
"homeLandLine": "+1-2222-222-222",
"officeLandLine": "+1-33333-333-333",
"line1": "300 Oxford Street",
"line2": "W1A 1EX ",
"city": "Tulsa",
"state": "Oklahoma",
"pincode": "74193",
"country": "USA"
}
}
}
}
}
}
Gets All users details.
Parameters:
Returns:
Response: ArrayList<User> Object
Exception:
/* 2006 - NOT FOUND - Users do not exist. */
ArrayList<User> userList = userService.getAllUsers(); /* returns the list of User objects. */
for(User user : userList)
{
System.out.println("userName is " + user.getUserName());
System.out.println("emailId is " + user.getEmail());
System.out.println("firstName is " + user.getProfile().getFirstName());
}
String jsonResponse = userList.toString(); /* returns the response in JSON format. (as shown below)*/
{
"app42": {
"response": {
"success": true,
"users": {
"user": [
{
"userName": "Nick",
"email": "nick@shephertz.com",
"accountLocked": false,
"profile": {
"firstName": "Nick",
"lastName": "Gill",
"sex": "Male",
"dateOfBirth": "2012-12-11T18:30:00.000Z",
"mobile": "+1-1111-111-111",
"homeLandLine": "+1-2222-222-222",
"officeLandLine": "+1-33333-333-333",
"line1": "300 Oxford Street",
"line2": "W1A 1EX ",
"city": "Tulsa",
"state": "Oklahoma",
"pincode": "74193",
"country": "USA"
}
},
{
"userName": "Alfred",
"email": "Alfred@shephertz.com",
"accountLocked": false,
"profile": {
"firstName": "Alfred",
"lastName": "Manistra",
"sex": "Male",
"dateOfBirth": "2012-12-11T18:30:00.000Z",
"mobile": "+1-1111-111-111",
"homeLandLine": "+1-2222-222-222",
"officeLandLine": "+1-33333-333-333",
"line1": "300 Oxford Street2",
"line2": "W1A 1EX 2",
"city": "London",
"state": "State",
"pincode": "120981",
"country": "London"
}
}
]
}
}
}
}
Gets the count of all the users
Parameters:
Returns:
Response: App42Response Object
App42Response response = userService.getAllUsersCount(); /* returns the App42Response objects. */ boolean success = response.isResponseSuccess(); int totalRecords = response.getTotalRecords(); String jsonResponse = response.toString(); /* returns the response in JSON format. (as shown below)*/
{
"app42": {
"response": {
"success": true,
"totalRecords": 3
}
}
}
Gets All users By Paging
Parameters:
Returns:
Response: ArrayList<User> Object
Exception:
/* 2007 - NOT FOUND - The number of users are less than the specified offset : <offset>. */
int max = 1;
int offset = 0 ;
ArrayList<User> userList = userService.getAllUsers(max,offset); /* returns the list of User objects. */
for(User user : userList)
{
System.out.println("userName is " + user.getUserName());
System.out.println("emailId is " + user.getEmail());
System.out.println("firstName is " + user.getProfile().getFirstName());
}
String jsonResponse = userList.toString(); /* returns the response in JSON format. (as shown below)*/
{
"app42": {
"response": {
"success": true,
"users": {
"user": {
"userName": "Nick",
"email": "nick@shephertz.com",
"accountLocked": false,
"profile": {
"firstName": "Nick",
"lastName": "Gill",
"sex": "Male",
"dateOfBirth": "2012-12-11T18:30:00.000Z",
"mobile": "+1-1111-111-111",
"homeLandLine": "+1-2222-222-222",
"officeLandLine": "+1-33333-333-333",
"line1": "300 Oxford Street",
"line2": "W1A 1EX ",
"city": "Tulsa",
"state": "Oklahoma",
"pincode": "74193",
"country": "USA"
}
}
}
}
}
}
Gets user details based on Email Id.
Parameters:
Returns:
Response: User Object
Exception:
/* 2004 - NOT FOUND - User with the emailId '<emailId>' does not exist. */
String emailId = "nick@shephertz.com";
User user = userService.getUserByEmailId(emailId); /* returns the User object. */
System.out.println("userName is " + user.getUserName());
System.out.println("emailId is " + user.getEmail());
System.out.println("firstName is " + user.getProfile().getFirstName());
String jsonResponse = user.toString(); /* returns the response in JSON format. (as shown below)*/
{
"app42": {
"response": {
"success": true,
"users": {
"user": {
"userName": "Nick",
"email": "nick@shephertz.com",
"accountLocked": false,
"profile": {
"firstName": "Nick",
"lastName": "Gill",
"sex": "Male",
"dateOfBirth": "2012-12-11T18:30:00.000Z",
"mobile": "+1-1111-111-111",
"homeLandLine": "+1-2222-222-222",
"officeLandLine": "+1-33333-333-333",
"line1": "300 Oxford Street2",
"line2": "W1A 1EX 2",
"city": "London",
"state": "State",
"pincode": "120981",
"country": "London"
}
}
}
}
}
}
Gets All the locked users details.
Parameters:
Returns:
Response: ArrayList<User> Object
Exception:
/* 2006 - NOT FOUND - Users do not exist. */
ArrayList<User> userList = userService.getLockedUsers(); /* returns the list of locked User objects. */
for(User user : userList)
{
System.out.println("userName is " + user.getUserName());
System.out.println("emailId is " + user.getEmail());
System.out.println("firstName is " + user.getProfile().getFirstName());
}
String jsonResponse = userList.toString(); /* returns the response in JSON format. (as shown below)*/
{
"app42": {
"response": {
"success": true,
"users": {
"user": [
{
"userName": "Nick",
"email": "nick@shephertz.com",
"accountLocked": true,
"profile": {
"firstName": "Nick",
"lastName": "Gill",
"sex": "Male",
"dateOfBirth": "2012-12-11T18:30:00.000Z",
"mobile": "+1-1111-111-111",
"homeLandLine": "+1-2222-222-222",
"officeLandLine": "+1-33333-333-333",
"line1": "300 Oxford Street",
"line2": "W1A 1EX ",
"city": "Tulsa",
"state": "Oklahoma",
"pincode": "74193",
"country": "USA"
}
},
{
"userName": "Billy",
"email": "billy@shephertz.com",
"accountLocked": true,
"profile": {
"firstName": "Billy",
"lastName": "Bouden",
"sex": "Male",
"dateOfBirth": "2012-12-11T18:30:00.000Z",
"mobile": "+1-1111-111-111",
"homeLandLine": "+1-2222-222-222",
"officeLandLine": "+1-33333-333-333"
"line1": "300 Oxford Street2",
"line2": "W1A 1EX 2",
"city": "London",
"state": "State",
"pincode": "120981",
"country": "London"
}
}
]
}
}
}
}
Gets the count of all the locked users
Parameters:
Returns:
Response: App42Response Object
App42Response response = userService.getLockedUsersCount(); /* returns the App42Response objects. */ boolean success = response.isResponseSuccess(); int totalRecords = response.getTotalRecords(); String jsonResponse = response.toString(); /* returns the response in JSON format. (as shown below)*/
{
"app42": {
"response": {
"success": true,
"totalRecords": 3
}
}
}
Gets All the locked users details By paging.
Parameters:
Returns:
Response: ArrayList<User> Object
Exception:
/* 2008 - NOT FOUND - The number of locked users are less than the specified offset : <offset>. */
int max = 1;
int offset = 0;
ArrayList<User> userList = userService.getLockedUsers(max,offset); /* returns the list of locked User objects. */
for(User user : userList)
{
System.out.println("userName is " + user.getUserName());
System.out.println("emailId is " + user.getEmail());
System.out.println("firstName is " + user.getProfile().getFirstName();
}
String jsonResponse = userList.toString(); /* returns the response in JSON format. (as shown below)*/
{
"app42": {
"response": {
"success": true,
"users": {
"user": {
"userName": "Nick",
"email": "nick@shephertz.com",
"accountLocked": true,
"profile": {
"firstName": "Nick",
"lastName": "Gill",
"sex": "Male",
"dateOfBirth": "2012-12-11T18:30:00.000Z",
"mobile": "+1-1111-111-111",
"homeLandLine": "+1-2222-222-222",
"officeLandLine": "+1-33333-333-333",
"line1": "300 Oxford Street",
"line2": "W1A 1EX ",
"city": "Tulsa",
"state": "Oklahoma",
"pincode": "74193",
"country": "USA"
}
}
}
}
}
}
Get Users based on Profile Data.
Parameters:
Returns:
Response: ArrayList<User> Object
Exception:
/* 2006 - NOT FOUND - Users do not exist. */
String userName = "Nick";
String pwd = "********";
String emailId = "nick@shephertz.com";
User.Profile profileData = new User().new Profile();
profileData.setFirstName("Nick");
profileData.setLastName("Gill");
ArrayList<User> userList = userService.getUsersByProfileData(profileData); /* returns the list of User objects. */
for(User user : userList)
{
System.out.println("userName is " + user.getUserName());
System.out.println("emailId is " + user.getEmail());
}
String jsonResponse = userList.toString(); /* returns the response in JSON format. (as shown below)*/
{
"app42": {
"response": {
"success": true,
"users": {
"user": [
{
"userName": "Nick",
"email": "nick@shephertz.com",
"accountLocked": false,
"profile": {
"firstName": "Nick",
"lastName": "Gill",
"sex": "Male",
"dateOfBirth": "2012-12-11T18:30:00.000Z",
"mobile": "+1-1111-111-111",
"homeLandLine": "+1-2222-222-222",
"officeLandLine": "+1-33333-333-333",
"line1": "300 Oxford Street",
"line2": "W1A 1EX ",
"city": "Tulsa",
"state": "Oklahoma",
"pincode": "74193",
"country": "USA"
}
},
{
"userName": "Billy",
"email": "billy@shephertz.com",
"accountLocked": false,
"profile": {
"firstName": "Billy",
"lastName": "Bouden",
"sex": "Male",
"dateOfBirth": "2012-12-11T18:30:00.000Z",
"mobile": "+1-1111-111-111",
"homeLandLine": "+1-2222-222-222",
"officeLandLine": "+1-33333-333-333",
"line1": "300 Oxford Street2",
"line2": "W1A 1EX 2",
"city": "London",
"state": "State",
"pincode": "120981",
"country": "London"
}
}
]
}
}
}
}
Updates the User password based on userName.Username cannot be updated.
Parameters:
Returns:
Response: App42Response Object
Exception:
/* 2000 - NOT FOUND - User by the name '<userName>' does not exist. */
String userName = "Nick"; String password = "*******"; App42Response response = userService.resetUserPassword(userName,password); /* returns the App42Response object. */ boolean success = response.isResponseSuccess(); String jsonResponse = response.toString(); /* returns the response in JSON format. (as shown below)*/
{
"app42": {
"response": {
"success": true,
"users": {
"user": {
"userName": "Nick",
"password": "*******";
}
}
}
}
}
Revokes the specified role from the user.
Parameters:
Returns:
Response: App42Response Object
Exception:
/* 2000 - NOT FOUND - User by the name '<userName>' does not exist. 2011 - NOT FOUND - Role '<role>' for the user '<userName>' does not exist. */
String userName = "Nick"; String role = "Admin"; App42Response response = userService.revokeRole(userName,role); /* returns the App42Response object. */ boolean success = response.isResponseSuccess(); String jsonResponse = response.toString(); /* returns the response in JSON format. (as shown below)*/
{
"app42": {
"response": {
"success": true,
"users": {
"user": {
"userName": "Nick",
"role": "Admin"
}
}
}
}
}
Revokes all the roles from the user.
Parameters:
Returns:
Response: App42Response Object
Exception:
/* 2000 - NOT FOUND - User by the name '<userName>' does not exist. 2012 - NOT FOUND - Roles for the user '<userName>' do not exist. */
String userName = "Nick"; App42Response response = userService.revokeAllRoles(userName); /* returns the App42Response object. */ boolean success = response.isResponseSuccess(); String jsonResponse = response.toString(); /* returns the response in JSON format. (as shown below)*/
{
"app42": {
"response": {
"success": true,
"users": {
"user": {
"userName": "Nick",
"role": [
{
"role": "Admin"
},
{
"role": "Manager"
},
{
"role": "Programmer"
},
{
"role": "Tester"
}
]
}
}
}
}
}
Updates the User based on userName.
Note: Only email can be updated. Username cannot be updated.
Parameters:
Returns:
Response: User Object
Exception:
/* 2000 - NOT FOUND - User by the name '<userName>' does not exist. */
String userName = "Nick";
String emailId = "almighty@shephertz.com";
User user = userService.updateEmail(userName, emailId); /* returns the updated User object. */
System.out.println("userName is " + user.getUserName());
System.out.println("emailId is " + user.getEmail());
String jsonResponse = user.toString(); /* returns the response in JSON format. (as shown below)*/
{
"app42": {
"response": {
"success": true,
"users": {
"user": {
"userName": "Nick",
"email": "almighty@shephertz.com"
}
}
}
}
}
Delete a particular user based on userName.
Parameters:
Returns:
Response: App42Response Object
Exception:
/* 2000 - NOT FOUND - User by the name '<userName>' does not exist. */
String userName = "Nick"; App42Response response = userService.deleteUser(userName); /* returns the App42Response object. */ boolean success = response.isResponseSuccess(); String jsonResponse = response.toString(); /* returns the response in JSON format. (as shown below)*/
{
"app42": {
"response": {
"success": true,
"users": {
"user": {
"userName": "Nick"
}
}
}
}
}
Creates or Updates User Profile.
Note: First time when the Profile for the user is created. In future calls user information will be updated.
Parameters:
Returns:
Response: User Object
Exception:
/* 2000 - NOT FOUND - User by the name '<userName>' does not exist. */
String userName = "Nick";
String pwd = "********";
String emailId = "nick@shephertz.com";
User userObj = userService.createUser(userName, pwd, emailId); /* returns the User object. */
Profile profile = userObj.new Profile();
Date date = new Date(); /* returns the current date object.User can set any date */
profile.setFirstName("Nick");
profile.setLastName("Gill");
profile.setSex(UserGender.MALE);
profile.setDateOfBirth(date);
profile.setCity("Houston");
profile.setState("Texas");
profile.setPincode("74193");
profile.setCountry("USA");
profile.setMobile("+1-1111-111-111");
profile.setHomeLandLine("+1-2222-222-222");
profile.setOfficeLandLine("+1-33333-333-333");
User user = userService.createOrUpdateProfile(userObj); /* returns the updated User object. */
System.out.println("userName is " + user.getUserName());
System.out.println("emailId is " + user.getEmail());
System.out.println("firstName is " + user.getProfile().getFirstName());
String jsonResponse = user.toString(); /* returns the response in JSON format. (as shown below)*/
{
"app42": {
"response": {
"success": true,
"users": {
"user": {
"userName": "Nick",
"email": "nick@shephertz.com",
"accountLocked": false,
"profile": {
"firstName": "Nick",
"lastName": "Gill",
"sex": "Male",
"dateOfBirth": "2012-12-11T18:30:00.000Z",
"city": "Houston",
"state": "Texas",
"pincode": "74193",
"country": "USA",
"mobile": "+1-1111-111-111",
"homeLandLine": "+1-2222-222-222",
"officeLandLine": "+1-33333-333-333"
}
}
}
}
}
}
Authenticate user based on userName and password.
Parameters:
Returns:
Response: App42Response Object
Exception:
/* 2002 - NOT FOUND - UserName/Password did not match. Authentication Failed. */
String userName = "Nick"; String pwd = "*******"; App42Response response = userService.authenticate(userName, pwd); /* returns the App42Response object. */ boolean success = response.isResponseSuccess(); String jsonResponse = response.toString(); /* returns the response in JSON format. (as shown below)*/
{
"app42": {
"response": {
"success": true,
"users": {
"user": {
"userName": "Nick",
"accountLocked": false
}
}
}
}
}
Unlock the user based on the userName. Apps can use these feature to unlock a user because of reasons specific to their usercase e.g. If payment received and the App wants to the user to be active.
Parameters:
Returns:
Response: User Object
Exception:
/* 2000 - NOT FOUND - User by the name '<userName>' does not exist. */
String userName = "Nick";
User user = userService.unlockUser(userName); /* returns the unlocked User object. */
System.out.println("userName is " + user.getUserName());
String jsonResponse = user.toString(); /* returns the response in JSON format. (as shown below)*/
{
"app42": {
"response": {
"success": true,
"users": {
"user": {
"userName": "Nick",
"accountLocked": false
}
}
}
}
}
Locks the user based on the userName. Apps can use these feature to lock a user because of reasons specific to their usercase e.g. If payment not received and the App wants the user to be inactive.
Parameters:
Returns:
Response: User Object
Exception:
/* 2000 - NOT FOUND - User by the name '<userName>' does not exist. */
String userName = "Nick";
User user = userService.lockUser(userName); /* returns the locked User object. */
System.out.println("userName is " + user.getUserName());
String jsonResponse = user.toString(); /* returns the response in JSON format. (as shown below)*/
{
"app42": {
"response": {
"success": true,
"users": {
"user": {
"userName": "Nick",
"accountLocked": true
}
}
}
}
}
Change the password for user based on the userName. If the old password is valid.
Parameters:
Returns:
Response: App42Response Object
Exception:
/* 2000 - NOT FOUND - User by the name '<userName>' does not exist. 2003 - BAD REQUEST - Old Password is not matching for user '<userName>'. */
String userName = "Nick"; String oldPwd = "*******"; String newPwd = "*******"; App42Response response = userService.changeUserPassword(userName, oldPwd, newPwd); /* returns the App42Response object. */ boolean success = response.isResponseSuccess(); String jsonResponse = response.toString(); /* returns the response in JSON format. (as shown below)*/
{
"app42": {
"response": {
"success": true,
"users": {
"user": {
"userName": "Nick"
}
}
}
}
}