draft, active, or paused) and a priority number for ordering when multiple policies exist.
A rule belongs to a policy and controls one of 123 rule categories — the closed OCSS v4 vocabulary (internal/domain/models.go, canonical registry at registry/ocss-rules.json). Each rule has:
- category — which of the 123 categories it controls (e.g.,
time_daily_limit,content_rating) - enabled — whether this rule is active
- config — category-specific configuration JSON (e.g.,
{"max_ratings":{"mpaa":"PG-13"}}for content rating)
Quick setup
The fastest path:POST /api/v1/setup/quick creates a family, child, and active policy in one call. Pass child_name, birth_date, and strictness (light, recommended, strict). The response includes max_ratings, rule_summary, and the full rules[] array.
Bulk upsert rules
PUT /api/v1/policies/{policyId}/rules/bulk creates or updates multiple rules in one call. The developer surface is identical: PUT /api/v1/developer/policies/{policyId}/rules/bulk.
Request body:
[]PolicyRule — the full updated rule set for the policy.
Config shapes for common categories
Rule categories
The 123 closed OCSS v4 categories span:- Content —
content_rating,content_block_title,violence_threshold,firearm_content_block,sexual_content_threshold, and 10 more - Time —
time_daily_limit,time_scheduled_hours,time_per_app_limit,time_downtime,phone_free_school_hours - Purchase —
purchase_approval,purchase_spending_cap,purchase_block_iap - Social —
social_contacts,social_chat_control,social_multiplayer,stranger_dm_block,stranger_outreach_friction - Web —
web_safesearch,web_category_block,web_custom_allowlist,web_custom_blocklist,web_filter_level - Privacy —
privacy_location,privacy_profile_visibility,privacy_data_sharing,data_minimization_enforce,third_party_tracker_block, and more - Monitoring —
monitoring_activity,monitoring_alerts, content-monitoring categories - Algorithmic Safety —
algo_feed_control,addictive_design_control,infinite_scroll_block,autoplay_disable, and more - Notifications —
notification_curfew,usage_timer_notification - Advertising / Data —
targeted_ad_block,dm_restriction,age_gate,data_deletion_request - Age Assurance —
app_store_age_attestation,os_age_signal_ingest,age_signal_broadcast,parental_attestation_cert - AI Safety —
ai_chatbot_tier_gate,ai_no_simulated_companionship,ai_chatbot_age_assertion, and 12 more - Compliance —
csam_reporting,social_media_min_age,student_privacy_school_mode, and more - Legislation-driven —
parental_consent_gate,parental_event_notification,screen_time_report,commercial_data_ban, and more - Integration surface —
age_appropriate_profile_mode,ncii_takedown,adult_site_av_required,app_install_block,cipa_filter_attestation, and more
GET /api/v1/standards for community packs that pre-configure curated subsets of these categories.
Related API Endpoints
- Create a policy — Create a new policy for a child
- Generate rules from age — Auto-populate all 123 rule categories
- Bulk upsert rules — Create or update multiple rules in one call
- Activate a policy — Set a policy as active for enforcement