Approach 1: CRD API
The CRD API lists every custom resource definition installed in the cluster — names, groups, versions, and scope:Approach 2: Kubernetes OpenAPI Spec
Since Kubernetes 1.15+, CRDs with structural schemas are included in the cluster’s OpenAPI spec. The agent can fetch the full API surface — including custom resources — as proper OpenAPI paths:GET /apis/cilium.io/v2/namespaces/{ns}/ciliumnetworkpolicies) with full request/response schemas — the same format as the CNAP OpenAPI spec it already knows how to query with search.
Best for: “How do I call this custom API?” — full REST paths, request bodies, and response schemas.