action and a per-content-part breakdown in input_results. Starfort returns the Guardian’s response body verbatim — no wrapper, no field reshaping.
The action model
The middle state depends on the policy type:- PII policies return
PASS/MASK/BLOCK. - Topic policies return
PASS/CHECK/BLOCK, whereCHECKflags acontroversialtopic for review.
CHECK directly — unlike the Desktop Agent and Proxy Server, which enforce CHECK as PASS. The root action is the highest severity across everything detected: BLOCK > MASK > CHECK > PASS. See Actions.
Top-level
Each
input_results[] entry:
MASK example (PII)
[<MASK_WORD>_<n>], numbered per occurrence ([PHONE_NUMBER_1], [PHONE_NUMBER_2], …).
BLOCK example (Topic)
detected_items — PII vs. Topic
The fields differ by policy type:
Read the top-level
action first. On MASK, send processed_content onward instead of the original. On BLOCK, do not call your model. See Actions.PASS always means “analyzed, nothing detected”
A PASS with empty results is never ambiguous: it means the Guardian completed analysis and found nothing — not that it failed to analyze. A request the Guardian cannot analyze returns an HTTP error instead of a degraded 200 (Guardian fail-closed), so a failure can never be mistaken for a clean result. See Errors & states.