openapi: 3.1.0 info: title: Kubernetes Services Kubernetes EndpointSlices IngressStatus API description: The Kubernetes EndpointSlices API tracks the IP addresses, ports, readiness, and topology information for Pods backing a Service. EndpointSlices replaced the older Endpoints API to improve scalability for large clusters with thousands of pods. A single Service may be backed by multiple EndpointSlices, and the EndpointSlice controller automatically manages their lifecycle in response to pod and Service changes. version: v1.32.0 contact: name: Kubernetes Community url: https://kubernetes.io/community/ termsOfService: https://www.apache.org/licenses/LICENSE-2.0 servers: - url: https://kubernetes.default.svc description: In-cluster Kubernetes API Server security: - bearerAuth: [] - clientCertificate: [] tags: - name: IngressStatus description: Status subresource for Ingress objects, reporting load balancer IP or hostname assignments from the ingress controller. paths: /apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}/status: get: operationId: getNamespacedIngressStatus summary: Kubernetes Services Get Ingress status description: Returns the status subresource for the specified Ingress, including the load balancer IP addresses or hostnames assigned by the ingress controller. tags: - IngressStatus parameters: - $ref: '#/components/parameters/NamespaceParam' - $ref: '#/components/parameters/NameParam' responses: '200': description: Ingress status content: application/json: schema: $ref: '#/components/schemas/Ingress' '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' put: operationId: replaceNamespacedIngressStatus summary: Kubernetes Services Replace Ingress status description: Replaces the status subresource of the specified Ingress. Used by ingress controllers to report assigned load balancer IPs and hostnames. tags: - IngressStatus parameters: - $ref: '#/components/parameters/NamespaceParam' - $ref: '#/components/parameters/NameParam' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Ingress' responses: '200': description: Ingress status updated content: application/json: schema: $ref: '#/components/schemas/Ingress' '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' components: responses: NotFound: description: Not found content: application/json: schema: $ref: '#/components/schemas/Status' Unauthorized: description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Status' schemas: IngressTLS: type: object description: TLS configuration for an Ingress, specifying a Secret containing the certificate and key for terminating HTTPS connections on port 443. properties: hosts: type: array description: Hosts covered by the TLS certificate. Must match hosts defined in the certificate's Subject Alternative Names. items: type: string secretName: type: string description: Name of the Secret in the same namespace containing the TLS certificate (tls.crt) and key (tls.key). ObjectMeta: type: object description: Standard Kubernetes object metadata. properties: name: type: string description: Name of the object. namespace: type: string description: Namespace of the object. uid: type: string description: Unique server-assigned identifier. resourceVersion: type: string description: Internal version for optimistic concurrency. creationTimestamp: type: string format: date-time description: Creation timestamp. labels: type: object additionalProperties: type: string description: Key-value label pairs. annotations: type: object additionalProperties: type: string description: Non-identifying metadata. IngressStatus: type: object description: Most recently observed status of an Ingress, reporting the load balancer IPs or hostnames assigned by the ingress controller. properties: loadBalancer: type: object description: LoadBalancer status for the ingress. properties: ingress: type: array description: List of load balancer ingress points. items: type: object properties: ip: type: string description: IP address assigned to this ingress point. hostname: type: string description: Hostname assigned to this ingress point. ports: type: array items: type: object properties: port: type: integer protocol: type: string error: type: string IngressSpec: type: object description: Specification of the desired behavior of an Ingress, including the routing rules, TLS configuration, default backend, and reference to the ingress controller via the IngressClass. properties: ingressClassName: type: string description: Name of the IngressClass cluster resource that selects which ingress controller handles this Ingress. defaultBackend: $ref: '#/components/schemas/IngressBackend' tls: type: array description: TLS configuration for HTTPS termination. items: $ref: '#/components/schemas/IngressTLS' rules: type: array description: List of host rules for HTTP traffic routing. If no rules match a request, the defaultBackend is used. items: $ref: '#/components/schemas/IngressRule' IngressRule: type: object description: A host-based routing rule mapping HTTP requests to backend services based on hostname and path prefix matching. properties: host: type: string description: Fully-qualified domain name to match. Wildcard prefixes like *.example.com are supported. If unspecified, all hosts match. http: type: object description: HTTP-specific routing configuration for this rule. required: - paths properties: paths: type: array description: List of path-to-backend mappings for this rule. At least one path must be specified. minItems: 1 items: $ref: '#/components/schemas/HTTPIngressPath' Status: type: object description: Error or result status returned by the API. properties: code: type: integer message: type: string reason: type: string status: type: string enum: - Success - Failure Ingress: type: object description: An Ingress manages external access to the services in a cluster, typically HTTP/HTTPS. It provides load balancing, SSL termination, and name-based virtual hosting based on routing rules. properties: apiVersion: type: string const: networking.k8s.io/v1 kind: type: string const: Ingress metadata: $ref: '#/components/schemas/ObjectMeta' spec: $ref: '#/components/schemas/IngressSpec' status: $ref: '#/components/schemas/IngressStatus' IngressBackend: type: object description: Reference to the backend service or resource that an Ingress routing rule should forward traffic to. properties: service: type: object description: Service backend reference for routing. required: - name - port properties: name: type: string description: Name of the referenced Service in the same namespace. port: type: object description: Port on the referenced Service to forward traffic to. properties: number: type: integer minimum: 1 maximum: 65535 description: Numeric port number. name: type: string description: Named port as defined in the Service spec. resource: type: object description: Reference to a custom resource backend in the same namespace. Mutually exclusive with service. properties: apiGroup: type: string description: API group of the referenced resource. kind: type: string description: Kind of the referenced resource. name: type: string description: Name of the referenced resource. HTTPIngressPath: type: object description: A mapping of an HTTP path to a backend service. Used within Ingress rules to route specific paths to different services. required: - pathType - backend properties: path: type: string description: URL path to match. Must begin with '/'. Required for Exact and Prefix pathTypes. pattern: ^/ pathType: type: string enum: - Exact - Prefix - ImplementationSpecific description: How the path is matched. Exact requires a case-sensitive exact match; Prefix matches paths sharing a '/' delimited prefix; ImplementationSpecific defers to the IngressClass controller. backend: $ref: '#/components/schemas/IngressBackend' parameters: NameParam: name: name in: path required: true description: Name of the resource. schema: type: string NamespaceParam: name: namespace in: path required: true description: Namespace name to scope the request. schema: type: string securitySchemes: bearerAuth: type: http scheme: bearer bearerFormat: JWT description: Kubernetes service account or user bearer token. clientCertificate: type: mutualTLS description: Client TLS certificate signed by the cluster CA. externalDocs: description: Kubernetes EndpointSlice API Reference url: https://kubernetes.io/docs/reference/kubernetes-api/service-resources/endpoint-slice-v1/