When a user logs in to your digital platform, you can utilize a service provider to monitor the device used to access the account. Based on what service selected, there may be additional implementation required to capture a session or device identifier in the front-end of your application in order to profile the device. These identifiers required by the 3rd party providers can be supplied in the supplemental_data{} section - this object allows you to supply any attributes that are used specifically by the services configured in your Source Workflow.

TypeValues
Monitoring Event Typelogin
Minimum Required Fields1. external_entity_id or entity_token
2. timestamp
3. username
4. login_method
Recommended Fields1. status
2. device{}

Please reference events API for a full set of supported fields.

Login Request

{
    "event_type": "login",
    "data": {
        "timestamp": "2024-03-25T23:50:34.681Z",
        "external_entity_id": "cf88a0a1-34d6-492d-b617-c8b43785e7b7",
        "username": "John.Doe84",
        "status": "attempted",
        "login_method": "password",
        "device": {
            "ip_address_v4": "88.232.60.238",
            "device_type": "mobile"
        },
        "supplemental_data": {
            "ip_address_v4": "88.232.60.238",
            "threatmetrix_session_id": "f74f3b77-6817-4324-99eb-563558ca6065"
        }
    }
}

Login Monitoring Response

Since we are evaluating the Login request, evaluations[].summary.outcome will return with the outcome of the Source Workflow. Based on the outcome returned, we can determine whether we want to perform a review on the account if found suspicious.

If the request is determined to be suspicious that require additional reviews, or actions, an alert will be generated with journey_applications section populated. We recommend subscribing to the Journeys Webhooks for any asynchronous response that might dictate your business logic.

{
    "status_code": 201,
    "event_request_token": "EV-vlm5H2TqSi8GyFT7ZaHB",
    "_links": {
        "self": {
            "href": "/v1/events/EV-vlm5H2TqSi8GyFT7ZaHB"
        }
    },
    "event": {
        "event_type": "login",
        "event_status": "PROCESSED",
        "data": {
            "timestamp": "2024-03-25T23:50:38.666Z",
            "external_entity_id": "cf88a0a1-34d6-492d-b617-c8b43785e7b7",
            "username": "John.Doe84",
            "status": "attempted",
            "login_method": "password",
            "sso": null,
            "device": {
                "ip_address_v4": "88.232.60.238",
                "device_type": "mobile"
            },
            "supplemental_data": {
                "ip_address_v4": "88.232.60.238",
                "threatmetrix_session_id": "f74f3b77-6817-4324-99eb-563558ca6065"
            },
            "entity_token": "P-TfkFe6lCPkElc9Xktd3V",
            "external_login_id": null
        },
        "evaluations": [
            {
                "error": null,
                "evaluation_token": "S-19Ni3fPIOrv8mDhLPzL9",
                "workflow_token": "b8c7vB0rVfenBllPgRmohGJ80HkV8cx3",
                "workflow_version_id": 1,
                "prefiltered": false,
                "summary": {
                    "result": "success",
                    "outcome": "Approved",
                    "tags": []
                },
                "_links": {
                    "self": {
                        "href": "/v1/evaluations/S-19Ni3fPIOrv8mDhLPzL9"
                    }
                }
            }
        ],
        "journey_applications": []
    }
}