{
  "repo": "tidbcloud/infra-provider",
  "binary": "agent",
  "binary_path": "cluster-agent/cmd/agent/main.go",
  "surface_kind": "mixed_service",
  "type": "mixed_service",
  "extensions": {},
  "services": [
    {
      "name": "ClusterAgentGateway",
      "type": "http",
      "methods": [
        {
          "name": "GatewayRoutes",
          "name_key": "ClusterAgentGateway.GatewayRoutes",
          "path": "/api/v1/*|/cluster-agent/:tcns/api/v1/*",
          "method": "ANY",
          "description": "HTTP gateway for cluster-agent gRPC services."
        },
        {
          "name": "healthz",
          "name_key": "ClusterAgentGateway.healthz",
          "path": "/healthz",
          "method": "ANY",
          "description": "gRPC health endpoint published through grpc-gateway."
        },
        {
          "name": "ProxyEntry",
          "name_key": "ClusterAgentGateway.ProxyEntry",
          "path": "proxy.ProxyBasePath/*",
          "method": "ANY",
          "description": "Proxy entry route mounted on the same Gin server."
        }
      ]
    },
    {
      "name": "ClusterAgentGRPC",
      "type": "grpc",
      "methods": [
        {
          "name": "ClusterAgentService",
          "name_key": "ClusterAgentGRPC.ClusterAgentService",
          "description": "Node and cluster operational APIs."
        },
        {
          "name": "CertService",
          "name_key": "ClusterAgentGRPC.CertService",
          "description": "Certificate operations for data-plane resources."
        },
        {
          "name": "CdcAgentService",
          "name_key": "ClusterAgentGRPC.CdcAgentService",
          "description": "CDC-specific agent APIs."
        },
        {
          "name": "OperatorV2Service",
          "name_key": "ClusterAgentGRPC.OperatorV2Service",
          "description": "TiDB operator v2 APIs."
        },
        {
          "name": "Health",
          "name_key": "ClusterAgentGRPC.Health",
          "description": "Standard gRPC health service."
        }
      ]
    }
  ]
}
