> ## Documentation Index
> Fetch the complete documentation index at: https://docs.celum.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Flow dnsqueries top

> Security → DNS Queries: every query the node DNS logged

**Authorisation:** `security:Read` on `krn:celum:supervisor:{name}:project:{project}:security:*`.



## OpenAPI

````yaml /openapi.json get /api/supervisors/{name}/projects/{project}/security/flows/dns-queries/top
openapi: 3.0.3
info:
  description: >-
    The HTTP surface of the Celum backend, generated from its own router and

    authorisation map — so this list cannot drift from the server that serves
    it.


    **Every operation states the IAM action and resource it is authorised

    against.** That pairing is the part worth reading: a policy naming the right

    action against the wrong resource matches nothing, and fails silently.


    Request and response bodies come from the Go types the handlers send and

    decode. Where those types do not determine the shape (an interface, a

    map[string]any, an unknown custom encoding), the operation says so in

    `x-celum-schema-gap` instead of carrying a guessed schema.
  title: Celum API
  version: 1.0.0
servers:
  - description: Your Celum deployment
    url: https://{host}
    variables:
      host:
        default: celum.example.com
        description: The host your Celum backend is served from
security:
  - sessionCookie: []
  - bearerToken: []
tags:
  - description: AI assistant & MCP
    name: ai-assistant
  - description: Clusters & CAPI lifecycle
    name: capi
  - description: Certificates & external secrets
    name: certs
  - description: GitOps & apps
    name: gitops
  - description: IAM, audit & auth
    name: iam
  - description: Image library
    name: images
  - description: Infrastructure & supervisors
    name: infrastructure
  - description: Networking
    name: networking
  - description: Observability & platform health
    name: observability
  - description: Platform onboarding & settings
    name: platform-settings
  - description: Projects
    name: projects
  - description: Registries & mirroring
    name: registries
  - description: Security & flows
    name: security
  - description: Storage
    name: storage
  - description: Templates & addons
    name: templates
  - description: Virtualization platform (KubeVirt/CDI)
    name: virt
  - description: Virtual machines
    name: vms
  - description: Workloads & topology
    name: workloads
paths:
  /api/supervisors/{name}/projects/{project}/security/flows/dns-queries/top:
    get:
      tags:
        - projects
      summary: Flow dnsqueries top
      description: >-
        Security → DNS Queries: every query the node DNS logged


        **Authorisation:** `security:Read` on
        `krn:celum:supervisor:{name}:project:{project}:security:*`.
      operationId: get_supervisors_byName_projects_byProject_security_flows_dnsQueries_top
      parameters:
        - description: >-
            The supervisor's name, as registered under Administration →
            Supervisors.
          in: path
          name: name
          required: true
          schema:
            type: string
        - description: ''
          in: path
          name: project
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/api.dnsQueriesTopResponse'
          description: Success.
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/api.ErrorBody'
          description: Bad Request.
        '401':
          description: Not authenticated — no valid session cookie or API token.
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/api.ErrorBody'
          description: >-
            Authenticated, but no policy allows this action on this resource.
            The body carries the action and resource that were evaluated.
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/api.ErrorBody'
          description: Not Found.
        '502':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/api.ErrorBody'
          description: Bad Gateway.
components:
  schemas:
    api.dnsQueriesTopResponse:
      properties:
        by:
          type: string
        names:
          items:
            $ref: '#/components/schemas/api.dnsNameJ'
          type: array
        sources:
          items:
            $ref: '#/components/schemas/api.dnsSourceJ'
          type: array
        truncated:
          type: boolean
      required:
        - by
      type: object
      x-go-type: backend/internal/api.dnsQueriesTopResponse
    api.ErrorBody:
      properties:
        error:
          type: string
      required:
        - error
      type: object
    api.dnsNameJ:
      properties:
        answered:
          format: int64
          minimum: 0
          type: integer
        answeredA:
          format: int64
          minimum: 0
          type: integer
        answeredAAAA:
          format: int64
          minimum: 0
          type: integer
        answers:
          items:
            type: string
          nullable: true
          type: array
        blocked:
          format: int64
          minimum: 0
          type: integer
        cacheHits:
          format: int64
          minimum: 0
          type: integer
        cnames:
          items:
            type: string
          nullable: true
          type: array
        first:
          format: date-time
          type: string
        last:
          format: date-time
          type: string
        name:
          type: string
        nodata:
          format: int64
          minimum: 0
          type: integer
        nodataA:
          format: int64
          minimum: 0
          type: integer
        nodataAAAA:
          format: int64
          minimum: 0
          type: integer
        nxdomain:
          format: int64
          minimum: 0
          type: integer
        qtypes:
          items:
            type: string
          nullable: true
          type: array
        queries:
          format: int64
          minimum: 0
          type: integer
        records:
          items:
            type: string
          nullable: true
          type: array
        servfail:
          format: int64
          minimum: 0
          type: integer
        sources:
          format: int64
          minimum: 0
          type: integer
      required:
        - answered
        - answeredA
        - answeredAAAA
        - answers
        - blocked
        - cacheHits
        - cnames
        - first
        - last
        - name
        - nodata
        - nodataA
        - nodataAAAA
        - nxdomain
        - qtypes
        - queries
        - records
        - servfail
        - sources
      type: object
      x-go-type: backend/internal/api.dnsNameJ
    api.dnsSourceJ:
      properties:
        blocked:
          format: int64
          minimum: 0
          type: integer
        cacheHits:
          format: int64
          minimum: 0
          type: integer
        guestCluster:
          type: string
        last:
          format: date-time
          type: string
        names:
          format: int64
          minimum: 0
          type: integer
        namespace:
          type: string
        nxdomain:
          format: int64
          minimum: 0
          type: integer
        p95Micros:
          type: number
        pod:
          type: string
        pods:
          items:
            type: string
          nullable: true
          type: array
        project:
          type: string
        queries:
          format: int64
          minimum: 0
          type: integer
        workload:
          type: string
        workloadKind:
          type: string
      required:
        - blocked
        - cacheHits
        - last
        - names
        - namespace
        - nxdomain
        - p95Micros
        - pods
        - queries
        - workload
      type: object
      x-go-type: backend/internal/api.dnsSourceJ
  securitySchemes:
    sessionCookie:
      description: >-
        The session cookie issued by the OIDC sign-in flow. This is what a
        browser uses.
      in: cookie
      name: k8s-gate-session
      type: apiKey
    bearerToken:
      description: >-
        An API token, minted from your own identity page. A token carries the
        IAM groups you held **when it was minted**, and cannot bypass deletion
        approval — except for guest clusters inside a project that same token
        created.
      scheme: bearer
      type: http

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.