Skip to content

MngResetHash

Regenerates ConfigRecord.runtime_hash, the public cache-version marker used by terminal and affiliate cabinet CSS/JavaScript resources. The command does not reset customer recovery tokens, JWT secrets or the separate licence-related BrandRecord.hash.

Access

Allowed session types: SESSION_ADMIN, SESSION_CRM_ADMIN. The session must resolve to an existing enabled staff manager with super_admin = 1. A regular Admin or CRM Admin is not sufficient. SuperAdmin is checked inside the handler. The command uses audit logging.

Request

Public manager TCP API command; no REST route. No data parameters are required.

{
  "command":"MngResetHash",
  "extID":"1",
  "data":{}
}

Response

Successful handler status: 200. Response payload:

{
  "success":true,
  "runtime_hash":"e91e422e0f6542b4a8030f7cdb21ae45"
}

runtime_hash is a string containing 32 hexadecimal characters, generated from 16 cryptographically random bytes. Regeneration does not accept a caller-supplied value.

Errors

Handler status Error Meaning
403 NOT_ENOUGH_RIGHTS Missing, disabled or non-SuperAdmin manager context
500 HASH_GENERATION_FAILED Random generation failed; the previous value remains unchanged

Requests rejected by the router's session-type gate may use its standard access error before reaching the handler.

Lifecycle and HTML

main.hash in config.toml is deprecated and ignored. runtime_hash is generated automatically at process startup and is not persisted in TOML or SQLite. Do not configure it manually. A process restart creates a new value.

Following regeneration, newly rendered terminal and affiliate HTML use the new hash in resource URL parameter h and JavaScript variable __runtime_hash. Already open pages are not automatically reloaded; cached HTML must be refreshed to obtain the new resource URLs. terminal __hash still contains the separate brand licence hash. The runtime hash is global to one server process, not per brand or shared across nodes.