FinOps Foundation Contract Commitments API

Endpoints for querying contract commitment data, a supplemental dataset introduced in FOCUS v1.3 that isolates contract terms from cost and usage rows.

Operations 1

GET /contract-commitments FinOps Foundation List contract commitment records #

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/finops-foundation-contract-commitments-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

finops-foundation-contract-commitments-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: FinOps Foundation FOCUS Cost and Usage Contract Commitments API
  description: An API modeled on the FinOps Open Cost and Usage Specification (FOCUS) v1.3, which defines a standard schema for cloud, SaaS, and other technology billing data. FOCUS normalizes billing datasets across providers to reduce complexity for FinOps practitioners. This specification models the Cost and Usage dataset and the Contract Commitment dataset defined by the FOCUS standard, enabling programmatic access to FOCUS-compliant billing data. The FOCUS specification is maintained by the FinOps Foundation under the Linux Foundation.
  version: 1.3.0
  contact:
    name: FinOps Foundation
    url: https://www.finops.org/
  license:
    name: Community Specification License 1.0
    url: https://github.com/FinOps-Open-Cost-and-Usage-Spec/FOCUS_Spec/blob/main/LICENSE
  x-focus-version: '1.3'
servers:
- url: https://api.example.com/focus/v1
  description: Example FOCUS-compliant API server
security:
- bearerAuth: []
- apiKeyAuth: []
tags:
- name: Contract Commitments
  description: Endpoints for querying contract commitment data, a supplemental dataset introduced in FOCUS v1.3 that isolates contract terms from cost and usage rows.
paths:
  /contract-commitments:
    get:
      operationId: listContractCommitments
      summary: FinOps Foundation List contract commitment records
      description: Retrieves contract commitment records as defined in the FOCUS v1.3 supplemental dataset. Contract commitments isolate contract terms such as start and end dates, remaining units, and descriptions from cost and usage rows.
      tags:
      - Contract Commitments
      parameters:
      - name: commitmentDiscountId
        in: query
        description: Filter by the identifier assigned to a commitment discount by the provider.
        required: false
        schema:
          type: string
      - name: billingAccountId
        in: query
        description: Filter by the unique identifier for a billing account.
        required: false
        schema:
          type: string
      - name: pageSize
        in: query
        description: Number of records to return per page.
        required: false
        schema:
          type: integer
          minimum: 1
          maximum: 10000
          default: 1000
      - name: pageToken
        in: query
        description: Token for retrieving the next page of results.
        required: false
        schema:
          type: string
      responses:
        '200':
          description: A paginated list of contract commitment records.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ContractCommitmentResponse'
        '400':
          description: Invalid request parameters.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Authentication required.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    Error:
      type: object
      properties:
        code:
          type: string
          description: A machine-readable error code.
        message:
          type: string
          description: A human-readable error message.
        details:
          type: string
          nullable: true
          description: Additional details about the error.
      required:
      - code
      - message
    ContractCommitmentResponse:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/ContractCommitmentRecord'
        nextPageToken:
          type: string
          nullable: true
          description: Token to retrieve the next page of results.
        totalRecords:
          type: integer
          description: Total number of records matching the query.
      required:
      - data
    ContractCommitmentRecord:
      type: object
      description: A contract commitment record as defined in FOCUS v1.3. Isolates contract terms including start and end dates, remaining units, and descriptions from cost and usage rows.
      properties:
        CommitmentDiscountId:
          type: string
          description: The unique identifier assigned to a commitment discount by the provider. MUST NOT be null.
        CommitmentDiscountName:
          type: string
          nullable: true
          description: The display name assigned to a commitment discount.
        CommitmentDiscountType:
          type: string
          nullable: true
          description: A provider-assigned label describing the type of commitment discount.
        CommitmentDiscountCategory:
          type: string
          enum:
          - Spend
          - Usage
          description: Whether the commitment discount is based on usage quantity or cost.
        CommitmentStartDate:
          type: string
          format: date-time
          description: The start date and time of the contract commitment.
        CommitmentEndDate:
          type: string
          format: date-time
          description: The end date and time of the contract commitment.
        CommitmentTotalQuantity:
          type: number
          nullable: true
          description: The total quantity of the commitment purchased.
        CommitmentRemainingQuantity:
          type: number
          nullable: true
          description: The remaining quantity of the commitment that has not yet been consumed.
        CommitmentUnit:
          type: string
          nullable: true
          description: The unit of measurement for the commitment quantity.
        CommitmentDescription:
          type: string
          nullable: true
          description: A human-readable description of the contract commitment.
        BillingAccountId:
          type: string
          description: The unique identifier for the billing account associated with the commitment.
        BillingAccountName:
          type: string
          nullable: true
          description: The display name for the billing account.
        ProviderName:
          type: string
          description: The name of the entity that made the commitment discount available.
      required:
      - CommitmentDiscountId
      - CommitmentStartDate
      - CommitmentEndDate
      - BillingAccountId
      - ProviderName
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: Bearer token authentication for FOCUS API access.
    apiKeyAuth:
      type: apiKey
      in: header
      name: X-API-Key
      description: API key authentication for FOCUS API access.
externalDocs:
  description: FOCUS Specification v1.3
  url: https://focus.finops.org/focus-specification/v1-3/