1. Go to this page and download the library: Download onelogin/api library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
onelogin / api example snippets
use \OneLogin\api\OneLoginClient;
$client = new OneLoginClient($clientId, $clientSecret, $region);
#Now you can make requests
$client->getUsers();
/* Get an AccessToken */
$token = $client->getAccessToken();
/* Refresh an AccessToken */
$token2 = $client->refreshToken();
/* Revoke an AccessToken */
$client->revokeToken();
/* Get rate limits */
$rateLimit = $client->getRateLimit();
/* Get Custom Attributes */
$customGlobalAttributes = $client->getCustomAttributes();
/* Get Users with no query parameters */
$users = $client->getUsers();
/* Get Users with query parameters */
$queryParameters = array (
"email" => "[email protected]"
);
$usersFiltered = $client->getUsers($queryParameters);
$queryParameters = array (
"email" => "[email protected]"
);
$usersFiltered2 = $client->getUsers($queryParameters);
/* Get 10 Users with role_id 2 */
$queryParameters = array (
"role_id" => 2
);
$usersFilteredByRoleId = $client->getUsers($queryParameters, 10);
/* Get User By ID */
$user = $client->getUser($usersFiltered[0]->id);
$userMFA = $client->getUser($usersFiltered2[0]->id);
/* Update User with specific id */
$user = $client->getUser($user->id);
$updateUserParams = $user->getUserParams();
$updateUserParams["firstname"] = "modified_firstname";
$user = $client->updateUser($user->id, $updateUserParams);
/* Get Global Roles */
$roles = $client->getRoles();
/* Get Role */
$role = $client->getRole($roles[0]->getId());
$role2 = $client->getRole($roles[1]->getId());
/* Assign & Remove Roles On Users */
$newRoleIds = array(
$role->getId(),
$role2->getId()
);
$client->assignRoleToUser($user->id, $newRoleIds);
$user = $client->getUser($user->id);
array_pop($newRoleIds);
$client->removeRoleFromUser($user->id, $newRoleIds);
$user = $client->getUser($user->id);
/* Sets Password by ID Using Cleartext */
$password = "Aa765431-XxX";
$client->setPasswordUsingClearText($user->id, $password, $password);
/* Sets Password by ID Using Salt and SHA-256 */
$password = "Aa765432-YyY";
$salt = "11xxxx1";
$hashedSaltedPassword = hash('sha256', $salt . $password);
$client->setPasswordUsingHashSalt($userMFA->id, $hashedSaltedPassword, $hashedSaltedPassword, "salt+sha256", $salt);
/* Set Custom Attribute Value to User */
$customAttributes = array(
$customGlobalAttributes[0] => "xxxx",
$customGlobalAttributes[1] => "yyyy"
);
$client->setCustomAttributeToUser($user->id, $customAttributes);
/* Log Out User */
$client->logUserOut($user->id);
/* Lock User */
$client->lockUser($user->id, 1); // Lock the user 1 min
/* Get User apps */
$userApps = $client->getUserApps($user->id);
/* Get User Roles */
$userRolesIds = $client->getUserRoles($user->id);
/* Generate MFA Token */
$mfaToken = $client->generateMFAToken($user->id);
/* Get all Apps in a OneLogin account */
$apps = $client->getApps();
/* Create user */
$newUserParams = array(
"email" => "[email protected]",
"firstname" => "testcreate_1_fn",
"lastname" => "testcreate_1_ln",
"username" => "[email protected]"
);
$createdUser = $client->createUser($newUserParams);
/* Delete user */
$removed = $client->deleteUser($createdUser->id);
/* Get EventTypes */
$eventTypes = $client->getEventTypes();
/* Get Events */
$events = $client->getEvents();
/* Get Event */
$event = $client->getEvent($events[0]->id);
/* Create Event */
$eventParams = array(
"event_type_id" => 000,
"account_id" => 00000,
"actor_system" => 00,
"user_id" => 00000000,
"user_name" => "test_event",
"custom_message" => "test creating event :)"
);
$client->createEvent($eventParams);
/* Get Filtered Events */
$eventQueryParameters = array(
"user_id" => 00000000
);
$events = $client->getEvents($eventQueryParameters);
/* Get Groups */
$groups = $client->getGroups();
/* Get Group */
$group = $client->getGroup($groups[0]->getId());
/* Get SAMLResponse directly */
$appId = "000000";
$samlEndpointResponse = $client->getSAMLAssertion("[email protected]", "Aa765431-XxX", $appId, "example-onelogin-subdomain");
/* Get SAMLResponse after MFA */
$samlEndpointResponse2 = $client->getSAMLAssertion("[email protected]", "Aa765432-YyY", $appId, "example-onelogin-subdomain");
$mfa = $samlEndpointResponse2->getMFA();
$otpToken = "000000";
$samlEndpointResponseAfterVerify = $client->getSAMLAssertionVerifying($appId, $mfa->getDevices()[0]->getID(), $mfa->getStateToken(), $otpToken, null);
/* Create Session Login Token */
$sessionLoginTokenParams = array(
"username_or_email" => "[email protected]",
"password" => "Aa765431-XxX",
"subdomain"=> "example-onelogin-subdomain"
);
$sessionTokenData = $client->createSessionLoginToken($sessionLoginTokenParams);
/* Create Session Login Token MFA , after verify */
$sessionLoginTokenMFAParams = array(
"username_or_email" => "[email protected]",
"password" => "Aa765432-YyY",
"subdomain" => "example-onelogin-subdomain"
);
$sessionTokenMFAData = $client->createSessionLoginToken($sessionLoginTokenMFAParams);
$otpCode = "645645"; // We may take that value from OTP device
$sessionTokenData2 = $client->getSessionTokenVerified($sessionTokenMFAData->devices[0]->getID(), $sessionTokenMFAData->stateToken, $otpCode);
$userId = 00000000;
# Get Available Authentication Factors
$authFactors = $client->getFactors($userId);
# Enroll an Authentication Factor
$enrollFactor = $client->enrollFactor($userId, $authFactors[0]->id, 'My Device', '+14156456830');
# Get Enrolled Authentication Factors
$otpDevices = $client->getEnrolledFactors($userId);
# Activate an Authentication Factor
$deviceId = 0000000;
$enrollmentResponse = $client->activateFactor($userId, $deviceId);
# Verify an Authentication Factor
$otpToken="XXXXXXXXXX";
$result = $client->verifyFactor($userId, $deviceId, $otpToken);
# Remove Factor
$result = $client->removeFactor($userId, $deviceId);
/* Generate Invite Link */
$urlLink = $client->generateInviteLink("[email protected]");
/* Send Invite Link */
$sent = $client->sendInviteLink("[email protected]");
/* Get Apps to Embed for a User */
$embedToken = "30e256c101cd0d2e731de1ec222e93c4be8a1578";
$apps = $client->getEmbedApps($embedToken, "[email protected]");
/* Get Privileges */
$privileges = $client->getPrivileges();
/* Create Privilege */
$name = "privilege_example";
$version = "2018-05-18";
$statement1 = new Statement(
"Allow",
[
"users:List",
"users:Get",
],
["*"]
);
$statement2 = new Statement(
"Allow",
[
"apps:List",
"apps:Get",
],
["*"]
);
$statements = array(
$statement1,
$statement2
);
$privilege = $client->createPrivilege($name, $version, $statements);
/* Update Privilege */
$name = "privilege_example_updated";
$statement2 = new Statement(
"Allow",
[
"apps:List",
],
["*"]
);
$privilege = $client->updatePrivilege($privilege->id, $name, $version, $statements);
/* Get Privilege */
$privilege = $client->getPrivilege($privilege->id);
/* Delete Privilege */
$result = $client->deletePrivilege($privilege->id);
/* Gets a list of the roles assigned to a privilege */
$assignedRoles = $client->getRolesAssignedToPrivilege($privilege->id);
/* Assign roles to a privilege */
$result = $client->assignRolesToPrivilege($privilege->id, array($role_id1, $role_id2));
/* Remove role from a privilege */
$result = $client->removeRoleFromPrivilege($privilege->id, $role_id1);
/* Gets a list of the users assigned to a privilege */
$assignedUsers = $client->getUsersAssignedToPrivilege($privilege->id);
/* Assign users to a privilege */
$result = $client->assignUsersToPrivilege($privilege->id, array($user_id1, $user_id2));
/* Remove user from a privilege */
$result = $client->removeUserFromPrivilege($privilege->id, $user_id2);
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.