Cilium Service API

The Service API from Cilium — 2 operation(s) for service.

Operations 4

GET /service Cilium List services #
GET /service/{id} Cilium Get service by ID #
PUT /service/{id} Cilium Create or update service #
DELETE /service/{id} Cilium Delete service #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/cilium-service-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

cilium-service-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Cilium BGP Service API
  description: The Cilium REST API provides access to the Cilium daemon and agent endpoints for managing Kubernetes network policy, security, and connectivity. The API is served by the cilium-agent process over a local Unix domain socket and HTTP interface. It covers endpoint management, identity management, policy configuration, IP address management, service configuration, BGP operations, and daemon health status.
  version: v1beta1
  contact:
    name: Cilium Community
    url: https://cilium.io/get-help/
  termsOfService: https://cilium.io/privacy/
servers:
- url: http://localhost/v1
  description: Local Cilium Agent (Unix socket or HTTP)
tags:
- name: Service
paths:
  /service:
    get:
      operationId: listServices
      summary: Cilium List services
      description: Returns all services managed by the Cilium load balancer, including their frontend VIP addresses and the set of backend endpoints with associated weight and health status.
      tags:
      - Service
      responses:
        '200':
          description: List of services
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Service'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
  /service/{id}:
    get:
      operationId: getService
      summary: Cilium Get service by ID
      description: Returns the configuration and status of a specific Cilium-managed service, identified by its numeric service ID.
      tags:
      - Service
      parameters:
      - $ref: '#/components/parameters/ServiceIDParam'
      responses:
        '200':
          description: Service details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Service'
        '404':
          description: Service not found
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
    put:
      operationId: putService
      summary: Cilium Create or update service
      description: Creates a new Cilium-managed service or updates an existing one, specifying the frontend VIP and port along with the set of backend endpoints for load balancing.
      tags:
      - Service
      parameters:
      - $ref: '#/components/parameters/ServiceIDParam'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ServiceSpec'
      responses:
        '200':
          description: Service updated
        '201':
          description: Service created
        '400':
          description: Invalid service specification
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
    delete:
      operationId: deleteService
      summary: Cilium Delete service
      description: Removes a Cilium-managed service and all its associated load balancing configuration from the BPF datapath.
      tags:
      - Service
      parameters:
      - $ref: '#/components/parameters/ServiceIDParam'
      responses:
        '200':
          description: Service deleted
        '404':
          description: Service not found
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    FrontendAddress:
      type: object
      description: Frontend VIP address and port for a service.
      properties:
        ip:
          type: string
          description: Frontend IP address (VIP).
        port:
          type: integer
          description: Frontend port number.
        protocol:
          type: string
          description: Protocol (TCP, UDP, SCTP).
          enum:
          - TCP
          - UDP
          - SCTP
          - ANY
        scope:
          type: string
          description: Scope of the frontend (external, internal, host).
    ServiceSpec:
      type: object
      description: Specification for a Cilium service.
      properties:
        id:
          type: integer
          description: Numeric service ID.
        frontend-address:
          $ref: '#/components/schemas/FrontendAddress'
        backend-addresses:
          type: array
          items:
            $ref: '#/components/schemas/BackendAddress'
          description: Load balancer backend endpoints.
        flags:
          $ref: '#/components/schemas/ServiceSpecFlags'
    BackendAddress:
      type: object
      description: A single backend endpoint for a load balancer service.
      properties:
        ip:
          type: string
          description: Backend pod or endpoint IP address.
        port:
          type: integer
          description: Backend port number.
        nodeName:
          type: string
          description: Node where this backend resides.
        state:
          type: string
          description: State of this backend (active, terminating, quarantined, maintenance).
        weight:
          type: integer
          description: Load balancer weight for this backend.
    ServiceStatus:
      type: object
      description: Realized status of a Cilium service.
      properties:
        realized:
          $ref: '#/components/schemas/ServiceSpec'
    Error:
      type: string
      description: Human-readable error message.
    Service:
      type: object
      description: A Cilium-managed load balancer service with frontend and backends.
      properties:
        spec:
          $ref: '#/components/schemas/ServiceSpec'
        status:
          $ref: '#/components/schemas/ServiceStatus'
    ServiceSpecFlags:
      type: object
      description: Feature flags for a service.
      properties:
        type:
          type: string
          description: Service type (ClusterIP, NodePort, LoadBalancer, ExternalIPs, HostPort, LocalRedirect, Custom, HostNamespace).
        trafficPolicy:
          type: string
          description: Traffic policy (Cluster, Local).
        healthCheckNodePort:
          type: integer
          description: Port for health check NodePort.
        name:
          type: string
          description: Service name.
        namespace:
          type: string
          description: Service namespace.
        natPolicy:
          type: string
          description: NAT policy applied to this service.
  parameters:
    ServiceIDParam:
      name: id
      in: path
      required: true
      description: Numeric service ID.
      schema:
        type: integer
externalDocs:
  description: Cilium API Documentation
  url: https://docs.cilium.io/en/stable/api/