# YAML-compatible JSON output for Phase 1
{
  "openapi": "3.1.0",
  "info": {
    "title": "Process API",
    "version": "1.0.0",
    "description": "Public-safe Phase 1 API for doflo / Process."
  },
  "servers": [
    {
      "url": "https://process.platphormnews.com"
    }
  ],
  "components": {
    "securitySchemes": {
      "PlatPhormApiKey": {
        "type": "apiKey",
        "in": "header",
        "name": "X-PlatPhorm-API-Key",
        "description": "Future protected-action auth via PLATPHORM_API_KEY when enforcement is enabled."
      },
      "PlatPhormBearer": {
        "type": "http",
        "scheme": "bearer",
        "bearerFormat": "PLATPHORM_API_KEY"
      }
    }
  },
  "paths": {
    "/api/health": {
      "get": {
        "summary": "Health",
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/health": {
      "get": {
        "summary": "Versioned health",
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/process/generate": {
      "post": {
        "summary": "Generate process draft",
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/process/score": {
      "post": {
        "summary": "Score process draft",
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/process/simulate": {
      "post": {
        "summary": "Simulate process draft",
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/process/export": {
      "post": {
        "summary": "Export process draft",
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/process/templates": {
      "get": {
        "summary": "List templates",
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/process/templates/{slug}": {
      "get": {
        "summary": "Get template",
        "responses": {
          "200": {
            "description": "OK"
          },
          "404": {
            "description": "Not found"
          }
        }
      }
    },
    "/api/v1/integrations": {
      "get": {
        "summary": "List integrations",
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/integrations/{slug}": {
      "get": {
        "summary": "Get integration",
        "responses": {
          "200": {
            "description": "OK"
          },
          "404": {
            "description": "Not found"
          }
        }
      }
    },
    "/api/v1/integrations/status": {
      "get": {
        "summary": "Integration status summary",
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/mcp": {
      "get": {
        "summary": "MCP introspection",
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "post": {
        "summary": "MCP JSON-RPC",
        "security": [
          {
            "PlatPhormApiKey": []
          },
          {
            "PlatPhormBearer": []
          }
        ],
        "responses": {
          "200": {
            "description": "JSON-RPC response"
          },
          "401": {
            "description": "Unauthorized when enforced"
          }
        }
      }
    }
  }
}