API

Wiki API

The Wiki API provides access to CDA's knowledge base of 968+ cybersecurity articles organized by PDM domain and category.

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

Endpoints:

POST /functions/v1/wiki-search Full-text search across all published wiki articles.

Request body: { "query": "zero trust architecture", "limit": 10, "offset": 0, "category_id": null, "domain": null, "difficulty": null }

Response (200 OK): { "results": [ { "id": "uuid", "title": "Zero Trust Architecture Fundamentals", "slug": "zero-trust-architecture-fundamentals", "summary": "An overview of zero trust principles...", "category": "Concepts", "pdm_domains": ["IAT"], "difficulty": "intermediate", "word_count": 2400, "relevance_score": 0.95 } ], "total_count": 42, "query": "zero trust architecture" }

GET /rest/v1/wiki_articles?slug=eq.{slug}&status=eq.published Retrieves a single article by slug.

Response fields: id, article_id, title, slug, content, summary, category_id, pdm_domains, difficulty, priority, word_count, campaign_tiers, institute_levels, related_articles, related_missions, sources, views_count, published_at.

GET /rest/v1/wiki_categories?select=*&order=sort_order Lists all wiki categories with article counts.

Response fields: id, name, slug, description, icon, pdm_domains, sort_order, article_count.

Filtering articles by domain: GET /rest/v1/wiki_articles?pdm_domains=cs.{DPS}&status=eq.published&order=priority.desc

Filtering by category: GET /rest/v1/wiki_articles?category_id=eq.{uuid}&status=eq.published

Filtering by difficulty: GET /rest/v1/wiki_articles?difficulty=eq.beginner&status=eq.published

Related content: Each article includes related_articles (array of article_id strings) and related_missions (array of mission codes). Use these to build navigation between wiki content and theater missions.

Category UUIDs: - 12b7f7a1: Concepts - 89a9593a: Frameworks - 7fc191db: Tools - af53a03e: Threats - b8c372ab: Regulations - 1a8424d2: Methodologies - 361a1e8f: CDA Proprietary - 381c9fe4: Career and Industry - 3c955154: History

Pagination: Use standard Supabase range headers or limit/offset query parameters. The wiki-search edge function accepts limit and offset in the request body.