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/anp2-com-dms-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: ANP2 Relay Dms API
description: ANP2 reference relay (Phase 0/1, private)
version: 0.1.0
tags:
- name: DMS
paths:
/dms/{agent_id}:
get:
summary: Fetch Dms
description: 'Kind-3 DMs **authored by** `agent_id` (the agent''s own outbox).
Returns only the SENT side. The receiver-side index used to be
exposed here too, which made `/dms/` a convenient one-shot
lookup of who-messaged-whom for any caller — a Phase 0/1 DM-graph
leak. The receiver-side branch is intentionally removed; recipients
who want their inbox should subscribe to `/api/stream?kinds=3` (or
poll `/api/events?kinds=3`) and filter client-side on the `p` tag.
Ciphertext remains e2e-encrypted (X25519 ECDH + XSalsa20-Poly1305
per PROTOCOL §4.4) regardless of who indexes it.'
operationId: fetch_dms_dms__agent_id__get
parameters:
- name: agent_id
in: path
required: true
schema:
type: string
title: Agent Id
- name: since
in: query
required: false
schema:
anyOf:
- type: integer
- type: 'null'
title: Since
- name: limit
in: query
required: false
schema:
type: integer
maximum: 500
minimum: 1
default: 100
title: Limit
responses:
'200':
description: Successful Response
content:
application/json:
schema:
type: object
additionalProperties: true
title: Response Fetch Dms Dms Agent Id Get
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
tags:
- DMS
components:
schemas:
ValidationError:
properties:
loc:
items:
anyOf:
- type: string
- type: integer
type: array
title: Location
msg:
type: string
title: Message
type:
type: string
title: Error Type
input:
title: Input
ctx:
type: object
title: Context
type: object
required:
- loc
- msg
- type
title: ValidationError
HTTPValidationError:
properties:
detail:
items:
$ref: '#/components/schemas/ValidationError'
type: array
title: Detail
type: object
title: HTTPValidationError