openapi: 3.1.0
info:
  title: PlatPhorm HOPE 26 API
  version: 0.6.3
  description: HOPE 26 public talk surface for PlatPhormNews, exposing the conference presentation, machine-readable talk metadata, public receipts, and standard discovery routes.
servers:
  - url: https://hope.platphormnews.com
paths:
  /api/health:
    get:
      summary: Read service health
      responses:
        '200': { description: Standard health envelope }
  /api/live/status:
    get:
      summary: Read the public HOPE production receipt
      description: Public-safe status for the HOPE surface, deployment metadata, media availability, network graph, analytics configuration, tracing policy, and visible receipt log.
      responses:
        '200': { description: Public HOPE production receipt }
  /api/talk/hope:
    get:
      summary: Read the conference talk metadata and trace boundary
      responses:
        '200': { description: Registered HOPE talk metadata }
  /api/slides:
    get:
      summary: Read the HOPE conference talk section registry
      responses:
        '200': { description: Registered talk sections }
  /api/mcp:
    get:
      summary: Read MCP metadata
      responses:
        '200': { description: MCP metadata }
    post:
      summary: Invoke the read-only JSON-RPC 2.0 MCP server
      description: Current MCP tools do not create traces. A future protected slide-update tool is the only operation allowed to create edit trace evidence.
      responses:
        '200': { description: JSON-RPC response }
  /api/network/register:
    post:
      summary: Register the HOPE 26 talk surface with the network graph
      security:
        - PlatPhormBearer: []
        - PlatPhormApiKey: []
      responses:
        '200': { description: Registration result }
        '401': { description: PLATPHORM_API_KEY required }
components:
  securitySchemes:
    PlatPhormBearer:
      type: http
      scheme: bearer
      description: 'Use Authorization: Bearer $PLATPHORM_API_KEY for protected actions.'
    PlatPhormApiKey:
      type: apiKey
      in: header
      name: X-PlatPhorm-API-Key
      description: 'Use X-PlatPhorm-API-Key: $PLATPHORM_API_KEY for protected actions.'
