Newer Version Available
LogoutEventStream (Beta)
Tracks user UI logout. A logout event records a successful user logout
from your org’s UI. This object is read only, and you can’t retrieve it using a SOQL
query. This object is available in API version 41.0 and later.
When LogoutEventStream is enabled, Salesforce publishes logout events, and you can
add an Apex trigger to subscribe to those events. You can then implement custom
logic during logout. For example, you can revoke all refresh tokens for a user at
logout.
Supported Calls
describeSObjects()
Supported Subscribers
| Subscriber | Supported? |
|---|---|
| Apex Triggers | ![]() |
| Flows | |
| Processes | |
| Streaming API (CometD) | ![]() |
Streaming API Subscription Channel
/event/LogoutEventStream
Special Access Rules
Accessing this object requires the API Enabled user permission.
Fields
| Field Name | Details |
|---|---|
| EventDate |
|
| EventIdentifier |
|
| LoginKey |
|
| RelatedEventIdentifier |
|
| ReplayId |
|
| SessionKey |
|
| SessionLevel |
|
| SourceIp |
|
| UserId |
|
| Username |
|
Usage
In this example, the subscriber inserts a custom logout event record during logout.
1trigger LogoutEventTrigger on LogoutEventStream (after insert) {
2 LogoutEventStream event = Trigger.new[0];
3 LogoutEvent__c record = new LogoutEvent__c();
4 record.EventIdentifier__c = event.EventIdentifier;
5 record.UserId__c = event.UserId;
6 record.Username__c = event.Username;
7 record.EventDate__c = event.EventDate;
8 record.RelatedEventIdentifier__c = event.RelatedEventIdentifier;
9 record.SessionKey__c = event.SessionKey;
10 record.LoginKey__c = event.LoginKey;
11 insert(record);
12}