LogoutEventStream
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()
Special Access Rules
As of Summer ’20 and later, only users with the Customize Application user permission can access this object.
Supported Subscribers
Subscriber | Supported? |
---|---|
Apex Triggers | ![]() |
Flows | |
Processes | |
Pub/Sub API | ![]() |
Streaming API (CometD) | ![]() |
Subscription Channel
/event/LogoutEventStream
Event Delivery Allocation Enforced
No
Fields
Field Name | Details |
---|---|
EventDate |
|
EventIdentifier |
|
EventUuid |
|
LoginKey |
|
RelatedEventIdentifier |
|
ReplayId |
|
SessionKey |
|
SessionLevel |
|
SourceIp |
|
UserId |
|
Username |
|
Usage
In this example, the subscriber inserts a custom logout event record during logout.
trigger LogoutEventTrigger on LogoutEventStream (after insert) {
LogoutEventStream event = Trigger.new[0];
LogoutEvent__c record = new LogoutEvent__c();
record.EventIdentifier__c = event.EventIdentifier;
record.UserId__c = event.UserId;
record.Username__c = event.Username;
record.EventDate__c = event.EventDate;
record.RelatedEventIdentifier__c = event.RelatedEventIdentifier;
record.SessionKey__c = event.SessionKey;
record.LoginKey__c = event.LoginKey;
insert(record);
}