API

Theater API

The Theater API provides access to CDA's mission library, domain definitions, campaign structures, and war templates.

Base URL: https://nprzmfiqtqvoljvcvsyi.supabase.co

Missions:

GET /rest/v1/theater_missions?select=*&is_active=eq.true&order=sort_order Lists all active missions.

RPC: search_theater_missions Full-text search across missions with filtering.

Request body: { "search_query": "incident response", "domain_filter": "TID", "campaign_filter": "C-DRILL", "limit_count": 20 }

GET /rest/v1/theater_missions?code=eq.{code} Retrieves a single mission by its unique code.

Mission fields: id, code, name, description, objective, domain_code, campaign_code, deliverables, prerequisites, estimated_hours, minimum_tier, minimum_merc_level, recommended_merc_level, required_domain_certs, mitre_attack_ids, nist_csf_functions, cis_controls, sort_order, is_active, classification.

Domains:

GET /rest/v1/theater_domains?select=*&order=sort_order Lists all 6 PDM domains.

Fields: id, code, name, metaphor, description, color, methodology_code, methodology_name, methodology_tagline.

Campaigns:

GET /rest/v1/theater_campaigns?select=*&order=sort_order Lists all campaign tiers.

Fields: id, code, name, description, tier_label, sort_order, typical_duration_weeks.

War Catalog:

GET /rest/v1/war_catalog?select=*&status=eq.active&order=name Lists available war templates. Each template defines a preconfigured set of missions for a specific engagement type.

Fields: id, code, name, description, category, status, subscription_tier, domain_focus, campaign_phases, estimated_duration, mission_count.

Mission Assignments (requires authentication):

GET /rest/v1/theater_mission_assignments?select=*,theater_missions(code,name,domain_code)&org_id=eq.{org_id} Lists mission assignments for an organization with joined mission data.

Assignment fields: id, war_id, mission_id, assigned_to, org_id, status, priority, started_at, completed_at, estimated_hours, actual_hours, deliverables_url, notes, points_earned, complexity_modifier.

Compliance mapping:

GET /rest/v1/mission_compliance_mappings?mission_code=eq.{code}&select=*,compliance_controls(control_id,title,framework_id) Returns compliance framework mappings for a specific mission. This enables you to see which regulatory controls a mission addresses.

Cross-reference fields: mission_code, control_id, mapping_strength (primary/partial/supporting).