Apply a rule to a policy
Adds a rule to the policy and returns the created resource. The category must be one of the OCSS rule categories.
category is one of the 123 OCSS rule categories — see the Rule Categories reference. A 201 returns the stored PolicyRule record (id, category, enabled, config, …); it confirms the write, not that the rule is enforced at the platform. (The OCSS signed write receipt — an Ed25519-signed envelope verifiable against the Trust List — is a separate surface; see OCSS signed rule writes.)
https://phosra-api-sandbox-production.up.railway.app/api/v1 (seeded demo family + phosra_test_ keys), not the production base shown in the playground. The @phosra/cli phosra init flow wires this URL for you.Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
Body
One of the 123 OCSS rule categories (accepted and signed by the census; capability varies — see the Rule Categories reference).
rating_age_gate, age_gate, adult_site_av_required, app_store_age_attestation, os_age_signal_ingest, age_signal_broadcast, hard_id_verification_escalation, social_media_min_age, ai_chatbot_age_assertion, teen_minimum_age_16_gate, content_rating, violence_threshold, sexual_content_threshold, profanity_threshold, commercial_pressure_threshold, substance_content_threshold, recognized_seal_allowlist, social_chat_control, web_filter_level, privacy_rating_tier_gate, privacy_rating_score_threshold, privacy_rating_dimension_gate, privacy_seal_required, unrated_privacy_default, ai_chatbot_tier_gate, ai_product_classification_gate, ai_safety_rating_threshold, ai_data_responsibility_rating_threshold, ai_transparency_rating_threshold, ai_minor_interaction, streaming_age_rating_enforce, ugc_world_age_gate, time_daily_limit, time_scheduled_hours, time_per_app_limit, time_downtime, phone_free_school_hours, purchase_approval, purchase_spending_cap, social_contacts, social_multiplayer, stranger_outreach_friction, privacy_account_creation, parental_consent_gate, notification_curfew, dumbphone_migration_mode, content_block_title, content_allow_title, content_allowlist_mode, content_descriptor_block, firearm_content_block, not_for_minors_block, purchase_block_iap, stranger_dm_block, web_safesearch, web_category_block, web_custom_allowlist, web_custom_blocklist, dm_restriction, ai_no_simulated_companionship, ai_no_unsupervised_therapy, ai_no_self_harm_promotion, ai_no_csam_generation, ai_no_personhood_deception, ai_companion_block, library_filter_compliance, gambling_mechanics_block, addictive_pattern_block, app_install_block, voice_chat_minor_limit, educational_credit, monitoring_activity, monitoring_alerts, social_account_content_monitoring, message_content_monitoring, image_content_monitoring, search_query_monitoring, flagged_content_digest, usage_timer_notification, parental_event_notification, screen_time_report, social_media_warning_label_render, digital_literacy_curriculum_link, school_alert_routing, privacy_location, privacy_profile_visibility, privacy_data_sharing, data_minimization_enforce, third_party_tracker_block, geolocation_precision_cap, targeted_ad_block, data_deletion_request, geolocation_opt_in, ai_training_data_opt_out, image_rights_minor, student_privacy_school_mode, commercial_data_ban, prosocial_weight, role_model_weight, representation_weight, dpia_request_generator, algo_feed_control, addictive_design_control, infinite_scroll_block, autoplay_disable, ai_no_engagement_dark_patterns, ai_synthetic_media_disclosure, algorithmic_audit, cipa_filter_attestation, minor_data_sale_audit_log, parental_attestation_cert, ai_toy_safety_cert, csam_reporting, esafety_commission_reporting, platform_liability_evidence_capture, age_appropriate_profile_mode, ncii_takedown, ephemeral_message_disable, dm_feature_disable, named_contact_block, crisis_resource_surface, presence_status_hide, harm_report_intake Category-specific configuration JSON
Response
Rule created
Unique identifier for this resource.
Identifier of the policy this resource belongs to.
One of the 123 OCSS rule categories (accepted and signed by the census; capability varies — see the Rule Categories reference).
rating_age_gate, age_gate, adult_site_av_required, app_store_age_attestation, os_age_signal_ingest, age_signal_broadcast, hard_id_verification_escalation, social_media_min_age, ai_chatbot_age_assertion, teen_minimum_age_16_gate, content_rating, violence_threshold, sexual_content_threshold, profanity_threshold, commercial_pressure_threshold, substance_content_threshold, recognized_seal_allowlist, social_chat_control, web_filter_level, privacy_rating_tier_gate, privacy_rating_score_threshold, privacy_rating_dimension_gate, privacy_seal_required, unrated_privacy_default, ai_chatbot_tier_gate, ai_product_classification_gate, ai_safety_rating_threshold, ai_data_responsibility_rating_threshold, ai_transparency_rating_threshold, ai_minor_interaction, streaming_age_rating_enforce, ugc_world_age_gate, time_daily_limit, time_scheduled_hours, time_per_app_limit, time_downtime, phone_free_school_hours, purchase_approval, purchase_spending_cap, social_contacts, social_multiplayer, stranger_outreach_friction, privacy_account_creation, parental_consent_gate, notification_curfew, dumbphone_migration_mode, content_block_title, content_allow_title, content_allowlist_mode, content_descriptor_block, firearm_content_block, not_for_minors_block, purchase_block_iap, stranger_dm_block, web_safesearch, web_category_block, web_custom_allowlist, web_custom_blocklist, dm_restriction, ai_no_simulated_companionship, ai_no_unsupervised_therapy, ai_no_self_harm_promotion, ai_no_csam_generation, ai_no_personhood_deception, ai_companion_block, library_filter_compliance, gambling_mechanics_block, addictive_pattern_block, app_install_block, voice_chat_minor_limit, educational_credit, monitoring_activity, monitoring_alerts, social_account_content_monitoring, message_content_monitoring, image_content_monitoring, search_query_monitoring, flagged_content_digest, usage_timer_notification, parental_event_notification, screen_time_report, social_media_warning_label_render, digital_literacy_curriculum_link, school_alert_routing, privacy_location, privacy_profile_visibility, privacy_data_sharing, data_minimization_enforce, third_party_tracker_block, geolocation_precision_cap, targeted_ad_block, data_deletion_request, geolocation_opt_in, ai_training_data_opt_out, image_rights_minor, student_privacy_school_mode, commercial_data_ban, prosocial_weight, role_model_weight, representation_weight, dpia_request_generator, algo_feed_control, addictive_design_control, infinite_scroll_block, autoplay_disable, ai_no_engagement_dark_patterns, ai_synthetic_media_disclosure, algorithmic_audit, cipa_filter_attestation, minor_data_sale_audit_log, parental_attestation_cert, ai_toy_safety_cert, csam_reporting, esafety_commission_reporting, platform_liability_evidence_capture, age_appropriate_profile_mode, ncii_takedown, ephemeral_message_disable, dm_feature_disable, named_contact_block, crisis_resource_surface, presence_status_hide, harm_report_intake Whether this item is currently active.
Category-specific configuration object for this rule.
RFC 3339 timestamp of when the resource was created.