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

# List kubernetes cluster autopilot capacity by node

> Returns, per node, the capacity AutoPilot sizing freed and added on it over the period by the workloads AutoPilot currently runs on (CPU cores, memory GiB and GPUs, averaged over the period's hours with recorded data) and the matching cost at that node's rate, largest net first, one page at a time. These are capacity freed and added on the node, not bill savings: the node's bill only falls when the freed capacity lets nodes be removed. Dollars are null when the node's cost could not be priced. from and to are RFC 3339 and truncated to the hour, to is exclusive; the default is the last 30 days ending at the last closed hour; a period over 400 days is rejected.



## OpenAPI

````yaml /api-reference/costgraph/openapi.json get /api/v1/tenant/clusters/{cluster_id}/autopilot/savings/nodes
openapi: 3.0.0
info:
  description: Read and manage your CostGraph organization, spend, alerts, and settings.
  title: CostGraph API
  contact: {}
  version: '1.0'
servers:
  - url: https://api.costgraph.ai
security: []
tags:
  - name: ai
    x-group: AI
  - name: ai-serving
    x-group: AI serving
  - name: anomalies
    x-group: Anomalies
  - name: auth
    x-group: Auth
  - name: billing
    x-group: Billing
  - name: billing-export
    x-group: Billing export
  - name: budgets
    x-group: Budgets
  - name: ci
    x-group: CI
  - name: compute-recommendations
    x-group: Compute recommendations
  - name: config
    x-group: Config
  - name: context-graph
    x-group: Context graph
  - name: cost
    x-group: Cost
  - name: gpus
    x-group: GPUs
  - name: graphai
    x-group: Graph AI
  - name: integrations
    x-group: Integrations
  - name: invitations
    x-group: Invitations
  - name: kubernetes-clusters
    x-group: Kubernetes clusters
  - name: marketplace
    x-group: Marketplace
  - name: network
    x-group: Network
  - name: network-requests
    x-group: Network requests
  - name: notifications
    x-group: Notifications
  - name: oauth
    x-group: OAuth
  - name: oauth-clients
    x-group: OAuth clients
  - name: opencost
    x-group: OpenCost
  - name: organization
    x-group: Audit log
  - name: organizations
    x-group: Organizations
  - name: placement-alternatives
    x-group: Placement alternatives
  - name: reports
    x-group: Reports
  - name: settings
    x-group: Settings
  - name: sso
    x-group: Single sign-on
  - name: tenants
    x-group: Tenants
  - name: ticketing
    x-group: Ticketing
  - name: user
    x-group: Users
  - name: virtual-machines
    x-group: Virtual machines
  - name: virtual-tags
    x-group: Virtual tags
  - name: workflows
    x-group: Workflows
paths:
  /api/v1/tenant/clusters/{cluster_id}/autopilot/savings/nodes:
    get:
      tags:
        - kubernetes-clusters
      summary: List kubernetes cluster autopilot capacity by node
      description: >-
        Returns, per node, the capacity AutoPilot sizing freed and added on it
        over the period by the workloads AutoPilot currently runs on (CPU cores,
        memory GiB and GPUs, averaged over the period's hours with recorded
        data) and the matching cost at that node's rate, largest net first, one
        page at a time. These are capacity freed and added on the node, not bill
        savings: the node's bill only falls when the freed capacity lets nodes
        be removed. Dollars are null when the node's cost could not be priced.
        from and to are RFC 3339 and truncated to the hour, to is exclusive; the
        default is the last 30 days ending at the last closed hour; a period
        over 400 days is rejected.
      parameters:
        - description: Tenant ID
          name: X-CostGraph-Tenant-ID
          in: header
          required: true
          schema:
            type: string
        - description: Kubernetes cluster ID
          name: cluster_id
          in: path
          required: true
          schema:
            type: string
        - description: Period start (RFC 3339, inclusive)
          name: from
          in: query
          schema:
            type: string
        - description: Period end (RFC 3339, exclusive)
          name: to
          in: query
          schema:
            type: string
        - description: Number of rows to return (default 50, max 200)
          name: limit
          in: query
          schema:
            type: integer
        - description: Rows to skip before returning results (default 0)
          name: offset
          in: query
          schema:
            type: integer
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                  - $ref: '#/components/schemas/responses.SuccessResponse'
                  - type: object
                    properties:
                      data:
                        $ref: '#/components/schemas/operator.AutopilotNodeSavingsList'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/responses.ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/responses.ErrorResponse'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/responses.ErrorResponse'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/responses.ErrorResponse'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/responses.ErrorResponse'
      security:
        - BearerAuth: []
components:
  schemas:
    responses.SuccessResponse:
      type: object
      required:
        - message
        - status
      properties:
        data: {}
        message:
          type: string
          example: some message
        status:
          type: string
          example: success
    operator.AutopilotNodeSavingsList:
      type: object
      required:
        - from
        - items
        - limit
        - offset
        - to
        - total_count
      properties:
        from:
          type: string
        items:
          type: array
          items:
            $ref: '#/components/schemas/operator.AutopilotNodeSavings'
        limit:
          type: integer
        offset:
          type: integer
        to:
          type: string
        total_count:
          type: integer
    responses.ErrorResponse:
      type: object
      required:
        - message
        - status
      properties:
        message:
          type: string
          example: some message
        status:
          type: string
          example: error
    operator.AutopilotNodeSavings:
      type: object
      required:
        - added_cpu_cores
        - added_gpus
        - added_memory_gib
        - autoscaler
        - freed_cpu_cores
        - freed_gpus
        - freed_memory_gib
        - node
        - pool
      properties:
        added_cpu_cores:
          type: number
        added_gpus:
          type: number
        added_memory_gib:
          type: number
        added_usd:
          type: number
          x-semantic: costAmount
          nullable: true
        autoscaler:
          type: string
        freed_cpu_cores:
          type: number
        freed_gpus:
          type: number
        freed_memory_gib:
          type: number
        node:
          type: string
        node_id:
          type: string
          x-semantic: resourceId
          nullable: true
        pool:
          type: string
        saved_usd:
          type: number
          x-semantic: costAmount
          nullable: true
  securitySchemes:
    BearerAuth:
      description: Enter "Bearer {token}"
      type: apiKey
      name: Authorization
      in: header

````

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