{"openapi":"3.1.0","info":{"title":"PlatPhorm News Root API","version":"0.0.4","description":"Public root API for source-attributed story aggregation, network graph discovery, trusted domains, route compliance, feeds, sitemaps, llms files, and protected root operations.","contact":{"name":"Michael Barbine","email":"Michael@Barbineworldwide.com","url":"https://platphormnews.com"}},"servers":[{"url":"https://platphormnews.com","description":"Canonical root"}],"tags":[{"name":"Stories","description":"Public story aggregation from attributed sources"},{"name":"Network","description":"Root network graph and directory"},{"name":"Discovery","description":"Discovery files and compliance"},{"name":"Protected","description":"Protected actions require PLATPHORM_API_KEY via Authorization: Bearer or X-PlatPhorm-API-Key."},{"name":"MCP","description":"Root MCP JSON-RPC endpoint"}],"paths":{"/api/health":{"get":{"tags":["Discovery"],"responses":{"200":{"description":"Health summary","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/api/v1/health":{"get":{"tags":["Discovery"],"responses":{"200":{"description":"Versioned health summary","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/api/network/graph":{"get":{"tags":["Network"],"responses":{"200":{"description":"Canonical network graph","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/api/v1/network/graph":{"get":{"tags":["Network"],"responses":{"200":{"description":"Versioned network graph","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/api/v1/network/sites":{"get":{"tags":["Network"],"responses":{"200":{"description":"Network site directory","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/api/v1/network/sites/{slug}":{"get":{"tags":["Network"],"parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Single network site","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/api/v1/network/trusted-domains":{"get":{"tags":["Network"],"responses":{"200":{"description":"Trusted domain directory","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/api/v1/network/verticals":{"get":{"tags":["Network"],"responses":{"200":{"description":"Network vertical counts","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/api/v1/network/route-compliance":{"get":{"tags":["Discovery"],"responses":{"200":{"description":"Route compliance summary","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/api/v1/network/discovery-compliance":{"get":{"tags":["Discovery"],"responses":{"200":{"description":"Discovery compliance summary","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/api/v1/network/mcp-enabled":{"get":{"tags":["Network"],"responses":{"200":{"description":"MCP-enabled sites","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/api/v1/network/rss-enabled":{"get":{"tags":["Network"],"responses":{"200":{"description":"RSS-enabled sites","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/api/v1/stories":{"get":{"tags":["Stories"],"responses":{"200":{"description":"Story aggregation snapshot","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/api/v1/stories/top":{"get":{"tags":["Stories"],"responses":{"200":{"description":"Top stories","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/api/v1/stories/featured":{"get":{"tags":["Stories"],"responses":{"200":{"description":"Featured story","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/api/v1/stories/{id}":{"get":{"tags":["Stories"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Story detail","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/api/v1/categories":{"get":{"tags":["Stories"],"responses":{"200":{"description":"Story categories","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/api/v1/search":{"get":{"tags":["Stories"],"parameters":[{"name":"q","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"Story search results","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/api/v1/sources":{"get":{"tags":["Stories"],"responses":{"200":{"description":"Story sources","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/api/v1/feeds":{"get":{"tags":["Discovery"],"responses":{"200":{"description":"Feed directory","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/api/v1/sitemaps":{"get":{"tags":["Discovery"],"responses":{"200":{"description":"Sitemap directory","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/api/v1/sitemaps/index":{"get":{"tags":["Discovery"],"responses":{"200":{"description":"Sitemap index metadata","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/api/v1/sitemaps/urls":{"get":{"tags":["Discovery"],"responses":{"200":{"description":"Public sitemap URLs","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/api/v1/sitemaps/coverage":{"get":{"tags":["Discovery"],"responses":{"200":{"description":"Sitemap coverage","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/api/mcp":{"get":{"tags":["MCP"],"responses":{"200":{"description":"MCP manifest","content":{"application/json":{"schema":{"type":"object"}}}}}},"post":{"tags":["MCP"],"responses":{"200":{"description":"MCP JSON-RPC response","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/rss.xml":{"get":{"tags":["Discovery"],"responses":{"200":{"description":"RSS XML"}}}},"/feed.xml":{"get":{"tags":["Discovery"],"responses":{"200":{"description":"RSS XML alias"}}}},"/atom.xml":{"get":{"tags":["Discovery"],"responses":{"200":{"description":"Atom XML"}}}},"/sitemap.xml":{"get":{"tags":["Discovery"],"responses":{"200":{"description":"Sitemap XML"}}}},"/llms.txt":{"get":{"tags":["Discovery"],"responses":{"200":{"description":"LLM text context"}}}},"/llms-full.txt":{"get":{"tags":["Discovery"],"responses":{"200":{"description":"Full LLM text context"}}}},"/llms-index.json":{"get":{"tags":["Discovery"],"responses":{"200":{"description":"LLM JSON index","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/api/v1/network/graph/sync":{"post":{"tags":["Protected"],"security":[{"PlatPhormBearer":[]},{"PlatPhormApiKey":[]}],"responses":{"200":{"description":"Protected graph sync result","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/api/v1/sources/sync":{"post":{"tags":["Protected"],"security":[{"PlatPhormBearer":[]},{"PlatPhormApiKey":[]}],"responses":{"200":{"description":"Protected source sync result","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/api/v1/feeds/sync":{"post":{"tags":["Protected"],"security":[{"PlatPhormBearer":[]},{"PlatPhormApiKey":[]}],"responses":{"200":{"description":"Protected feed sync result","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/api/v1/sitemaps/sync":{"post":{"tags":["Protected"],"security":[{"PlatPhormBearer":[]},{"PlatPhormApiKey":[]}],"responses":{"200":{"description":"Protected sitemap sync result","content":{"application/json":{"schema":{"type":"object"}}}}}}}},"components":{"securitySchemes":{"PlatPhormBearer":{"type":"http","scheme":"bearer","description":"Authorization: Bearer $PLATPHORM_API_KEY"},"PlatPhormApiKey":{"type":"apiKey","in":"header","name":"X-PlatPhorm-API-Key","description":"X-PlatPhorm-API-Key: $PLATPHORM_API_KEY"}}}}