Applications (PINAuth) REST API
The Application/PINAuth endpoint allows creating and managing all the definitions (user type, channel and authentication policy) required for PIN authentication.
The API version supported by HID Authentication Service is
Previous versions of the API are also supported with the corresponding functionality.
Method Details
Entity Action | Request URI | Description |
---|---|---|
Read |
/configuration/{tenant}/v2/Application/PINAuth |
Retrieve the list of all PINAuth Applications |
Read |
/configuration/{tenant}/v2/ Application/PINAuth /{uid} |
Retrieve a PINAuth Application |
Create |
/configuration/{tenant}/v2/ Application/PINAuth |
Create a PINAuth Application |
Delete |
/configuration/{tenant}/v2/ Application/PINAuth /{uid} |
Delete a PINAuth Application |
Get All PINAuth Applications
GET /Application/PINAuth
Sample Response
{
"schemas": ["urn:ietf:params:scim:api:messages:2.0:ListResponse"],
"totalResults": 1,
"resources": [
{
"schemas": ["urn:hid:scim:api:idp:2.0:application:PINAuth"],
"id": "PIN_FOR_USERS",
"meta": {
"resourceType": "PIN Auth Application",
"location": "https://[base-server-url]/scim/tenant/v2/Application/PINAuth/PIN_FOR_USERS",
"version": "1"
},
"name": "PIN authentication application",
"notes": "Application for PIN authentication",
"constraints": {
"minLength": 4,
"maxLength": 12,
"characterRange" : "numOrAlpha"
},
"usageRestrictions": {
"userType": "UT_EMP",
"validChannelCodes": [ "CH_EXTRAPP" ]
},
"sessionPolicy": {
"disableThreshold": 5,
"defaultExpiryThreshold": -1,
"sessionValidPeriod": 86400000,
"disabledTimeReset": 0,
"levelOfAssurance": "urn:hidaaas:policy:at_pin"
}
}
]
}
Get a PINAuth Application
GET /Application/PINAuth/{uid}
where {uid} is the application id.
Sample Response
{
"schemas": ["urn:hid:scim:api:idp:2.0:application:PINAuth"],
"id": "PIN_FOR_USERS",
"meta": {
"resourceType": "PIN Auth Application",
"location": "https://[base-server-url]/scim/tenant/v2/Application/PINAuth/PIN_FOR_USERS",
"version": "1"
},
"name": "PIN authentication application",
"notes": "Application for PIN authentication",
"constraints": {
"minLength": 4,
"maxLength": 12,
"characterRange" : "numOrAlpha"
},
"usageRestrictions": {
"userType": "UT_EMP",
"validChannelCodes": [ "CH_EXTRAPP" ]
},
"sessionPolicy": {
"disableThreshold": 5,
"defaultExpiryThreshold": -1,
"sessionValidPeriod": 86400000,
"disabledTimeReset": 0,
"levelOfAssurance": "urn:hidaaas:policy:at_pin"
}
}
Create a PINAuth Application
POST /Application/PINAuth
Attributes for compatible applications are:
Attribute | Description |
---|---|
id |
The unique identifier of the application (optional)
|
constraints |
|
usageRestrictions |
|
sessionPolicy |
The customizable authentication policy parameters:
|
Sample Request
{
"id": "PIN_FOR_USERS",
"name": "PIN authentication application",
"notes": "Application for PIN authentication",
"constraints": {
"minLength": 4,
"maxLength": 12,
"characterRange" : "numOrAlpha"
},
"usageRestrictions": {
"userType": "UT_EMP",
"validChannelCodes": [ "CH_EXTRAPP" ]
},
"sessionPolicy": {
"disableThreshold": 5,
"defaultExpiryThreshold": -1,
"sessionValidPeriod": 86400000,
"disabledTimeReset": 0,
"levelOfAssurance": "urn:hidaaas:policy:at_pin"
}
}
The authentication type is bound to the:
-
Channel - CH_EXTRAPP
-
User type - UT_EMP
The application definition is created with the following values:
-
Authentication Policy:
-
id - identifier generated by the back end in the format <PIN application ID> (for example, PIN_FOR_USERS) or the value defined in the sessionPolicy parameters (for example, AT_PIN)
-
constraints, usageRestrictions and sessionPolicy parameters are also updated with the specified values
-
Sample Response
{
"schemas": ["urn:hid:scim:api:idp:2.0:application:PINAuth"],
"id": "PIN_FOR_USERS",
"meta": {
"resourceType": "PIN Auth Application",
"location": "https://[base-server-url]/scim/tenant/v2/Application/PINAuth/PIN_FOR_USERS",
"version": "1"
},
"name": "PIN authentication application",
"notes": "Application for PIN authentication",
"constraints": {
"minLength": 4,
"maxLength": 12,
"characterRange" : "numOrAlpha"
},
"usageRestrictions": {
"userType": "UT_EMP",
"validChannelCodes": [ "CH_EXTRAPP" ]
},
"sessionPolicy": {
"disableThreshold": 5,
"defaultExpiryThreshold": -1,
"sessionValidPeriod": 86400000,
"disabledTimeReset": 0,
"levelOfAssurance": "urn:hidaaas:policy:at_pin"
}
}
Delete a PINAuth Application
DELETE /Application/PINAuth/{uid}
Where {uid} is the adapter id.
This will also delete the application's authentication policy.
If the authentication is still in use (by user authenticators that have already been enrolled), the deletion fails and an error is returned.