Axiom Annotations API

Mark deployments, incidents, and events on charts.

Documentation

Specifications

Other Resources

OpenAPI Specification

axiom-co-annotations-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Axiom Annotations API
  description: 'Axiom is a log management, event data, and observability platform. This OpenAPI document describes Axiom''s public REST API, which ingests logs, traces, and events into datasets and queries them with the Axiom Processing Language (APL). Axiom exposes two endpoint families: the v1 family (datasets, ingest, APL query, fields, current user) and the v2 family (annotations, monitors, notifiers, dashboards, virtual fields, starred queries, tokens, users). The default base domain is https://api.axiom.co for the US region; EU organizations use https://api.eu.axiom.co. All requests authenticate with a Bearer token (an API token or a Personal Access Token). Personal Access Tokens additionally require an x-axiom-org-id header. Endpoints marked x-endpoint-status "confirmed" were verified against Axiom''s published API reference; those marked "modeled" are represented from the documentation index and reference conventions and should be reconciled against the live reference.'
  version: '1.0'
  contact:
    name: Axiom
    url: https://axiom.co
  license:
    name: Proprietary
    url: https://axiom.co/terms
servers:
- url: https://api.axiom.co
  description: US region (default)
- url: https://api.eu.axiom.co
  description: EU region
security:
- bearerAuth: []
tags:
- name: Annotations
  description: Mark deployments, incidents, and events on charts.
paths:
  /v2/annotations:
    get:
      operationId: getAnnotations
      tags:
      - Annotations
      summary: List annotations
      description: List annotations, optionally filtered by dataset names and a start/end time range.
      x-endpoint-status: confirmed
      parameters:
      - name: datasets
        in: query
        required: false
        schema:
          type: string
        description: Comma-separated dataset names to filter by.
      - name: start
        in: query
        required: false
        schema:
          type: string
          format: date-time
      - name: end
        in: query
        required: false
        schema:
          type: string
          format: date-time
      responses:
        '200':
          description: A list of annotations.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Annotation'
        '403':
          $ref: '#/components/responses/Forbidden'
    post:
      operationId: createAnnotation
      tags:
      - Annotations
      summary: Create an annotation
      description: Create an annotation scoped to one or more datasets and a time.
      x-endpoint-status: confirmed
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Annotation'
      responses:
        '200':
          description: The created annotation.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Annotation'
        '403':
          $ref: '#/components/responses/Forbidden'
  /v2/annotations/{id}:
    parameters:
    - $ref: '#/components/parameters/ResourceId'
    get:
      operationId: getAnnotation
      tags:
      - Annotations
      summary: Get an annotation
      x-endpoint-status: modeled
      responses:
        '200':
          description: The requested annotation.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Annotation'
        '403':
          $ref: '#/components/responses/Forbidden'
    put:
      operationId: updateAnnotation
      tags:
      - Annotations
      summary: Update an annotation
      x-endpoint-status: modeled
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Annotation'
      responses:
        '200':
          description: The updated annotation.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Annotation'
        '403':
          $ref: '#/components/responses/Forbidden'
    delete:
      operationId: deleteAnnotation
      tags:
      - Annotations
      summary: Delete an annotation
      x-endpoint-status: modeled
      responses:
        '204':
          description: The annotation was deleted.
        '403':
          $ref: '#/components/responses/Forbidden'
components:
  schemas:
    Annotation:
      type: object
      properties:
        id:
          type: string
        type:
          type: string
        datasets:
          type: array
          items:
            type: string
        title:
          type: string
        description:
          type: string
        url:
          type: string
        time:
          type: string
          format: date-time
        endTime:
          type: string
          format: date-time
    Error:
      type: object
      properties:
        message:
          type: string
          example: rate limit exceeded
  parameters:
    ResourceId:
      name: id
      in: path
      required: true
      schema:
        type: string
      description: The resource ID.
  responses:
    Forbidden:
      description: Authentication failed or the token lacks the required scope.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: Bearer token authentication using an Axiom API token or Personal Access Token (PAT). PAT-authenticated requests must also send the x-axiom-org-id header.
Where this information came from

This is an independent, third-party profile of Axiom Annotations API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.