> Fetch clean Markdown by appending `.md` to any page URL under https://signalwire.com/docs or requesting it with the HTTP header `Accept: text/markdown`. The root index at https://signalwire.com/docs/llms.txt lists the available documentation indexes. # CredentialNoRefreshHandlerWarning > Emitted when a credential expires but no refresh() handler is supplied. Emitted when a credential has an `expiry_at` but the provider supplies no [`refresh()`](/docs/browser-sdk/v4/reference/interfaces/credential-provider) handler. The session will terminate at expiry with no fallback. Implementors who want long-lived sessions must provide a `refresh()` handler or mint tokens with the `sat:refresh` scope (Client Bound SAT path). Subscribe via [`client.warnings$`](/docs/browser-sdk/v4/reference/signalwire/warnings\$). ## **Properties** **`code`** `"credential_no_refresh_handler"` — required Discriminant identifying this warning. --- **`source`** `"CredentialProvider"` — required The SDK subsystem that emitted the warning. --- **`message`** `string` — required Human-readable description of the warning. --- **`expiresAt`** `number` — required Token expiry timestamp (epoch milliseconds). --- > Emitted when a credential expires but no refresh() handler is supplied.