{
  "openapi": "3.0.3",
  "info": {
    "title": "Neytom Public API",
    "version": "1.0.0",
    "description": "Bearer token (nt_…) or session+CSRF. Create keys at /integrations.php with read or read write scopes."
  },
  "servers": [{"url": "https://neytom.com"}],
  "components": {
    "securitySchemes": {
      "bearerAuth": {"type": "http", "scheme": "bearer", "bearerFormat": "nt_"}
    }
  },
  "security": [{"bearerAuth": []}],
  "paths": {
    "/api/instances.php": {
      "get": {
        "summary": "List instances",
        "responses": {"200": {"description": "Instance list"}}
      }
    },
    "/actions/deploy_v1.php": {
      "post": {
        "summary": "Enqueue deploy",
        "description": "Requires write scope. Form fields: domain, plan, stack, is_subdomain.",
        "responses": {"202": {"description": "Queued"}}
      }
    },
    "/api/delete_instance.php": {
      "post": {
        "summary": "Destroy instance",
        "description": "Requires write scope. Form fields: domain, confirm (must match domain).",
        "responses": {"200": {"description": "Destroy queued"}}
      }
    },
    "/api/deploy_status.php": {
      "get": {
        "summary": "Deploy status",
        "parameters": [
          {"name": "vmid", "in": "query", "schema": {"type": "integer"}},
          {"name": "domain", "in": "query", "schema": {"type": "string"}}
        ],
        "responses": {"200": {"description": "Status"}}
      }
    }
  }
}
