North.Cloud Cost Units API

Manage and retrieve cost unit metric data.

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/north-cloud-cost-units-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 email required.

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

OpenAPI Specification

north-cloud-cost-units-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: North.Cloud Public Cost Units API
  description: The North.Cloud Public API enables programmatic access to push and retrieve cost unit data for FinOps and cloud cost optimization workflows across AWS and GCP. Cost units combine business units and cost identifiers to track metric values over time, supporting unit economics, allocation, and chargeback reporting.
  version: 1.0.0
  contact:
    name: North.Cloud Support
    url: https://docs.north.cloud/
servers:
- url: https://api.north.cloud
  description: Production API
security:
- ApiKeyAuth: []
tags:
- name: Cost Units
  description: Manage and retrieve cost unit metric data.
paths:
  /public/cost-units:
    get:
      summary: Retrieve cost unit
      description: Retrieves an existing cost unit including its current data points and metadata. Requires the cost unit identifier and the account number to scope the request.
      operationId: getCostUnit
      tags:
      - Cost Units
      parameters:
      - $ref: '#/components/parameters/AccountNumber'
      - name: costUnitId
        in: query
        required: true
        description: Identifier combining business unit and cost unit (for example `bu-123:cu-456`).
        schema:
          type: string
          example: bu-123:cu-456
      responses:
        '200':
          description: Cost unit retrieved successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CostUnitResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
    post:
      summary: Update cost unit data
      description: Updates an existing cost unit with new metric data points. By default new data points are merged with existing data; pass `replace=true` to overwrite the cost unit data set entirely.
      operationId: updateCostUnit
      tags:
      - Cost Units
      parameters:
      - $ref: '#/components/parameters/AccountNumber'
      - name: replace
        in: query
        required: false
        description: When true, replaces the cost unit's data set instead of merging.
        schema:
          type: boolean
          default: false
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CostUnitUpdateRequest'
      responses:
        '200':
          description: Cost unit data accepted for processing.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
components:
  responses:
    Unauthorized:
      description: Missing, invalid, expired, or revoked API key.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    BadRequest:
      description: Request body or parameters invalid.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    NotFound:
      description: Cost unit not found for the supplied identifier.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  parameters:
    AccountNumber:
      name: account_number
      in: query
      required: true
      description: North.Cloud account identifier scoping the request.
      schema:
        type: string
  schemas:
    UpdateResponse:
      type: object
      properties:
        status:
          type: string
          example: success
        message:
          type: string
        data:
          type: object
          properties:
            datapointsProcessed:
              type: integer
            warnings:
              type: array
              items:
                type: string
        error:
          type: string
          nullable: true
    CostUnitResponse:
      type: object
      properties:
        status:
          type: string
          example: success
        message:
          type: string
        data:
          type: object
          properties:
            costUnitId:
              type: string
            data:
              type: object
              additionalProperties:
                type: string
              description: Map of date to metric value.
            metadata:
              type: object
              additionalProperties: true
        error:
          type: string
          nullable: true
    CostUnitDataPoint:
      type: object
      required:
      - date
      - metric
      properties:
        date:
          type: string
          format: date
          description: Measurement date in YYYY-MM-DD format.
          example: '2026-01-15'
        metric:
          type: string
          description: Numeric metric value as a decimal string.
          example: '100.50'
    CostUnitUpdateRequest:
      type: object
      required:
      - costUnitId
      - data
      properties:
        costUnitId:
          type: string
          description: Identifier combining business unit and cost unit.
          example: bu-123:cu-456
        data:
          type: array
          items:
            $ref: '#/components/schemas/CostUnitDataPoint'
    Error:
      type: object
      properties:
        status:
          type: string
          example: error
        message:
          type: string
        error:
          type: string
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: Authorization
      description: Provide the API key as `ApiKey north_api_{your_key}`. Keys are created in Streams -> API Keys within the North.Cloud application.