SigNoz inframonitoring API

The inframonitoring API from SigNoz — 2 operation(s) for inframonitoring.

Operations 2

POST /api/v2/infra_monitoring/hosts List Hosts for Infra Monitoring #
POST /api/v2/infra_monitoring/pods List Pods for Infra Monitoring #

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/signoz-inframonitoring-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

signoz-inframonitoring-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: '1.0'
  contact:
    email: support@signoz.io
    name: SigNoz Support
    url: https://signoz.io
  description: OpenTelemetry-Native Logs, Metrics and Traces in a single pane
  termsOfService: https://signoz.io/terms-of-service/
  title: SigNoz alerts Inframonitoring API
servers:
- description: The fully qualified URL to the SigNoz APIServer.
  url: https://{host}:{port}{base_path}
  variables:
    base_path:
      default: /
      description: The base path of the SigNoz APIServer
    host:
      default: localhost
      description: The host of the SigNoz APIServer
    port:
      default: '8080'
      description: The port of the SigNoz APIServer
tags:
- name: inframonitoring
paths:
  /api/v2/infra_monitoring/hosts:
    post:
      deprecated: false
      description: 'Returns a paginated list of hosts with key infrastructure metrics: CPU usage (%), memory usage (%), I/O wait (%), disk usage (%), and 15-minute load average. Each host includes its current status (active/inactive based on metrics reported in the last 10 minutes) and metadata attributes (e.g., os.type). Supports filtering via a filter expression, filtering by host status, custom groupBy to aggregate hosts by any attribute, ordering by any of the five metrics, and pagination via offset/limit. The response type is ''list'' for the default host.name grouping or ''grouped_list'' for custom groupBy keys. Also reports missing required metrics and whether the requested time range falls before the data retention boundary. Numeric metric fields (cpu, memory, wait, load15, diskUsage) return -1 as a sentinel when no data is available for that field.'
      operationId: ListHosts
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/InframonitoringtypesPostableHosts'
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  data:
                    $ref: '#/components/schemas/InframonitoringtypesHosts'
                  status:
                    type: string
                required:
                - status
                - data
                type: object
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Internal Server Error
      security:
      - api_key:
        - VIEWER
      - tokenizer:
        - VIEWER
      summary: List Hosts for Infra Monitoring
      tags:
      - inframonitoring
  /api/v2/infra_monitoring/pods:
    post:
      deprecated: false
      description: 'Returns a paginated list of Kubernetes pods with key metrics: CPU usage, CPU request/limit utilization, memory working set, memory request/limit utilization, current pod phase (pending/running/succeeded/failed/unknown), and pod age (ms since start time). Each pod includes metadata attributes (namespace, node, workload owner such as deployment/statefulset/daemonset/job/cronjob, cluster). Supports filtering via a filter expression, custom groupBy to aggregate pods by any attribute, ordering by any of the six metrics (cpu, cpu_request, cpu_limit, memory, memory_request, memory_limit), and pagination via offset/limit. The response type is ''list'' for the default k8s.pod.uid grouping (each row is one pod with its current phase) or ''grouped_list'' for custom groupBy keys (each row aggregates pods in the group with per-phase counts: pendingPodCount, runningPodCount, succeededPodCount, failedPodCount, unknownPodCount derived from each pod''s latest phase in the window). Also reports missing required metrics and whether the requested time range falls before the data retention boundary. Numeric metric fields (podCPU, podCPURequest, podCPULimit, podMemory, podMemoryRequest, podMemoryLimit, podAge) return -1 as a sentinel when no data is available for that field.'
      operationId: ListPods
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/InframonitoringtypesPostablePods'
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  data:
                    $ref: '#/components/schemas/InframonitoringtypesPods'
                  status:
                    type: string
                required:
                - status
                - data
                type: object
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Internal Server Error
      security:
      - api_key:
        - VIEWER
      - tokenizer:
        - VIEWER
      summary: List Pods for Infra Monitoring
      tags:
      - inframonitoring
