Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/N3XT3R1337/RiftCE/llms.txt

Use this file to discover all available pages before exploring further.

A health check validates each account’s .ROBLOSECURITY cookie against the Roblox API, refreshes the Robux balance, and updates account metadata. Running health checks regularly keeps your account list accurate and surfaces expired or revoked cookies before you try to launch them.

What a health check does

For each account, HealthCheckService.CheckAccountAsync performs the following steps:
1

Validate the cookie

Calls RobloxApi.ValidateCookieAsync with the account’s SecurityToken. A successful response confirms the cookie is still valid and returns the account’s current userId and username.
2

Update account identity

If UserId was not set, it is populated from the API response. If the Roblox username has changed since the account was added, Username is updated to match.
3

Fetch Robux balance

Calls RobloxApi.GetRobuxAsync to retrieve the current Robux balance and stores it in account.Robux.
4

Log a Robux snapshot

Appends a time-stamped Robux entry to the activity log via App.ActivityLog.AddRobuxSnapshot, building a history you can chart over time.
5

Record the timestamp

Sets account.LastHealthCheck to the current UTC time regardless of whether the check succeeded or failed.
If the account has no SecurityToken, CookieValid is set to false immediately and the API call is skipped.

Running checks on all accounts

CheckAllAsync iterates every account in the store sequentially and reports progress after each one.
public async Task<HealthCheckResult> CheckAllAsync(
    IProgress<(int completed, int total, int valid, int invalid)>? progress = null)
A fixed 200 ms delay is inserted between each account check to respect Roblox API rate limits. Rift CE saves the updated vault to disk once all accounts have been checked.
The 200 ms inter-check delay means a full run across 100 accounts takes at least 20 seconds. The progress callback fires after every account so the UI stays responsive throughout.

Health check results

After CheckAllAsync completes it returns a HealthCheckResult with the following fields:

Total

Total number of accounts that were checked.

Valid

Number of accounts whose cookies passed validation.

Invalid

Number of accounts with expired, revoked, or missing cookies.

TotalRobux

Sum of Robux balances across all valid accounts.

AvgRobux

Computed as TotalRobux / Total. Gives a per-account average across the whole vault.

AvgCookieAge

Average cookie age in days across accounts where LastCookieSet has been recorded.
The CookieAge computed property on Account returns how many days have elapsed since the cookie was last set:
public int CookieAge => LastCookieSet == default
    ? -1
    : (int)(DateTime.UtcNow - LastCookieSet).TotalDays;
A value of -1 means LastCookieSet was never recorded for this account (for example, accounts imported before the field was added).

Aging alerts

When a cookie has been in use for a long time, Rift CE can display an aging alert. You can suppress this with Settings → Disable Aging Alert. Enable Settings → Auto Cookie Refresh to have CookieRefreshService validate cookies in the background every 6 hours. Any account whose cookie exceeds CookieRefreshDays days of age (or whose validity is unknown) is re-validated against the Roblox API. If the cookie is still valid, LastCookieSet is updated and a log entry is recorded. If it has expired, CookieValid is set to false and a CookieExpired webhook notification is sent (if configured).

Status indicators

Two fields on Account surface cookie health in the UI:
FieldTypeDescription
CookieValidbooltrue after a successful validation; false on failure or if no cookie is set. Runtime-only — not persisted.
LastHealthCheckDateTimePersisted timestamp of the last check, displayed in the account list as a relative time.

Triggering a health check

  • Manual: open the Health Check page and click Check All to run across every account in the vault.
  • Background cookie validation: the separate CookieRefreshService re-validates cookies automatically every 6 hours when Auto Cookie Refresh is enabled. This is not the same as a full health check — it does not fetch Robux balances or update LastHealthCheck.

Build docs developers (and LLMs) love