Knotbind documentationOpen dashboard
Content Guardrails

Redact four personal-data patterns in JSON chat responses.

Content Guardrails replaces four personal-data patterns in JSON chat message and reasoning text. It does not scan requests, streamed responses, or secrets. Enable it from Gateway modules for $19/month.

What it filters

When the module is enabled, Knotbind rewrites the message text and the model's reasoning text in a successful JSON chat completion before it reaches the caller:

  • Email addresses, replaced with [EMAIL]
  • US phone numbers, replaced with [PHONE]
  • US Social Security numbers in ###-##-#### form, replaced with [SSN]
  • 16-digit payment card numbers, replaced with [CARD]

Requests are not scanned. Streamed responses pass through unchanged. Redactions are not written to the request log. Postal codes, other national identifiers, API keys and tokens are not detected.

Response shape

Redaction happens in-memory on the choices[].message.content and choices[].message.reasoning_content fields of a JSON chat completion. The response structure, token count stream and X-Redacted response header are unchanged.

{}
{
  "id": "chatcmpl-123",
  "choices": [{
    "message": {
      "role": "assistant",
      "content": "Call [EMAIL] or ship to 123 Main St."
    }
  }]
}

How to enable

Go to Gateway modules, open Content Guardrails, and choose Enable. It applies to JSON chat responses for this workspace immediately. The Gateway page shows it as running.

Status in the dashboard

Gateway → Gateway modules reports whether Content Guardrails is loaded. Per-key request counts and redaction counts remain on the Gateway page.

Limits

SettingDescription
PatternsFour fixed PII patterns: US email, US phone, US SSN, 16-digit card numbers
Response fieldsOnly <code>content</code> and <code>reasoning_content</code> in JSON chat completions
RequestsNot scanned — redaction is response-side only
StreamsNot rewritten — pass through unchanged
LogsRedactions are not written to the request log