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.
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/uptrace-annotations-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
openapi: 3.2.0
info:
title: Uptrace Alerts Annotations API
description: Uptrace is an open source APM (Application Performance Monitoring) and distributed tracing platform powered by OpenTelemetry. The Uptrace REST API provides programmatic access to annotations, Prometheus metrics ingestion, alerting rules, and telemetry data including traces, metrics, and logs. Uptrace accepts telemetry data via OTLP/gRPC and OTLP/HTTP protocols in addition to Prometheus Remote Write.
version: v1
contact:
name: Uptrace Support
url: https://uptrace.dev
license:
name: BSL 1.1
url: https://github.com/uptrace/uptrace/blob/master/LICENSE
servers:
- url: https://api.uptrace.dev
description: Uptrace Cloud API
- url: http://localhost:14318
description: Uptrace Self-Hosted (HTTP port)
security:
- BearerAuth: []
tags:
- name: Annotations
description: Chart annotation management
paths:
/api/v1/annotations:
get:
operationId: listAnnotations
summary: List Annotations
description: Retrieve chart annotations for a project within a time range.
tags:
- Annotations
parameters:
- name: projectId
in: query
required: true
schema:
type: integer
description: Project identifier
- name: startTime
in: query
schema:
type: string
format: date-time
description: Start of time range (ISO 8601)
- name: endTime
in: query
schema:
type: string
format: date-time
description: End of time range (ISO 8601)
- name: tags
in: query
schema:
type: array
items:
type: string
description: Filter by annotation tags
responses:
'200':
description: List of annotations
content:
application/json:
schema:
$ref: '#/components/schemas/AnnotationList'
'401':
$ref: '#/components/responses/Unauthorized'
post:
operationId: createAnnotation
summary: Create Annotation
description: Create a chart annotation to mark a deployment, incident, or other significant event on Uptrace dashboards.
tags:
- Annotations
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AnnotationRequest'
responses:
'200':
description: Annotation created
content:
application/json:
schema:
$ref: '#/components/schemas/Annotation'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
/api/v1/annotations/{annotationId}:
get:
operationId: getAnnotation
summary: Get Annotation
description: Retrieve a specific annotation by ID.
tags:
- Annotations
parameters:
- name: annotationId
in: path
required: true
schema:
type: integer
description: Annotation identifier
responses:
'200':
description: Annotation details
content:
application/json:
schema:
$ref: '#/components/schemas/Annotation'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
put:
operationId: updateAnnotation
summary: Update Annotation
description: Update an existing annotation.
tags:
- Annotations
parameters:
- name: annotationId
in: path
required: true
schema:
type: integer
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AnnotationRequest'
responses:
'200':
description: Annotation updated
content:
application/json:
schema:
$ref: '#/components/schemas/Annotation'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
delete:
operationId: deleteAnnotation
summary: Delete Annotation
description: Delete a chart annotation.
tags:
- Annotations
parameters:
- name: annotationId
in: path
required: true
schema:
type: integer
responses:
'204':
description: Annotation deleted
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
components:
schemas:
Annotation:
type: object
properties:
id:
type: integer
projectId:
type: integer
name:
type: string
description: Annotation label/title
description:
type: string
description: Markdown-formatted description
tags:
type: array
items:
type: string
description: Classification tags
attrs:
type: object
description: Custom key-value attributes
additionalProperties:
type: string
time:
type: string
format: date-time
description: Time of the annotated event
createdAt:
type: string
format: date-time
updatedAt:
type: string
format: date-time
Error:
type: object
properties:
message:
type: string
description: Error message
AnnotationList:
type: object
properties:
annotations:
type: array
items:
$ref: '#/components/schemas/Annotation'
count:
type: integer
AnnotationRequest:
type: object
required:
- name
- projectId
properties:
projectId:
type: integer
name:
type: string
description:
type: string
tags:
type: array
items:
type: string
attrs:
type: object
additionalProperties:
type: string
time:
type: string
format: date-time
responses:
BadRequest:
description: Invalid request
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
Unauthorized:
description: API token missing or invalid
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
NotFound:
description: Resource not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
securitySchemes:
DSNAuth:
type: apiKey
in: header
name: Authorization
description: 'DSN-based token: ''Bearer <project_secret_token>'''
BearerAuth:
type: http
scheme: bearer
description: Uptrace API token