User Activity Logs API
Gets a list of activity logs (user flows and events) for the specified application.
HTTP Request
The API is invoked as a POST request to the following endpoint:
https://<host-name>/api/v1/mgmt/activity-logs
where <host-name> has the following value depending on the environment:
- Sandbox:
admin.bindid-sandbox.io
- Production:
admin.bindid.io
- Production EU:
admin.eu.bindid.io
Request Header
Header Name | Value |
---|---|
Authorization | A valid bearer token (see Token API) |
Request Parameters
A JSON object with these fields:
Field | Description | Type |
---|---|---|
appId | Required. The application's ID. | String |
pageSize | Optional. Maximum number of results per page. Maximum value is 5000. | Number |
userId | Optional. Retrieves activity logs only for the specified user ID. | String |
userAlias | Optional. Retrieves activity logs only for the specified user alias. | String |
timeStart | Required. Time from which activity logs are retrieved (inclusive), in unix-epoch milliseconds. | Number |
timeEnd | Required. Time to which activity logs are retrieved (exclusive), in unix-epoch milliseconds. | Number |
skip | Optional. Determines the number of activity logs which are not retrieved, starting from the newest log. When the field is not specified, the value defaults to 0. | Number |
credentialsId | Required. API credentials ID used to create the access token that authorizes this request. | String |
Request Example
POST /api/v1/mgmt/activity-logs
Authorization: Bearer q5fDE10-mlM4xEwl_UnhKjhvWOLHEbXqzJOYpGgxuB0
Content-Type: application/json
{
"appID": "a51ca710"
"credentialsId": "ec96a4e2.management_api_app.tid_a081f9b3.bindid.io",
"timeStart": 23678686876,
"timEnd": 324987298347,
"userId": "127987-39487298374-1983791278"
}
Response Headers
The response includes this HTTP header:
Header Name | Value |
---|---|
Content-Type | application/json |
Response Body
The JSON object in the body has the following structure:
Field Name | Description | Type |
---|---|---|
activityLogs | Array of objects containing user event information, where each object contains the events of one user flow. | activityLogs[] |
total | Number of returned activity logs. | Number |
activityLogs
Object
Field Name | Description | Type |
---|---|---|
accessingDevice | User device details (OS type, OS version, browser type, and browser version). | String |
accessingDeviceInfo | User device details object. | Object (see DeviceInfo) |
accessingDeviceLocation | Location of the device used to start the flow, which can contain these fields: lat (string), lng (string), city (string), country (string), state (string), source (string, source of geolocation data). | Object |
accessingIp | Accessing device's IP address. | String |
applicationId | Application ID. | String |
authenticatingDevice | Authenticating device details (OS type, OS version, browser type, and browser version). | String |
authenticatingDeviceInfo | Authenticating device details object. | Object (See DeviceInfo) |
authMethodType | Authentication method used in flow, which can be: fido2 , email_otp , email_magic_link , or device_only . | String |
businessUnit | BindID tenant ID. | String |
consentDecision | User's consent decision, which can be: approve , use_mobile , reject , or failed_unexpectedly . | String |
desktopLoginDecision | Desktop login flow decision when no user is registered with the device, which can be: login or use_mobile . | String |
desktopTransactionDecision | Desktop transaction consent, which can be: approve , use_mobile , reject , or failed_unexpectedly . | String |
errorCode | Authentication error, which can be: Consent_screen_rejected or auth_failure . | String |
events | Array containing the flow's events. | events[] |
failureReason | Reason an authentication flow failed. | String |
flowType | The flow type, which can be: authentication , transaction , ciba , or enrollment . | String |
id | Activity log flow ID. | String |
isNewAuthenticationDeviceForRP | Indicates if this was the first time the user authenticated. | Boolean |
status | The event's status, which can be: success , failure , suspected , blocked , enrollment , or incomplete . | String |
timestamp | Time the log was created, in unix-epoch milliseconds.. | Number |
userAlias | User alias. | String |
userId | User ID. | String |
events
Object
Field Name | Description | Type |
---|---|---|
id | Event ID. | String |
payload | Event details. | payload |
timestamp | Time the event was created, in unix-epoch milliseconds. | Number |
payload
Object
Field Name | Description | Type |
---|---|---|
details | The flow's events details. | Object (see details) |
flowId | The flow ID to which the event belongs. | String |
details
Object
Field Name | Description | Type |
---|---|---|
action | The action performed (see actions). | String |
clientIp | The client's IP address. | String |
Action Values
Action | Description |
---|---|
ama_account_switching | Mobile account switched. |
ama_consent | Mobile consent approved. |
auth_complete | Authentication flow completed. |
auth_native_complete | Native device authentication completed. |
auth_start_ama | Mobile consent flow started. |
auth_start_native | Native device authentication started. |
auth_start_oidc | OIDC authentication flow started. |
biometric_verification_success | Biometric verification succeeded. |
custodian_registration_completed | Custodian registration completed. |
custodian_registration_started | Custodian registration started. |
desktop_account_switching | Desktop account switched. |
desktop_biometrics_registered | Desktop biometric registered. |
desktop_consent | Desktop consent approved. |
desktop_login_page | Desktop login page loaded. |
desktop_transaction_page | Desktop transaction page loaded. |
device_auth | FIDO2 mobile authentication canceled of failed. |
device_blocked_rejection | Blocked device rejected. |
device_re_register | FIDO2 re-registered on mobile device. |
device_recovery_completed | Device recovery completed. |
device_recovery_skipped | Device recovery skipped. |
device_recovery_started | Device recovery started. |
email_verification_failure | Email verification failed. |
email_verification_success | Email verification completed. |
enroll_native_complete | Native device enrollment completed. |
enroll_start_native | Native device enrollment started. |
magic_link_expired | Magic link expired. |
new_device_registered | New device registered. |
new_qr_generated | QR code generated. |
new_user_registered | New user registered. |
restricted_location | Device in a restricted location. |
rp_feedback_provided | Session feedback provided. |
sms_verification_failure | SMS verification failed. |
sms_verification_success | SMS verification succeeded. |
user_access_code | User imputed access code. |
user_scan_qr | QR code scanned. |
user_send_sms | SMS code sent to user. |
DeviceInfo Object
Field Name | Description | Type |
---|---|---|
osType | OS type. | String |
osVersion | OS version. | String |
browserType | Browser type. | String |
browserVersion | Browser version. | String |
detectedName | Device name. | String |
alias | Device alias. | String |
Response Example
HTTP/2 200
Content-Type: application/json
{
"activityLogs": [
{
"userId": "ff060153-da0f-41d3-b318-7417e87ea4e8",
"isNewAuthenticationDeviceForRP": true,
"timestamp": 1655887325779,
"applicationId": "branding_preview_app",
"accessingDevice": "Mac OS 10.15.7, Chrome 102.0.0.0",
"accessingDeviceInfo": {
"osType": "Mac OS",
"osVersion": "10.15.7",
"browserType": "Chrome",
"browserVersion": "102.0.0.0"
},
"status": "success",
"authenticatingDevice": "Mac OS 10.15.7, Chrome 102.0.0.0",
"authenticatingDeviceInfo": {
"osType": "Mac OS",
"osVersion": "10.15.7",
"browserType": "Chrome",
"browserVersion": "102.0.0.0"
},
"accessingDeviceLocation": {
"lat": 32.0668,
"lng": 34.7649,
"city": "Tel Aviv",
"state": "Tel Aviv",
"country": "IL",
"source": "ip"
},
"id": "BID_52bb9f5d",
"authMethodType": "fido2",
"businessUnit": "tid_334a30ea",
"flowType": "authentication",
"accessingIp": "212.143.232.246",
"desktopLoginDecision": "login",
"failureReason": "N/A",
"events": [
{
"id": "7dd7a069-6f20-4045-9090-695736498c74",
"timestamp": 1655887325817,
"payload": {
"flowId": "BID_52bb9f5d",
"details": {
"action2": "auth_start_oidc",
"client_ip": "212.143.232.246"
}
}
},
{
"id": "b2577cda-a7ab-464f-a8f3-d49e40fc65f5",
"timestamp": 1655887326966,
"payload": {
"flowId": "BID_52bb9f5d",
"details": {
"action2": "desktop_login_page",
"client_ip": "212.143.232.246"
}
}
},
{
"id": "d1e05923-f14d-42d2-a7f5-55f78b6150bd",
"timestamp": 1655887333318,
"payload": {
"flowId": "BID_52bb9f5d",
"details": {
"action2": "desktop_login_page",
"client_ip": "212.143.232.246"
}
}
},
{
"id": "faf1d834-2322-489f-afb8-ee6a71e14821",
"timestamp": 1655887336972,
"payload": {
"flowId": "BID_52bb9f5d",
"details": {
"action2": "biometric_verification_success",
"client_ip": "212.143.232.246"
}
}
},
{
"id": "0c5cf169-5bda-4104-86e6-7f3b6e22a01b",
"timestamp": 1655887337533,
"payload": {
"flowId": "BID_52bb9f5d",
"details": {
"action2": "auth_complete",
"client_ip": "212.143.232.246"
}
}
}
]
}
],
"total": 1
}