Skip to content

Check Set Run event fields

Use this page to look up Check Set summary fields. For the full history-object and Flow recipe, use Save Check Set run summaries.

Setup valueName
LabelRecord Health Check Set Run
API nameRecord_Health_Check_Set_Run__e

This Platform Event gives one summary for each Salesforce record after a Check Set finishes. It reports how many Checks passed, failed, were skipped, could not be evaluated, or encountered a system error.

For example, a scheduled process checks 5,000 Accounts every night. Your Platform Event-triggered Flow can save one Set Run event per Account in a custom history object. A report can then show each Account’s latest totals without saving a separate event for every Check.

Use the Record Health Check Result event instead when the receiving Flow, Apex trigger, or integration needs to know which individual Check passed or failed.

Use this event when automation needs to:

  • save one health-check summary per record for reports or trends;
  • notify an administrator when Unable Count or System Error Count is greater than zero;
  • start follow-up work after the health-check transaction commits; or
  • confirm that a requested Check Set run reached its result-publication step.

For a decision that must happen immediately in the same Flow or Apex transaction, use the results returned directly by the Flow action or Apex API. A Platform Event is delivered separately after publication.

When Record Health Check publishes this event

Section titled “When Record Health Check publishes this event”

The event is optional. The way the health check starts determines which setting controls it.

A person clicks Run or Rerun on the Lightning card

Section titled “A person clicks Run or Rerun on the Lightning card”

Select Publish User Run Event on the Check Set to publish the Set Run event. An automatic card refresh does not publish it. This prevents opening or refreshing a record page from creating event traffic.

Flow, Apex, Batch, Queueable, Future, or Scheduled Apex starts the run

Section titled “Flow, Apex, Batch, Queueable, Future, or Scheduled Apex starts the run”

The code or Flow action chooses the publication value. The Check Set’s Publish User Run Event checkbox does not control these runs.

Publication valueIs a Set Run event published?
ALLYes. Record Health Check also publishes every individual Check Result, including PASS and SKIPPED.
ACTIONABLEYes. It publishes a completed Set Run heartbeat for every scanned record, including all-pass and all-skipped runs. Individual Check Result events remain limited to FAIL, UNABLE_TO_EVALUATE, and ERROR.
NONENo Platform Events are published. The Flow or Apex code can use or save the returned results directly.

See Choose whether to publish result events for examples from every supported way to start a run.

The event has no Overall Status field. Derive it from counts using System Error, Unable, Failed, Passed, then Skipped priority. Phase__c is currently COMPLETED; do not wait for another phase. Eligible Count includes Checks considered for the run, while Evaluated Count excludes Checks that never evaluated because applicability, prerequisites, or stop behavior prevented execution.

This is a High Volume Platform Event with Publish After Commit behavior. Salesforce makes an accepted event available only after the transaction that ran the health check commits. If that transaction rolls back, Salesforce does not deliver the event.

Publication is best effort. Salesforce accepting the publication request does not prove that a Platform Event-triggered Flow, Apex trigger, or integration processed the event successfully. Monitor the receiving automation separately.

The installed Record Health Check Card User, Record Health Check User, and Record Health Check Admin Permission Sets include create and read access for this Platform Event. The person or process starting a health check still needs the permission set appropriate to that entry point and access to the Salesforce records and fields used by the Checks.

Also give the receiving Flow, Apex class, or integration only the access it needs for any custom history object or follow-up records it uses.

The API names below are the field names used by Flow, Apex, and integrations.

Field labelAPI nameTypeWhat it contains
Event IDEventId__cText(80), requiredUnique ID generated for this event. Save it in a unique field to prevent duplicate follow-up work.
Run IDRunId__cText(120), requiredID shared by the Set Run event, its Check Result events, and the direct Flow or Apex response.
PhasePhase__cText(30), requiredPer-record events use COMPLETED; async job envelopes use COMPLETED or FAILED.
Submitted Record CountSubmittedRecordCount__cNumber(7,0)Async job population; blank for per-record events.
Processed Record CountProcessedRecordCount__cNumber(7,0)Records completed before the async terminal envelope; blank for per-record events.
Check Set Qualified API NameCheckSetQualifiedApiName__cText(80), requiredExact Qualified API Name of the Check Set that ran, such as My_Account_Checks or an installed-package name such as rhc__Example_Account_Check_Builder_Guide.
Record IDRecordId__cText(18)Salesforce record summarized by this event. Record Health Check supplies it for current runs.
Occurred AtOccurredAt__cDate/Time, requiredDate and time when Record Health Check created the event.
SourceSource__cText(30), requiredHow the run started: APEX_API, FLOW, USER_INITIATED, SCHEDULED, BATCH, QUEUEABLE, FUTURE, or AGENT.
Contract VersionContractVersion__cText(10), requiredVersion of this event’s field contract. The current value is 1.0.
Framework VersionFrameworkVersion__cText(20), requiredRecord Health Check code version that created the event.
Eligible Check CountEligibleCheckCount__cNumber(5,0)Number of active Checks selected for the run.
Evaluated Check CountEvaluatedCheckCount__cNumber(5,0)Number of Check results included in this record’s summary.
Passed CountPassedCount__cNumber(5,0)Results with status PASS.
Failed CountFailedCount__cNumber(5,0)Results with status FAIL.
Skipped CountSkippedCount__cNumber(5,0)Results with status SKIPPED.
Unable CountUnableCount__cNumber(5,0)Results with status UNABLE_TO_EVALUATE.
System Error CountSystemErrorCount__cNumber(5,0)Results with status ERROR.

The Set Run event does not include messages, SOQL, formula values, Found values, Expected values, or stack traces. It does contain a Salesforce record ID, so protect saved copies according to the sensitivity of that record.

This example represents an administrator-created Check Set named My_Account_Checks. Its Qualified API Name does not start with rhc__. Copy the exact Qualified API Name from the Check Set in Setup; do not add or remove a namespace prefix.

{
"ContractVersion__c": "1.0",
"FrameworkVersion__c": "<framework-version>",
"EventId__c": "rhc-run-001-0123456789abcdef",
"RunId__c": "rhc-run-001",
"Phase__c": "COMPLETED",
"CheckSetQualifiedApiName__c": "My_Account_Checks",
"RecordId__c": "001000000000001AAA",
"OccurredAt__c": "2026-07-21T15:30:00.000Z",
"Source__c": "SCHEDULED",
"EligibleCheckCount__c": 5,
"EvaluatedCheckCount__c": 5,
"PassedCount__c": 3,
"FailedCount__c": 1,
"SkippedCount__c": 1,
"UnableCount__c": 0,
"SystemErrorCount__c": 0
}

The IDs, date, and counts are illustrative. A receiving integration should allow Record Health Check to add fields to contract version 1.0 without failing.

Salesforce can deliver a Platform Event more than once. Before creating a history record, notification, or other follow-up work, check whether the destination already contains EventId__c. Store it in a Unique field when possible, and make the remaining actions safe to run again.

Use RunId__c to connect this summary to its Check Result events. Do not use Run ID as the unique event receipt because one run can contain a Set Run event for every Salesforce record checked.

Platform Event retention is temporary. Save the event to your own custom object or external system when the business needs a longer history. For a complete Flow and Apex example, see Save Check Set run summaries.