{
  "repo": "tidbcloud/infra-provider",
  "binary": "regional-server",
  "binary_path": "regional-server/main.go",
  "surface_kind": "mixed_service",
  "type": "mixed_service",
  "extensions": {},
  "services": [
    {
      "name": "MetricsService",
      "type": "http",
      "methods": [
        {
          "name": "metrics",
          "name_key": "MetricsService.metrics",
          "path": "/metrics",
          "method": "GET",
          "description": "Controller-runtime metrics endpoint on metrics-bind-address."
        }
      ]
    },
    {
      "name": "ProbeService",
      "type": "http",
      "methods": [
        {
          "name": "healthz",
          "name_key": "ProbeService.healthz",
          "path": "/healthz",
          "method": "GET",
          "description": "Liveness probe exposed by the controller manager."
        },
        {
          "name": "readyz",
          "name_key": "ProbeService.readyz",
          "path": "/readyz",
          "method": "GET",
          "description": "Readiness probe exposed by the controller manager."
        }
      ]
    },
    {
      "name": "DedicatedRegionalAPI",
      "type": "http",
      "methods": [
        {
          "name": "ServiceInfo",
          "name_key": "DedicatedRegionalAPI.ServiceInfo",
          "path": "/api/dedicated/v1/",
          "method": "GET",
          "description": "Returns dedicated regional service metadata."
        },
        {
          "name": "Ping",
          "name_key": "DedicatedRegionalAPI.Ping",
          "path": "/api/dedicated/v1/ping",
          "method": "GET",
          "description": "Dedicated regional ping endpoint."
        },
        {
          "name": "VPC",
          "name_key": "DedicatedRegionalAPI.VPC",
          "path": "/api/dedicated/v1/vpcs",
          "method": "GET/POST/DELETE",
          "description": "VPC lifecycle APIs including list, create, fetch, delete, and addSecondaryCidr."
        },
        {
          "name": "Cluster",
          "name_key": "DedicatedRegionalAPI.Cluster",
          "path": "/api/dedicated/v1/clusters",
          "method": "POST/DELETE",
          "description": "Dedicated cluster lifecycle APIs plus mounted cluster proxy subroutes."
        },
        {
          "name": "PrivateLinkService",
          "name_key": "DedicatedRegionalAPI.PrivateLinkService",
          "path": "/api/dedicated/v1/clusters/:clusterId/privateLinkServices",
          "method": "GET/POST/PATCH/DELETE",
          "description": "Manages dedicated private link services for a cluster."
        },
        {
          "name": "Account",
          "name_key": "DedicatedRegionalAPI.Account",
          "path": "/api/dedicated/v1/accounts",
          "method": "GET/POST",
          "description": "Account assignment and lookup endpoints."
        },
        {
          "name": "Internet",
          "name_key": "DedicatedRegionalAPI.Internet",
          "path": "/api/dedicated/v1/internets",
          "method": "GET/POST/DELETE",
          "description": "Internet resource operations for dedicated networks."
        },
        {
          "name": "Migration",
          "name_key": "DedicatedRegionalAPI.Migration",
          "path": "/api/dedicated/v1/migration/*",
          "method": "GET/POST/PATCH/PUT",
          "description": "Dedicated regional, crossplane, and o11y migration APIs."
        },
        {
          "name": "K8sUpgrade",
          "name_key": "DedicatedRegionalAPI.K8sUpgrade",
          "path": "/api/dedicated/v1/k8sInfos|/api/dedicated/v1/upgradeOperations",
          "method": "GET/POST/PATCH/DELETE",
          "description": "Kubernetes version inspection and upgrade operation APIs."
        },
        {
          "name": "APPBox",
          "name_key": "DedicatedRegionalAPI.APPBox",
          "path": "/api/dedicated/v1/appboxes",
          "method": "GET/POST/DELETE",
          "description": "APPBox management APIs."
        },
        {
          "name": "SwaggerAndPprof",
          "name_key": "DedicatedRegionalAPI.SwaggerAndPprof",
          "path": "/swagger/*any|/debug/pprof/*",
          "method": "GET",
          "description": "Swagger UI and pprof endpoints registered on the Gin engine."
        }
      ]
    },
    {
      "name": "RegionalControllers",
      "type": "controller",
      "methods": [
        {
          "name": "ReconcileRegionalResources",
          "name_key": "RegionalControllers.ReconcileRegionalResources",
          "description": "Runs reconcilers for VPC, VPC peering, private link service, internet, appbox, o11y route, migration, GC, and upgrade operations."
        }
      ]
    }
  ]
}
