APIs.json · Schema
JSON Schema for APIs.json 0.21
API AggregationAPI CatalogingAPI CommonsAPI DiscoveryAPI GovernanceAPI OperationsMachine-ReadableSpecificationStandards
Properties
| Name | Type | Description |
|---|---|---|
| aid | string | unique identifier for APIs.json |
| visibility | string | The visibility for the APIs.json collection. |
| rating | string | The rating for the APIs.json collection. |
| type | string | The type of the APIs.json collection. |
| kind | string | The kind of entity the collection describes (e.g. company, government, opensource, standard, contract, topic). |
| position | string | The position of the maintainer of APIs.json. |
| access | string | The access level for the APIs in an APIs.json. |
| name | string | The name of the service described |
| description | string | Description of the service |
| url | string | URL where the apis.json file will live |
| image | string | Image to represent the API |
| created | string | Date when the file was created |
| modified | string | Date when the file was modified |
| specificationVersion | string | APIs.json spec version, latest is 0.21 |
| apis | array | All the APIs of this service |
| maintainers | array | Maintainers of the apis.json file |
| tags | array | Tags to describe the service |
| include | array | Links to other apis.json definitions included in this service |
| common | array | Common properties that apply across all APIs. |
| prompts | array | AI prompts that apply across all APIs. |
| rules | array | Governance rulesets (e.g. Spectral) that apply across all APIs. |
| workflows | array | Arazzo (or other) workflows that apply across all APIs. |
| overlays | array | Links to other apis.json that will be overlaid original. |
| network | array | Links to other apis.json that will be included in discovery. |
JSON Schema
{
"$id": "https://github.com/apis-json/api-json/blob/develop/spec/",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "JSON Schema for APIs.json 0.21",
"type": "object",
"additionalProperties": false,
"patternProperties": {
"^X-": {
"type": "object"
}
},
"$defs": {
"maintainers": {
"description": "The person or organization responsible for maintaining the API",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "name",
"minLength": 5
}
},
"additionalProperties": {
"type": "string"
}
},
"apis": {
"description": "The description of the API",
"required": [
"name",
"description",
"image",
"baseURL",
"humanURL",
"properties"
],
"properties": {
"aid": {
"type": "string",
"description": "unique identifier for API"
},
"name": {
"type": "string",
"description": "name",
"minLength": 2
},
"description": {
"type": "string",
"description": "description of the API",
"minLength": 5
},
"image": {
"type": "string",
"description": "URL of an image representing the API"
},
"created": {
"type": "string",
"format": "date",
"description": "Date when the api was added to APIs.json"
},
"modified": {
"type": "string",
"format": "date",
"description": "Date when the api was last modified"
},
"baseURL": {
"type": "string",
"pattern": "^(http)|(https)://(.*)$",
"description": "baseURL"
},
"humanURL": {
"type": "string",
"pattern": "^(http)|(https)://(.*)$",
"description": "humanURL"
},
"tags": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
},
"description": "tags to describe the API"
},
"properties": {
"type": "array",
"items": {
"$ref": "#/$defs/urls"
},
"description": "URLs"
},
"prompts": {
"type": "array",
"items": {
"$ref": "#/$defs/urls"
},
"description": "AI prompts that apply to this API"
},
"rules": {
"type": "array",
"items": {
"$ref": "#/$defs/urls"
},
"description": "Governance rulesets (e.g. Spectral) that apply to this API"
},
"workflows": {
"type": "array",
"items": {
"$ref": "#/$defs/urls"
},
"description": "Arazzo (or other) workflows that apply to this API"
},
"contact": {
"type": "array",
"items": {
"$ref": "#/$defs/contact"
},
"description": "Contact to reach if questions about API"
},
"meta": {
"type": "array",
"items": {
"$ref": "#/$defs/metaInformation"
}
}
}
},
"metaInformation": {
"description": "Metadata about the API",
"required": [
"key",
"value"
],
"properties": {
"key": {
"type": "string"
},
"value": {
"type": "string"
}
}
},
"contact": {
"description": "Information on contacting the API support",
"required": [
"FN"
],
"additionalProperties": true,
"patternProperties": {
"^X-": {
"type": "string"
}
},
"properties": {
"FN": {
"type": "string",
"minLength": 1
},
"email": {
"type": "string",
"format": "email"
},
"organizationName": {
"type": "string",
"minLength": 1
},
"adr": {
"type": "string"
},
"tel": {
"type": "string",
"minLength": 1
},
"X-twitter": {
"type": "string"
},
"X-github": {
"type": "string"
},
"photo": {
"type": "string",
"pattern": "^(http)|(https)://(.*)$"
},
"vCard": {
"type": "string",
"pattern": "^(http)|(https)://(.*)$"
},
"url": {
"type": "string",
"pattern": "^(http)|(https)://(.*)$"
}
}
},
"urls": {
"description": "A representation of a URL",
"required": [
"type"
],
"oneOf": [
{
"required": [
"url"
]
},
{
"required": [
"data"
]
}
],
"properties": {
"name": {
"type": "string",
"description": "The display name of the property."
},
"description": {
"type": "string",
"description": "The description of the property.",
"minLength": 5
},
"type": {
"type": "string",
"description": "One of the designated API property types \u2014 canonical names AND their recognised synonyms are accepted, because this vocabulary is spelled many ways in the wild \u2014 or an extension prefixed with x- or X-.",
"pattern": "^(Swagger|OpenAPI|JSONSchema|GraphQLSchema|GraphQL|PostmanCollection|PostmanWorkspace|InsomniaCollection|BrunoCollection|AsyncAPI|RAML|Blueprint|WADL|WSDL|ALPS|OpenAIPluginManifest|JSONLD|JSONLDContext|JSONForms|JSONStructure|Vocabulary|Arazzo|Overlay|ServerlessWorkflow|Workflow|Compare|Evolution|DataContract|SpectralRules|Rules|GovernanceRules|GettingStarted|Documentation|APIReference|Authentication|APIOnboarding|Versioning|Signup|Login|SDKs|CLI|Console|Sandbox|Examples|ApiExamples|FAQ|Summary|Features|Solutions|Tools|Careers|Prompt|AgentPrompt|PromptTemplate|AgentSkills|LlmsText|ModelContextProtocol|MCPServer|MockRestServer|MockMCPServer|BackstageApi|Standards|Conformance|Services|About|Specification|Plans|Pricing|RateLimits|StatusPage|ChangeLog|ReleaseNotes|RoadMap|DeprecationPolicy|TermsOfService|InterfaceLicense|PrivacyPolicy|ServiceLevelAgreement|Security|Compliance|License|Training|Blog|BlogFeed|Forums|Support|Contact|ErrorCodes|Webhooks|Integrations|UseCases|Community|StackOverflow|Slack|Discord|Website|Portal|DeveloperPortal|YouTube|LinkedIn|GitHubOrg|GitHubOrganization|GitHubRepo|GitHubRepository|GitHubHttpUrl|GitHubSshUrl|GitHubIssues|GitHubDiscussions|Twitter|X|AlertsTwitterHandle|FinOps|FinOpsFramework|FocusBillingExport|FocusConformanceReport|FocusContractCommitments|OpenCostSpecification|OpenCostAllocationAPI|UnitEconomics|ChargebackPolicy|TaggingPolicy|InvoiceReconciliation|SoftwareCarbonIntensity|SCIReport|GHGProtocolReport|PublicAPIsListing|Review|DomainSecurity|LLMsTxt|AgenticAccess|SignUp|VulnerabilityDisclosure|Lifecycle|TrustCenter|Conventions|WellKnown|Packages|ErrorCatalog|DataModel|AgentSkill|OAuthScopes|HelpCenter|SecurityTxt|Deprecation|Components|SourceCode|BlogRSS|Idempotency|Partners|Instagram|Postman|InvestorRelations|Facebook|Newsroom|Crunchbase|CodeExamples|Wikipedia|ContactUs|OpenIDConnect|CaseStudies|Roadmap|Tutorials|Sustainability|ParentCompany|Repository|PressReleases|Events|Protobuf|DeclineCodes|Newsletter|HelmChart|DockerImage|ContributionGuide|CodeOfConduct|SecurityPolicy|Releases|IssueTracker|Contributors|Maintainers|KubernetesOperator|AgentCard|MCPClient|A2A|SBOM|Attestation|Provenance|APICatalog|Playground|Quickstart|KnowledgeBase|MailingList|API Documentation|APIDocumentation|Connect Go SDK|Connect Node\\.js SDK|Connect Python SDK|Deprecation Notice|Deprecations|Developer Portal|Discourse|Forum|GitHub|GitHub Org|Go SDK|Help Center|JSON Schema|JSON\\-LD Context|Java SDK|JavaScript SDK|Knowledge Base|Knowledge Center|KnowledgeCenter|LLMsText|LlmsTxt|Mailing List|Mailing Lists|MailingLists|Node\\.js SDK|PHP SDK|Postman Collection|Privacy|Python SDK|Reference|Register|Registration|Ruby SDK|SDK|Security Policy|Sign Up|Source Code|Spectral|Spectral Rules|SpectralRuleset|Terms of Service|Terms of Use|TermsOfUse|Trust)$|^([Xx]-[A-Za-z0-9._\\-]*)$"
},
"mediaType": {
"type": "string",
"description": "IANA media type representing the property."
},
"url": {
"type": "string",
"description": "The URL for the property. * must be url or data."
},
"data": {
"oneOf": [
{
"type": "object"
},
{
"type": "array"
}
],
"description": "The data for the property. * must be url or data"
},
"tags": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
},
"description": "Tags to describe the property."
}
}
},
"tags": {
"description": "A consistent set of tag to apply to a description"
},
"include": {
"description": "Include other APIs.json file",
"required": [
"name",
"url"
],
"properties": {
"name": {
"type": "string",
"minLength": 1
},
"url": {
"type": "string"
}
}
},
"overlay": {
"description": "Overlay other APIs.json file",
"required": [
"url"
],
"properties": {
"name": {
"type": "string",
"minLength": 1
},
"url": {
"type": "string"
}
}
},
"network": {
"description": "Network APIs.json file",
"required": [
"name",
"url"
],
"properties": {
"name": {
"type": "string",
"minLength": 1
},
"url": {
"type": "string"
}
}
}
},
"required": [
"name",
"description",
"url",
"apis",
"maintainers",
"tags"
],
"properties": {
"aid": {
"type": "string",
"description": "unique identifier for APIs.json"
},
"visibility": {
"type": "string",
"description": "The visibility for the APIs.json collection.",
"enum": [
"Public",
"Private",
"Partner"
]
},
"rating": {
"type": "string",
"description": "The rating for the APIs.json collection.",
"enum": [
"A",
"B",
"C",
"D",
"F"
]
},
"type": {
"type": "string",
"description": "The type of the APIs.json collection.",
"enum": [
"Index",
"Template",
"Example",
"Collection",
"Sandbox",
"Knowledgebase",
"Blueprint",
"Contract",
"Search",
"Network"
]
},
"kind": {
"type": "string",
"description": "The kind of entity the collection describes (e.g. company, government, opensource, standard, contract, topic)."
},
"position": {
"type": "string",
"description": "The position of the maintainer of APIs.json.",
"enum": [
"Producing",
"Consuming"
]
},
"access": {
"type": "string",
"description": "The access level for the APIs in an APIs.json.",
"enum": [
"Internal",
"1st-Party",
"3rd-Party"
]
},
"name": {
"type": "string",
"description": "The name of the service described",
"minLength": 3,
"maxLength": 50
},
"description": {
"type": "string",
"description": "Description of the service",
"minLength": 5,
"maxLength": 1000
},
"url": {
"type": "string",
"description": "URL where the apis.json file will live",
"pattern": "^(http)|(https)://(.*)$"
},
"image": {
"type": "string",
"description": "Image to represent the API"
},
"created": {
"type": "string",
"format": "date",
"description": "Date when the file was created"
},
"modified": {
"type": "string",
"format": "date",
"description": "Date when the file was modified"
},
"specificationVersion": {
"type": "string",
"description": "APIs.json spec version, latest is 0.21"
},
"apis": {
"type": "array",
"items": {
"$ref": "#/$defs/apis"
},
"description": "All the APIs of this service"
},
"maintainers": {
"type": "array",
"items": {
"$ref": "#/$defs/contact"
},
"description": "Maintainers of the apis.json file"
},
"tags": {
"type": "array",
"items": {
"$ref": "#/$defs/tags"
},
"description": "Tags to describe the service"
},
"include": {
"type": "array",
"items": {
"$ref": "#/$defs/include"
},
"description": "Links to other apis.json definitions included in this service"
},
"common": {
"description": "Common properties that apply across all APIs.",
"type": "array",
"items": {
"$ref": "#/$defs/urls"
}
},
"prompts": {
"description": "AI prompts that apply across all APIs.",
"type": "array",
"items": {
"$ref": "#/$defs/urls"
}
},
"rules": {
"description": "Governance rulesets (e.g. Spectral) that apply across all APIs.",
"type": "array",
"items": {
"$ref": "#/$defs/urls"
}
},
"workflows": {
"description": "Arazzo (or other) workflows that apply across all APIs.",
"type": "array",
"items": {
"$ref": "#/$defs/urls"
}
},
"overlays": {
"type": "array",
"items": {
"$ref": "#/$defs/overlay"
},
"description": "Links to other apis.json that will be overlaid original."
},
"network": {
"type": "array",
"items": {
"$ref": "#/$defs/network"
},
"description": "Links to other apis.json that will be included in discovery."
}
}
}
Work with this as data
Every JSON Schema 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 schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.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 JSON Schema
curl "https://apis.io/api/v1/json-schemas/apis-json-schema-0.22"
All schemas
curl "https://apis.io/api/v1/json-schemas?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.