Skip to content

This tool is not affiliated with, endorsed by or sponsored by Okta, Inc. Okta is a trademark of Okta, Inc. Other names are trademarks of their respective owners.

Okta eventType List: The Events Responders Need

The Okta System Log eventTypes that matter in an incident, grouped by attack stage, with the fields to read and the Classic vs Identity Engine differences.

Published on 6 min read

TL;DR. Okta's catalog lists well over a thousand eventTypes; an identity investigation lives on about forty of them. Sign-ins (user.session.start, user.authentication.auth_via_mfa), push prompts (system.push.send_factor_verify_push, user.mfa.okta_verify.deny_push), factor changes (user.mfa.factor.reset_all, user.mfa.factor.activate), admin grants (user.account.privilege.grant), tokens (system.api_token.create), federation (system.idp.lifecycle.create, user.authentication.auth_via_IDP) and app access (user.authentication.sso). Read each with its outcome, client, securityContext and authenticationContext fields, never the eventType alone.

Every eventType below was checked against Okta's published event types catalog (also downloadable as CSV). Descriptions are my own summaries; the catalog remains the reference.

The fields you read on every event

An eventType tells you what happened. The rest of the LogEvent tells you whether it was the real user:

FieldWhy it matters
publishedUTC timestamp; your timeline's spine
actor.alternateId, actor.typewho did it (a user, an API token's owner, the system)
target[]who or what it was done to: user, app, IdP, policy, authenticator
outcome.result, outcome.reasonSUCCESS, FAILURE, ALLOW, DENY… and why
client.ipAddress, client.userAgent.rawUserAgentsource and browser
securityContext.asNumber, asOrg, isp, isProxynetwork owner (ASN), proxy flag
authenticationContext.externalSessionIdthe session (externalSessionId)
authenticationContext.rootSessionIdthe root of an interactive session, survives factor changes
debugContext.debugDataprivilegeGranted, factor, behaviors, risk, threatSuspected, tunnels, requestUri
transaction.id, uuidgroup related events; cite the exact event

A caution about debugData: it is diagnostic context, not a stable contract, and its keys vary between orgs and releases. Treat it as a strong hint, not as a schema.

On sessions, Okta Security notes that externalSessionId can change after factor lifecycle events, while rootSessionId follows the whole interactive session (Okta Security: rootSessionId). Pivot on both.

Sign-in and MFA

eventTypeWhat it recordsRead with
user.session.startsign-in to Okta (success or failure)outcome.reason, IP, ASN, user agent
user.authentication.verifyuser identity verificationoutcome, IP
user.authentication.auth_via_mfaMFA verificationdebugData.factor, outcome
policy.evaluate_sign_onsign-on policy evaluationdebugData.behaviors, risk
system.push.send_factor_verify_pushan Okta Verify push was sentcount per user per minute
user.mfa.okta_verify.deny_pushthe user rejected a push (Classic Engine)burst, then an accepted push
user.mfa.okta_verifyOkta Verify verificationoutcome
user.mfa.attempt_bypassattempt to bypass a factoractor, IP
user.account.lockaccount locked after failurespreceding failures

The catalog entry for user.mfa.okta_verify.deny_push notes that it is emitted by Classic Engine API flows; in Okta Identity Engine a rejected push shows up as user.authentication.auth_via_mfa with a failure outcome. A push-fatigue detection that only watches deny_push is blind on OIE orgs. More in MFA fatigue detection.

Factors and passwords

eventTypeWhat it recordsWhy responders care
user.mfa.factor.reset_allall factors of a user resetthe helpdesk social-engineering pivot
user.mfa.factor.deactivateone factor removedsame, when the actor is not the user
user.mfa.factor.activatea new factor enrolledattacker's own device after a reset
user.account.reset_passwordpassword reset by an adminactor ≠ target is the signal
user.account.update_passwordpassword changedwho changed it, from where
device.enrollment.createnew Okta Verify device registerednew device right after a reset

The sequence reset by someone else → new factor from a new network is covered in helpdesk social engineering and factor resets.

Sessions and threat signals

eventTypeWhat it records
security.session.detect_client_roamingOkta detected a roaming session
user.session.context.changethe session's context changed enough to warrant policy re-evaluation
policy.auth_reevaluate.failcontinuous access evaluation found a policy violation
user.session.clearan admin cleared a user's sessions
user.session.endsign-out
security.threat.detectedrequest from an IP that ThreatInsight classed as malicious
security.attack.startThreatInsight detected that the org is under attack
security.breached_credential.detecteda credential associated with a known breach was used
user.account.report_suspicious_activity_by_enduserthe user clicked "report suspicious activity"
user.risk.detect, user.risk.changeuser risk detected or changed

See session hijacking detection and password spraying detection.

Administration and persistence

eventTypeWhat it recordsKey detail
user.session.access_admin_appAdmin Console openedfirst admin access after a reset
user.account.privilege.grantadmin privileges granted to a userdebugData.privilegeGranted
group.privilege.grantadmin privileges granted to a groupthen look at group membership
user.account.privilege.revokeall admin privileges revokedcleanup, by whom
system.api_token.createnew API tokencarries its creator's rights
system.api_token.revoketoken revoked
user.session.impersonation.grant / .initiatesupport impersonation enabled / startedwas it requested by your team?
user.lifecycle.createnew user creatednew account then admin grant
policy.lifecycle.update, policy.rule.updatepolicy or rule changedMFA removed from a rule?
policy.lifecycle.deactivate, policy.rule.deactivatepolicy or rule disabled
security.authenticator.lifecycle.deactivateauthenticator disabled org-wide
zone.update, security.threat.configuration.updatenetwork zone or ThreatInsight changedblocklist removed?

Details in admin role and API token abuse.

Federation

eventTypeWhat it records
system.idp.lifecycle.create / .activateidentity provider created / activated
system.idp.lifecycle.updateidentity provider changed
system.idp.key.createIdP signing key added
system.idp.lifecycle.read_client_secretIdP client secret read
user.authentication.auth_via_IDPuser signed in through an external IdP
user.authentication.auth_via_inbound_SAMLinbound SAML authentication

Okta Security lists system.idp.lifecycle.create and user.authentication.auth_via_IDP among the events to monitor for cross-tenant impersonation (Okta Security).

Application access

eventTypeWhat it records
user.authentication.ssoSSO into an application (target holds the app)
app.oauth2.token.grant, app.oauth2.as.token.grantOAuth token issued

SSO tells you which application was opened, not what was done there; continue in that application's own logs.

How the analyzer uses these

The analyzer groups these eventTypes into categories for filtering (authentication, MFA, sessions, admin and IdP, policies and security, app access, users and accounts), and its 25 detection rules are written against them: thresholds (bursts of pushes or failures), sequences (a reset, then an enrollment), and follow-ups (SSO into a sensitive app after a high-severity finding). The rules are data, visible on the home page, so you can check exactly which eventTypes and fields each one reads.

Further reading

Related articles

A fictional Okta intrusion read event by event: helpdesk reset, attacker factor, Super Admin grant, rogue IdP and AWS access, with the analyzer's findings.
Analyze an Okta System Log export in your browser: load the files, read the verdict and findings, pivot on users, IPs and sessions, and export the timeline.
Export the Okta System Log for an investigation: Admin Console CSV, /api/v1/logs with correct pagination, Log Streaming, SIEM exports and the traps to avoid.

This tool is not affiliated with, endorsed by or sponsored by Okta, Inc. Okta is a trademark of Okta, Inc. Other names are trademarks of their respective owners.