Settings

Audience: Customer — this page documents account and project settings.

The settings page (/dashboard/settings) manages API keys, encryption, data region, setup instructions, subscription status, and GDPR data export.


URL

/dashboard/settings

Access

Available to all plans. Encryption section is hidden for Starter (feature-gated via encryption_storage).


Sections

  1. API Key
  2. Encryption Key (Pro/Enterprise)
  3. Session Recording
  4. Data Region
  5. Setup Instructions
  6. Subscription Status
  7. GDPR Data Export

API Key

Element Description
Key display Masked by default (dots), with Show/Hide toggle
Copy button Copies key to clipboard
Regenerate button Creates a new API key (with confirmation dialog)
GET  /api/v1/user/api-key      — Fetch current key
POST /api/v1/user/api-key      — Regenerate key

The API key uses the dc_ prefix and must match the key in ~/.claude/rulecatch/config.json on the developer's machine.


Encryption Key

Hidden on Starter plan. Controlled by encryption_storage feature value:

Plan encryption_storage Behavior
Starter none Section hidden
Pro session Key stored in sessionStorage (lost on tab close)
Enterprise persistent Option to save in localStorage (persists across sessions)

Key Entry

When no key is active:

  • Password input field with show/hide toggle
  • "Decrypt" button to activate the key
  • Hint: npx @rulecatch/ai-pooler config --show-key

Key Active

When a key is loaded:

  • Green status card: "Key is active — personal data is decrypted"
  • Shows whether key clears on tab close or is saved in browser
  • "Clear Key" button (opens confirmation modal)

Persistence Toggle (Enterprise)

Checkbox: "Remember encryption key"

  • Saves key in localStorage so it persists across browser sessions
  • Warning: "Only enable this on devices you trust"

Zero-Knowledge Info Box

Blue info card explaining:

  • Key lives only on the user's machine
  • Personal data is encrypted before leaving the machine
  • Rulecatch never sees the key or unencrypted data

Session Recording

Toggle to opt in/out of anonymous usage recordings:

GET  /api/v1/user/session-replay-preference
POST /api/v1/user/session-replay-preference

Privacy info card explains:

  • Recordings capture navigation, clicks, and scrolls only
  • All personal data appears as ***** (masked via data-rc-mask attributes)
  • Encryption key is never visible

Data Region

Two selectable cards:

Region Location Domain
United States Virginia (us-east-1) api.rulecatch.ai
European Union Frankfurt (eu-central-1) api-eu.rulecatch.ai
POST /api/v1/user/region

Body: { "region": "us" | "eu" }

Changing region triggers a confirmation modal:

  • "Existing data will remain in your current region"
  • "New data will be stored in the new region"

A green info card explains Zero-Knowledge Privacy — encrypted data storage in the selected region.


Setup Instructions

Two-step setup guide:

Step 1 — Paste into Claude Code

Pre-formatted prompt that includes the user's API key and region:

Install the Rulecatch AI Pooler. Run: npx @rulecatch/ai-pooler init --api-key=dc_... --region=us

Copy button copies the complete prompt.

Step 2 — Restart Claude Code

Instructions to type /exit and start a new session.

Advanced Setup (Collapsible)

  • Custom encryption password command
  • Key retrieval command (config --show-key)
  • Config file location (~/.claude/rulecatch/config.json)
  • Full config JSON example

Subscription Status

Summary card with three metrics:

Metric Description
Plan Current plan name
Status trial, active, expired, etc.
Seats Number of seats

Trial warning banner shows days remaining and expiration date.

"Manage Billing" button links to /dashboard/billing.


GDPR Data Export

POST /api/v1/user/data-export

Requests a full data export including:

  • Profile data
  • Sessions and events
  • Violations
  • Alerts and rules

A download link is sent to the user's email (expires after 24 hours).

Status feedback:

  • Loading state with spinner
  • Success message: "Check your email for the download link"
  • Error handling with retry option

See Also