**Streaming responses**: Call `protect()` before starting the stream. If denied
return the error before opening the stream — don't start streaming and then abort.
Explore
127,184 skills indexed with the new KISS metadata standard.
return the error before opening the stream — don't start streaming and then abort.
promote to `LIVE`.
`res.status(429).json(...)` for Express).
filter by conclusion to see blocks
// injection detection
{ status: 403 });
decision.reason.message);
// PII scanning
// tokens to deduct for rate limiting
{
consider adding Arcjet advanced signals for client-side bot detection that catches sophisticated headless browsers. See https://docs.arcjet.com/bot-protection/advanced-signals for setup.
deduct 1 token per message
defaults to IP-based.
directly linking rate limiting to cost. It also allows short bursts while enforcing an average rate
SensitiveInfoType.CREDIT_CARD_NUMBER
PII leakage
set one up first with `shield()` as the base rule. The user will need to register for an Arcjet account at https://app.arcjet.com then use the `ARCJET_KEY` in their environment variables.
role-play escapes
rule types
PII blocking
block PII and sensitive info from leaking in responses
one device type at a time
---
FAS