<iframe src="https://www.googletagmanager.com/ns.html?id=GTM-M74D8PB" height="0" width="0" style="display:none;visibility:hidden">
Loading
Skip to NavigationSkip to Main Content
How to Determine User Sign-In Location in Workflows
Workflows
Okta Classic Engine
Okta Identity Engine
Overview

This guide explains how to determine the user's sign-in geographical location in Workflows.

Applies To
  • Okta Workflows
Solution

Determining location

When using the Okta – User Sign In Attempt event card, the event has information about the user’s geolocation. 
 Using User Sign In Attempt event card  


The Event Details JSON section has information that also includes the geolocation information. 

To retrieve the location information, use the Get Multiple card with the client.geographicalContext path. 

For example, if a user signs in from San Diego, the JSON might look like this: 

{
  "city": "San Diego",
  "state": "California",
  "country": "United States",
  "postalCode": "92014",
  "geolocation": {
    "lat": 32.7157,
    "lon": -117.1610
  }
}

The other path in the Get Multiple card (the client.outcome) holds information on whether the sign-in was successful or not. 

JSOM from a failed sign-in:

{
  "result": "FAILURE",
  "reason": "INVALID_CREDENTIALS"
}

JSON from a successful sign-in:

{"result":"SUCCESS"}

This section demonstrates how to build a flow that sends a notification when a user signs in from a particular country.

Sending a sign-in notification

This section explains how to update the flow to receive a notification when a sign-in occurs from a specific country. A notification will be sent when a user signs in from a country listed in the Workflows table (shown below).

Country table 


The flow looks like this: 

A flow to notify when a sign-in happens from a country 


The flow has the following cards: 

  1. The User Sign In Attempt event card fires when a user attempts a sign-in.
  2. The Get Multiple card retrieves country and sign-in outcome information. The card is updated to retrieve the country name and sign-in outcome directly (in the first section, the JSON was retrieved). Paths to retrieve the exact values: 
    • client.geographicalContext.country
    • outcome.result

Search rows

  1. The Search Rows card searches if a country from which a sign-in happened matches a country listed in the table.
  2. The first Continue If card checks if a country was matched. If yes, the flow continues.
  3. The second Continue If card checks if a sign-in was successful. If yes, the flow continues.
  4. The Compose card creates a message with sign-in information that can be sent to Slack, email, or SMS.

Related References

Loading
How to Determine User Sign-In Location in Workflows