components:
  schemas:
    TelemetrytypesFieldContext:
      enum:
      - metric
      - log
      - span
      - resource
      - attribute
      - body
      type: string
    Querybuildertypesv5QueryWarnData:
      properties:
        message:
          type: string
        url:
          type: string
        warnings:
          items:
            $ref: '#/components/schemas/Querybuildertypesv5QueryWarnDataAdditional'
          type: array
      type: object
    InframonitoringtypesHostFilter:
      properties:
        expression:
          type: string
        filterByStatus:
          $ref: '#/components/schemas/InframonitoringtypesHostStatus'
      type: object
    RenderErrorResponse:
      properties:
        error:
          $ref: '#/components/schemas/ErrorsJSON'
        status:
          type: string
      required:
      - status
      - error
      type: object
    Querybuildertypesv5OrderDirection:
      enum:
      - asc
      - desc
      type: string
    Querybuildertypesv5Filter:
      properties:
        expression:
          type: string
      type: object
    InframonitoringtypesPods:
      properties:
        endTimeBeforeRetention:
          type: boolean
        records:
          items:
            $ref: '#/components/schemas/InframonitoringtypesPodRecord'
          type:
          - array
          - 'null'
        requiredMetricsCheck:
          $ref: '#/components/schemas/InframonitoringtypesRequiredMetricsCheck'
        total:
          type: integer
        type:
          $ref: '#/components/schemas/InframonitoringtypesResponseType'
        warning:
          $ref: '#/components/schemas/Querybuildertypesv5QueryWarnData'
      required:
      - type
      - records
      - total
      - requiredMetricsCheck
      - endTimeBeforeRetention
      type: object
    ErrorsResponseerroradditional:
      properties:
        message:
          type: string
      type: object
    Querybuildertypesv5QueryWarnDataAdditional:
      properties:
        message:
          type: string
      type: object
    Querybuildertypesv5OrderBy:
      properties:
        direction:
          $ref: '#/components/schemas/Querybuildertypesv5OrderDirection'
        key:
          $ref: '#/components/schemas/Querybuildertypesv5OrderByKey'
      type: object
    Querybuildertypesv5GroupByKey:
      properties:
        description:
          type: string
        fieldContext:
          $ref: '#/components/schemas/TelemetrytypesFieldContext'
        fieldDataType:
          $ref: '#/components/schemas/TelemetrytypesFieldDataType'
        name:
          type: string
        signal:
          $ref: '#/components/schemas/TelemetrytypesSignal'
        unit:
          type: string
      required:
      - name
      type: object
    TelemetrytypesSignal:
      enum:
      - traces
      - logs
      - metrics
      type: string
    InframonitoringtypesPostableHosts:
      properties:
        end:
          format: int64
          type: integer
        filter:
          $ref: '#/components/schemas/InframonitoringtypesHostFilter'
        groupBy:
          items:
            $ref: '#/components/schemas/Querybuildertypesv5GroupByKey'
          type:
          - array
          - 'null'
        limit:
          type: integer
        offset:
          type: integer
        orderBy:
          $ref: '#/components/schemas/Querybuildertypesv5OrderBy'
        start:
          format: int64
          type: integer
      required:
      - start
      - end
      - limit
      type: object
    InframonitoringtypesHostStatus:
      enum:
      - active
      - inactive
      - ''
      type: string
    InframonitoringtypesPodPhase:
      enum:
      - pending
      - running
      - succeeded
      - failed
      - unknown
      - ''
      type: string
    ErrorsJSON:
      properties:
        code:
          type: string
        errors:
          items:
            $ref: '#/components/schemas/ErrorsResponseerroradditional'
          type: array
        message:
          type: string
        url:
          type: string
      required:
      - code
      - message
      type: object
    InframonitoringtypesPostablePods:
      properties:
        end:
          format: int64
          type: integer
        filter:
          $ref: '#/components/schemas/Querybuildertypesv5Filter'
        groupBy:
          items:
            $ref: '#/components/schemas/Querybuildertypesv5GroupByKey'
          type:
          - array
          - 'null'
        limit:
          type: integer
        offset:
          type: integer
        orderBy:
          $ref: '#/components/schemas/Querybuildertypesv5OrderBy'
        start:
          format: int64
          type: integer
      required:
      - start
      - end
      - limit
      type: object
    TelemetrytypesFieldDataType:
      enum:
      - string
      - bool
      - float64
      - int64
      - number
      type: string
    InframonitoringtypesHosts:
      properties:
        endTimeBeforeRetention:
          type: boolean
        records:
          items:
            $ref: '#/components/schemas/InframonitoringtypesHostRecord'
          type:
          - array
          - 'null'
        requiredMetricsCheck:
          $ref: '#/components/schemas/InframonitoringtypesRequiredMetricsCheck'
        total:
          type: integer
        type:
          $ref: '#/components/schemas/InframonitoringtypesResponseType'
        warning:
          $ref: '#/components/schemas/Querybuildertypesv5QueryWarnData'
      required:
      - type
      - records
      - total
      - requiredMetricsCheck
      - endTimeBeforeRetention
      type: object
    InframonitoringtypesResponseType:
      enum:
      - list
      - grouped_list
      type: string
    InframonitoringtypesHostRecord:
      properties:
        activeHostCount:
          type: integer
        cpu:
          format: double
          type: number
        diskUsage:
          format: double
          type: number
        hostName:
          type: string
        inactiveHostCount:
          type: integer
        load15:
          format: double
          type: number
        memory:
          format: double
          type: number
        meta:
          additionalProperties: {}
          type:
          - object
          - 'null'
        status:
          $ref: '#/components/schemas/InframonitoringtypesHostStatus'
        wait:
          format: double
          type: number
      required:
      - hostName
      - status
      - activeHostCount
      - inactiveHostCount
      - cpu
      - memory
      - wait
      - load15
      - diskUsage
      - meta
      type: object
    Querybuildertypesv5OrderByKey:
      properties:
        description:
          type: string
        fieldContext:
          $ref: '#/components/schemas/TelemetrytypesFieldContext'
        fieldDataType:
          $ref: '#/components/schemas/TelemetrytypesFieldDataType'
        name:
          type: string
        signal:
          $ref: '#/components/schemas/TelemetrytypesSignal'
        unit:
          type: string
      required:
      - name
      type: object
    InframonitoringtypesPodRecord:
      properties:
        failedPodCount:
          type: integer
        meta:
          additionalProperties: {}
          type:
          - object
          - 'null'
        pendingPodCount:
          type: integer
        podAge:
          format: int64
          type: integer
        podCPU:
          format: double
          type: number
        podCPULimit:
          format: double
          type: number
        podCPURequest:
          format: double
          type: number
        podMemory:
          format: double
          type: number
        podMemoryLimit:
          format: double
          type: number
        podMemoryRequest:
          format: double
          type: number
        podPhase:
          $ref: '#/components/schemas/InframonitoringtypesPodPhase'
        podUID:
          type: string
        runningPodCount:
          type: integer
        succeededPodCount:
          type: integer
        unknownPodCount:
          type: integer
      required:
      - podUID
      - podCPU
      - podCPURequest
      - podCPULimit
      - podMemory
      - podMemoryRequest
      - podMemoryLimit
      - podPhase
      - pendingPodCount
      - runningPodCount
      - succeededPodCount
      - failedPodCount
      - unknownPodCount
      - podAge
      - meta
      type: object
    InframonitoringtypesRequiredMetricsCheck:
      properties:
        missingMetrics:
          items:
            type: string
          type:
          - array
          - 'null'
      required:
      - missingMetrics
      type: object
  securitySchemes:
    api_key:
      description: API Keys
      in: header
      name: SigNoz-Api-Key
      type: apiKey
    tokenizer:
      bearerFormat: Tokenizer
      description: Tokens generated by the tokenizer
      scheme: bearer
      type: http