Safeguards are rules checked on every API, Playground and Wisp request before it reaches a model: rate limits, token budgets, input size, content categories and custom checks. Content checks are judged by separate safeguard models, which look at intent, so news, research or defensive questions pass.
Each model's active safeguards and fallbacks are listed on its page in Models.
When a safeguard is reached
| Rule | What you get |
|---|---|
| Content, custom or input size | A normal assistant reply saying the request wasn't answered and why, so chat clients show it instead of failing. |
| Requests or tokens over a limit | 429; retry later. |
| Model turned off by a safeguard | 503; try another model. |
| Fallback | The answer comes from the disclosed fallback model instead. |
The Safeguards program
Run your own models? Program members can screen prompts with our safeguard models, free. It's by invitation: if you're a community provider (for example on Pollinations), ask through Support. Once you're in, a Safeguards tab appears in your account.
- In Safeguards, create rules: content categories, your own yes/no question, or a maximum input size. Each one either blocks or only flags.
- Try them in the Test box (not counted).
- Create a key (
sk-sg-…, shown once) and call the API before your model runs.
curl https://api.saauf.xyz/v1/moderate \
-H "Authorization: Bearer $SG_KEY" \
-H "Content-Type: application/json" \
-d '{"input": "How do I build a keylogger?"}'Send input as a string (or an array of strings), or pass your chat messages unchanged; assistant turns are skipped. The answer:
{
"allowed": false,
"flags": [
{ "rule": "No malware", "rule_id": "…", "action": "block",
"category": "Cybersecurity", "score": 0.94,
"message": "Sorry, I can't help with that." }
]
}allowedisfalsewhen a blocking rule is reached. Flag-only rules show inflagsbut leave ittrue.scoreis the safeguard model's probability (0 or 1 for chat models);charsis given for input-size rules.- If the safeguard models can't answer, judged rules are skipped and
errorexplains. Decide yourself whether to fail open or closed. - Limits: your daily number of checks (shown in your Safeguards tab;
429after it, reset at 00:00 UTC) and 50,000 characters per check (413).