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/kth:kth-royal-institute-of-technology-swagger-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.
{
"swagger": "2.0",
"info": {
"title": "Node API",
"description": "Template API project for Node.js",
"version": "1.0.0"
},
"basePath": "/api/node",
"consumes": ["application/json"],
"produces": ["application/json"],
"paths": {
"/_checkAPIkey": {
"get": {
"tags": ["system"],
"operationId": "checkAPIkey",
"summary": "Test authentication setup",
"description": "Secured test endpoint which can be used to validate that a client has a working authentication setup\n\n_(System.checkAPIKey)_",
"parameters": [],
"responses": {
"200": {
"description": "The given authentication is **accepted**"
},
"401": {
"description": "This endpoint is secured - **credentials are missing or invalid**."
},
"default": {
"description": "Unexpected response - internal error"
}
},
"security": [{ "api_key": ["read"] }]
}
},
"/v1/data/{id}": {
"get": {
"tags": ["data"],
"operationId": "getDataById",
"summary": "Data with ID",
"description": "Returns the earlier stored data-object with the given ID.\n\n_(Sample.getData)_\n\n",
"parameters": [{ "$ref": "#/parameters/DataId" }],
"responses": {
"200": {
"description": "The requested data",
"schema": { "$ref": "#/definitions/DataObject" }
},
"401": {
"description": "This endpoint is secured - **credentials are missing or invalid**."
},
"404": {
"description": "No data found for given ID",
"schema": {
"type": "object",
"properties": { "message": { "type": "string", "example": "document not found" } }
}
},
"default": {
"description": "Unexpected response - internal error"
}
},
"security": [{ "api_key": ["read"] }]
},
"post": {
"tags": ["data"],
"operationId": "postDataById",
"summary": "Store data",
"description": "Saves the given data-object, overwriting any old data with the same ID.\n\n_(Sample.postData)_",
"parameters": [{ "$ref": "#/parameters/DataId" }, { "$ref": "#/parameters/DataObject" }],
"responses": {
"200": {
"description": "The stored data object",
"schema": { "$ref": "#/definitions/DataObject" }
},
"400": {
"description": "Invalid request",
"schema": {
"type": "object",
"properties": {
"message": { "type": "string", "example": "Sample validation failed: name: Name is required." }
}
}
},
"401": {
"description": "This endpoint is secured - **credentials are missing or invalid**."
},
"default": {
"description": "Unexpected response - internal error"
}
},
"security": [{ "api_key": ["write"] }]
}
}
},
"securityDefinitions": {
"api_key": {
"type": "apiKey",
"name": "api_key",
"in": "header"
}
},
"parameters": {
"DataId": {
"in": "path",
"description": "ID of data object, e.g. \"123\"",
"name": "id",
"required": true,
"type": "string"
},
"DataObject": {
"in": "body",
"description": "Data to save with given ID",
"name": "data",
"required": true,
"schema": {
"type": "object",
"properties": { "name": { "type": "string", "example": "John Doe" } }
}
}
},
"definitions": {
"DataObject": {
"properties": {
"id": { "type": "string", "example": "123" },
"name": { "type": "string", "example": "John Doe" }
}
}
}
}