Login Configurations
Install Dependency
Package: affinidi-tdk/affinidi-tdk-php
composer require affinidi-tdk/affinidi-tdk-php
You can check the latest version of this module on the Packagist repository or view the source code at the GitHub repository.
Classes and Methods
Configurations API
Use to manage Login Configuration to integrate Affinidi Login.
createLoginConfigurations
Create a new Login Configuration to integrate Affinidi Login.
Parameters
CreateLoginConfigurationInput [Object]
JSON object to provide the configuration details of the application. See more here.
Example
require_once 'vendor/autoload.php';
use AffinidiTdk\Clients\LoginConfigurationClient;
$tokenCallback = [$authProvider, 'fetchProjectScopedToken'];
// Configure API key authorization: ProjectTokenAuth
$config = LoginConfigurationClient\Configuration::getDefaultConfiguration()->setApiKey('authorization', '', $tokenCallback);
$apiInstance = new LoginConfigurationClient\Api\ConfigurationApi(
new GuzzleHttp\Client(),
$config
);
try {
$request = array(
"name" => "Sample App",
"redirectUris" => array(
"http://localhost:3001/api/auth/callback"
)
);
$result = $apiInstance->createLoginConfigurations($request);
print_r($result);
} catch (Exception $e) {
echo 'Exception when calling method: ', $e->getMessage(), PHP_EOL;
}
deleteLoginConfigurationsById
Delete an existing Login Configuration by ID.
Parameters
configurationId [String]
ID of the Login Configuration to delete.
Example
require_once 'vendor/autoload.php';
use AffinidiTdk\Clients\LoginConfigurationClient;
$tokenCallback = [$authProvider, 'fetchProjectScopedToken'];
// Configure API key authorization: ProjectTokenAuth
$config = LoginConfigurationClient\Configuration::getDefaultConfiguration()->setApiKey('authorization', '', $tokenCallback);
$apiInstance = new LoginConfigurationClient\Api\ConfigurationApi(
new GuzzleHttp\Client(),
$config
);
try {
$configurationId = "<Config_ID>";
$result = $apiInstance->deleteLoginConfigurationsById($configurationId);
print_r($result);
} catch (Exception $e) {
echo 'Exception when calling method: ', $e->getMessage(), PHP_EOL;
}
getClientMetadataByClientId
Retrieves the Client Metadata info of the Login Configuration by OAuth 2.0 Client ID.
Parameters
clientId [String]
OAuth 2.0 Client ID generated by Login Configuration.
Example
require_once 'vendor/autoload.php';
use AffinidiTdk\Clients\LoginConfigurationClient;
$tokenCallback = [$authProvider, 'fetchProjectScopedToken'];
// Configure API key authorization: ProjectTokenAuth
$config = LoginConfigurationClient\Configuration::getDefaultConfiguration()->setApiKey('authorization', '', $tokenCallback);
$apiInstance = new LoginConfigurationClient\Api\ConfigurationApi(
new GuzzleHttp\Client(),
$config
);
try {
$configurationId = "<Config_ID>";
$result = $apiInstance->getClientMetadataByClientId($configurationId);
print_r($result);
} catch (Exception $e) {
echo 'Exception when calling method: ', $e->getMessage(), PHP_EOL;
}
getLoginConfigurationsById
Retrieves the Login Configuration details by ID.
Parameters
configurationId [String]
ID of the existing Login Configuration to retrieve.
Example
require_once 'vendor/autoload.php';
use AffinidiTdk\Clients\LoginConfigurationClient;
$tokenCallback = [$authProvider, 'fetchProjectScopedToken'];
// Configure API key authorization: ProjectTokenAuth
$config = LoginConfigurationClient\Configuration::getDefaultConfiguration()->setApiKey('authorization', '', $tokenCallback);
$apiInstance = new LoginConfigurationClient\Api\ConfigurationApi(
new GuzzleHttp\Client(),
$config
);
try {
$configurationId = "<Config_ID>";
$result = $apiInstance->getLoginConfigurationsById($configurationId);
print_r($result);
} catch (Exception $e) {
echo 'Exception when calling method: ', $e->getMessage(), PHP_EOL;
}
listLoginConfigurations
List all the Login Configurations in the Project.
Parameters
limit [Integer]
Maximum number of records to fetch from the list.
exclusiveStartKey [String]
The base64url encoded key of the first item that this operation will evaluate (it is not returned). Use the value that was returned in the previous operation.
Example
require_once 'vendor/autoload.php';
use AffinidiTdk\Clients\LoginConfigurationClient;
$tokenCallback = [$authProvider, 'fetchProjectScopedToken'];
// Configure API key authorization: ProjectTokenAuth
$config = LoginConfigurationClient\Configuration::getDefaultConfiguration()->setApiKey('authorization', '', $tokenCallback);
$apiInstance = new LoginConfigurationClient\Api\ConfigurationApi(
new GuzzleHttp\Client(),
$config
);
try {
$result = $apiInstance->listLoginConfigurations();
print_r($result);
} catch (Exception $e) {
echo 'Exception when calling method: ', $e->getMessage(), PHP_EOL;
}
updateLoginConfigurationsById
Update an existing Login Configuration by ID
Parameters
configurationId [String]
ID of the Login Configuration to update.
UpdateLoginConfigurationInput [Object]
JSON object to provide to update the Login Configuration details. See more here.
Example
require_once 'vendor/autoload.php';
use AffinidiTdk\Clients\LoginConfigurationClient;
$tokenCallback = [$authProvider, 'fetchProjectScopedToken'];
// Configure API key authorization: ProjectTokenAuth
$config = LoginConfigurationClient\Configuration::getDefaultConfiguration()->setApiKey('authorization', '', $tokenCallback);
$apiInstance = new LoginConfigurationClient\Api\ConfigurationApi(
new GuzzleHttp\Client(),
$config
);
try {
$configurationId = "<CONFIG_ID>";
$request = array(
"name" => "My Updated Login Config"
"redirectUris" => array(
"http://localhost:3001/api/auth/callback"
)
);
$result = $apiInstance->updateLoginConfigurationsById($configurationId, $request);
print_r($result);
} catch (Exception $e) {
echo 'Exception when calling method: ', $e->getMessage(), PHP_EOL;
}
Group API
Used to manage the User Groups for the Project.
addUserToGroup
Add user to the user group.
Parameters
groupName [String]
Name of the group to add the user.
AddUserToGroupInput [Object]
JSON object to provide with the ID of the user to add. See more here.
Example
require_once 'vendor/autoload.php';
use AffinidiTdk\Clients\LoginConfigurationClient;
$tokenCallback = [$authProvider, 'fetchProjectScopedToken'];
// Configure API key authorization: ProjectTokenAuth
$config = LoginConfigurationClient\Configuration::getDefaultConfiguration()->setApiKey('authorization', '', $tokenCallback);
$apiInstance = new LoginConfigurationClient\Api\GroupApi(
new GuzzleHttp\Client(),
$config
);
try {
$groupName = "gold";
$request = array(
userId: "did:key:890890890890890",
);
$result = $apiInstance->addUserToGroup($groupName, $request);
print_r($result);
} catch (Exception $e) {
echo 'Exception when calling method: ', $e->getMessage(), PHP_EOL;
}
createGroup
Create a user group.
Parameters
CreateGroupInput [Object]
JSON object to provide the name of the user group.
Example
require_once 'vendor/autoload.php';
use AffinidiTdk\Clients\LoginConfigurationClient;
$tokenCallback = [$authProvider, 'fetchProjectScopedToken'];
// Configure API key authorization: ProjectTokenAuth
$config = LoginConfigurationClient\Configuration::getDefaultConfiguration()->setApiKey('authorization', '', $tokenCallback);
$apiInstance = new LoginConfigurationClient\Api\GroupApi(
new GuzzleHttp\Client(),
$config
);
try {
$request = array(
groupName: "silver"
);
$result = $apiInstance->createGroup($request);
print_r($result);
} catch (Exception $e) {
echo 'Exception when calling method: ', $e->getMessage(), PHP_EOL;
}
deleteGroup
Delete a group by name.
Parameters
groupName [String]
Name of the group to delete.
Example
require_once 'vendor/autoload.php';
use AffinidiTdk\Clients\LoginConfigurationClient;
$tokenCallback = [$authProvider, 'fetchProjectScopedToken'];
// Configure API key authorization: ProjectTokenAuth
$config = LoginConfigurationClient\Configuration::getDefaultConfiguration()->setApiKey('authorization', '', $tokenCallback);
$apiInstance = new LoginConfigurationClient\Api\GroupApi(
new GuzzleHttp\Client(),
$config
);
try {
$groupName = "bronze";
$result = $apiInstance->deleteGroup($groupName);
print_r($result);
} catch (Exception $e) {
echo 'Exception when calling method: ', $e->getMessage(), PHP_EOL;
}
getGroupById
Retrieve a group by the group name.
Parameters
groupName [String]
Name of the group to retrieve.
Example
require_once 'vendor/autoload.php';
use AffinidiTdk\Clients\LoginConfigurationClient;
$tokenCallback = [$authProvider, 'fetchProjectScopedToken'];
// Configure API key authorization: ProjectTokenAuth
$config = LoginConfigurationClient\Configuration::getDefaultConfiguration()->setApiKey('authorization', '', $tokenCallback);
$apiInstance = new LoginConfigurationClient\Api\GroupApi(
new GuzzleHttp\Client(),
$config
);
try {
$groupName = "silver";
$result = $apiInstance->getGroupById($groupName);
print_r($result);
} catch (Exception $e) {
echo 'Exception when calling method: ', $e->getMessage(), PHP_EOL;
}
listGroupUserMappings
List all the users from the group.
Parameters
groupName [String]
Name of the group to list.
limit [Integer]
Maximum number of records to fetch in a list.
exclusiveStartKey [String]
The base64url encoded key of the first item that this operation will evaluate (it is not returned). Use the value that was returned in the previous operation.
sortOrder [String]
sort response in specific order. By default it is in desc order.
Example
require_once 'vendor/autoload.php';
use AffinidiTdk\Clients\LoginConfigurationClient;
$tokenCallback = [$authProvider, 'fetchProjectScopedToken'];
// Configure API key authorization: ProjectTokenAuth
$config = LoginConfigurationClient\Configuration::getDefaultConfiguration()->setApiKey('authorization', '', $tokenCallback);
$apiInstance = new LoginConfigurationClient\Api\GroupApi(
new GuzzleHttp\Client(),
$config
);
try {
$groupName = "gold";
$result = $apiInstance->listGroupUserMappings($groupName);
print_r($result);
} catch (Exception $e) {
echo 'Exception when calling method: ', $e->getMessage(), PHP_EOL;
}
listGroups
List all the groups in the Project.
Parameters
No Parameters Required
Example
require_once 'vendor/autoload.php';
use AffinidiTdk\Clients\LoginConfigurationClient;
$tokenCallback = [$authProvider, 'fetchProjectScopedToken'];
// Configure API key authorization: ProjectTokenAuth
$config = LoginConfigurationClient\Configuration::getDefaultConfiguration()->setApiKey('authorization', '', $tokenCallback);
$apiInstance = new LoginConfigurationClient\Api\GroupApi(
new GuzzleHttp\Client(),
$config
);
try {
$result = $apiInstance->listGroups();
print_r($result);
} catch (Exception $e) {
echo 'Exception when calling method: ', $e->getMessage(), PHP_EOL;
}
removeUserFromGroup
Remove user from the group.
Parameters
groupName [String]
Name of the group where the user will be removed.
RemoveUserFromGroupInput [Object]
JSON object to provide the ID of the user to remove. See more here.
Example
require_once 'vendor/autoload.php';
use AffinidiTdk\Clients\LoginConfigurationClient;
$tokenCallback = [$authProvider, 'fetchProjectScopedToken'];
// Configure API key authorization: ProjectTokenAuth
$config = LoginConfigurationClient\Configuration::getDefaultConfiguration()->setApiKey('authorization', '', $tokenCallback);
$apiInstance = new LoginConfigurationClient\Api\GroupApi(
new GuzzleHttp\Client(),
$config
);
try {
$groupName = "gold";
$request = array(
"userId": "did:key:890890890890890"
);
$result = $apiInstance->removeUserFromGroup($groupName, $request);
print_r($result);
} catch (Exception $e) {
echo 'Exception when calling method: ', $e->getMessage(), PHP_EOL;
}
DenyList API
Used to block groups and users to deny access on services like Affinidi Login when users are authenticating.
blockGroups
Block users by group.
Parameters
GroupNamesInput [Object]
List of groups to block. See more here.
Example
require_once 'vendor/autoload.php';
use AffinidiTdk\Clients\LoginConfigurationClient;
$tokenCallback = [$authProvider, 'fetchProjectScopedToken'];
// Configure API key authorization: ProjectTokenAuth
$config = LoginConfigurationClient\Configuration::getDefaultConfiguration()->setApiKey('authorization', '', $tokenCallback);
$apiInstance = new LoginConfigurationClient\Api\DenyListApi(
new GuzzleHttp\Client(),
$config
);
try {
$request = array(
"group-1",
"group-2"
);
$result = $apiInstance->blockGroups($request);
print_r($result);
} catch (Exception $e) {
echo 'Exception when calling method: ', $e->getMessage(), PHP_EOL;
}
blockUsers
Block by User ID (DID).
Parameters
BlockedUsersInput [Object]
List of User IDs (DIDs) to block. See more here.
Example
require_once 'vendor/autoload.php';
use AffinidiTdk\Clients\LoginConfigurationClient;
$tokenCallback = [$authProvider, 'fetchProjectScopedToken'];
// Configure API key authorization: ProjectTokenAuth
$config = LoginConfigurationClient\Configuration::getDefaultConfiguration()->setApiKey('authorization', '', $tokenCallback);
$apiInstance = new LoginConfigurationClient\Api\DenyListApi(
new GuzzleHttp\Client(),
$config
);
try {
$request = array(
"user-1-did",
"user-2-did"
);
$result = $apiInstance->blockUsers($request);
print_r($result);
} catch (Exception $e) {
echo 'Exception when calling method: ', $e->getMessage(), PHP_EOL;
}
listBlockedGroups
Get list of blocked groups.
Parameters
pageToken [String]
Used for pagination.
Example
require_once 'vendor/autoload.php';
use AffinidiTdk\Clients\LoginConfigurationClient;
$tokenCallback = [$authProvider, 'fetchProjectScopedToken'];
// Configure API key authorization: ProjectTokenAuth
$config = LoginConfigurationClient\Configuration::getDefaultConfiguration()->setApiKey('authorization', '', $tokenCallback);
$apiInstance = new LoginConfigurationClient\Api\DenyListApi(
new GuzzleHttp\Client(),
$config
);
try {
$result = $apiInstance->listBlockedGroups();
print_r($result);
} catch (Exception $e) {
echo 'Exception when calling method: ', $e->getMessage(), PHP_EOL;
}
listBlockedUsers
Get list of blocked users.
Parameters
pageToken [String]
Used for pagination.
Example
require_once 'vendor/autoload.php';
use AffinidiTdk\Clients\LoginConfigurationClient;
$tokenCallback = [$authProvider, 'fetchProjectScopedToken'];
// Configure API key authorization: ProjectTokenAuth
$config = LoginConfigurationClient\Configuration::getDefaultConfiguration()->setApiKey('authorization', '', $tokenCallback);
$apiInstance = new LoginConfigurationClient\Api\DenyListApi(
new GuzzleHttp\Client(),
$config
);
try {
$result = $apiInstance->listBlockedUsers();
print_r($result);
} catch (Exception $e) {
echo 'Exception when calling method: ', $e->getMessage(), PHP_EOL;
}
unblockGroups
Unblock users by group.
Parameters
GroupNamesInput [Object]
List of groups to block. See more here.
Example
require_once 'vendor/autoload.php';
use AffinidiTdk\Clients\LoginConfigurationClient;
$tokenCallback = [$authProvider, 'fetchProjectScopedToken'];
// Configure API key authorization: ProjectTokenAuth
$config = LoginConfigurationClient\Configuration::getDefaultConfiguration()->setApiKey('authorization', '', $tokenCallback);
$apiInstance = new LoginConfigurationClient\Api\DenyListApi(
new GuzzleHttp\Client(),
$config
);
try {
$request = array(
"group-1-name",
"group-2-name"
);
$result = $apiInstance->unblockGroups($request);
print_r($result);
} catch (Exception $e) {
echo 'Exception when calling method: ', $e->getMessage(), PHP_EOL;
}
unblockUsers
Unblock by User ID (DID).
Parameters
BlockedUsersInput [Object]
List of User IDs (DIDs) to block. See more here.
Example
require_once 'vendor/autoload.php';
use AffinidiTdk\Clients\LoginConfigurationClient;
``````PHP
$tokenCallback = [$authProvider, 'fetchProjectScopedToken'];
// Configure API key authorization: ProjectTokenAuth
$config = LoginConfigurationClient\Configuration::getDefaultConfiguration()->setApiKey('authorization', '', $tokenCallback);
$apiInstance = new LoginConfigurationClient\Api\DenyListApi(
new GuzzleHttp\Client(),
$config
);
try {
$request = array(
"user-1-did",
"user-2-did"
);
$result = $apiInstance->unblockUsers($request);
print_r($result);
} catch (Exception $e) {
echo 'Exception when calling method: ', $e->getMessage(), PHP_EOL;
}
AllowList API
Used to allow groups and users to grant access on services like Affinidi Login when users are authenticating.
allowGroups
Allows users by group.
Parameters
GroupNamesInput [Object]
List of groups to allow. See more here.
Example
require_once 'vendor/autoload.php';
use AffinidiTdk\Clients\LoginConfigurationClient;
$tokenCallback = [$authProvider, 'fetchProjectScopedToken'];
// Configure API key authorization: ProjectTokenAuth
$config = LoginConfigurationClient\Configuration::getDefaultConfiguration()->setApiKey('authorization', '', $tokenCallback);
$apiInstance = new LoginConfigurationClient\Api\AllowListApi(
new GuzzleHttp\Client(),
$config
);
try {
$request = array(
"group-1",
"group-2"
);
$result = $apiInstance->allowGroups($request);
print_r($result);
} catch (Exception $e) {
echo 'Exception when calling method: ', $e->getMessage(), PHP_EOL;
}
disallowGroups
Disallow access to users by group.
Parameters
GroupNamesInput [Object]
List of groups to disallow. See more here.
Example
require_once 'vendor/autoload.php';
use AffinidiTdk\Clients\LoginConfigurationClient;
$tokenCallback = [$authProvider, 'fetchProjectScopedToken'];
// Configure API key authorization: ProjectTokenAuth
$config = LoginConfigurationClient\Configuration::getDefaultConfiguration()->setApiKey('authorization', '', $tokenCallback);
$apiInstance = new LoginConfigurationClient\Api\AllowListApi(
new GuzzleHttp\Client(),
$config
);
try {
$request = array(
"group-1",
"group-2"
);
$result = $apiInstance->disallowGroups($request);
print_r($result);
} catch (Exception $e) {
echo 'Exception when calling method: ', $e->getMessage(), PHP_EOL;
}
listAllowedGroups
Get list of allowed groups.
Parameters
pageToken [String]
Used for pagination.
Example
require_once 'vendor/autoload.php';
use AffinidiTdk\Clients\LoginConfigurationClient;
$tokenCallback = [$authProvider, 'fetchProjectScopedToken'];
// Configure API key authorization: ProjectTokenAuth
$config = LoginConfigurationClient\Configuration::getDefaultConfiguration()->setApiKey('authorization', '', $tokenCallback);
$apiInstance = new LoginConfigurationClient\Api\AllowListApi(
new GuzzleHttp\Client(),
$config
);
try {
$result = $apiInstance->listAllowedGroups($request);
print_r($result);
} catch (Exception $e) {
echo 'Exception when calling method: ', $e->getMessage(), PHP_EOL;
}
Glad to hear it! Please tell us how we can improve more.
Sorry to hear that. Please tell us how we can improve.
Thank you for sharing your feedback so we can improve your experience.