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/magento-watch:magento-watch-security-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: magento.watch Security API
version: 1.0.0
summary: Magento Open Source, Adobe Commerce and Mage-OS version lifecycle data
description: 'Free, unauthenticated, CORS-open REST API returning release dates, end-of-life dates and system requirements for every tracked Magento Open Source, Adobe Commerce and Mage-OS release. No API key, no rate limit. Responses are cacheable (`Cache-Control: public, max-age=3600, s-maxage=86400`).'
license:
name: MIT
identifier: MIT
contact:
name: magento.watch
url: https://magento.watch/api
servers:
- url: https://magento.watch
description: Production
security: []
tags:
- name: Security
description: Security bulletin lookups
paths:
/api/v1/security-bulletins:
get:
operationId: getSecurityBulletins
summary: All security bulletins
description: Adobe security bulletins with CVE and fixed-in mapping, keyed by bulletin id. Optionally filtered by `severity` or `since`.
tags:
- Security
parameters:
- name: severity
in: query
required: false
description: Filter to one severity
schema:
type: string
enum:
- critical
- important
- moderate
- name: since
in: query
required: false
description: Filter to bulletins published on or after this date
schema:
type: string
format: date
example: '2025-01-01'
responses:
'200':
description: All matching bulletins
content:
application/json:
schema:
$ref: '#/components/schemas/SecurityBulletinsResponse'
/api/v1/security-bulletins/{id}:
get:
operationId: getSecurityBulletin
summary: One security bulletin by id
description: Exact lookup by bulletin id, e.g. `APSB24-40`.
tags:
- Security
parameters:
- name: id
in: path
required: true
description: Adobe security bulletin id
schema:
type: string
example: APSB24-40
responses:
'200':
description: The requested bulletin
content:
application/json:
schema:
$ref: '#/components/schemas/SecurityBulletinResponse'
'404':
description: Unknown bulletin id
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/{distribution}/versions/{version}/security:
get:
operationId: getVersionSecurity
summary: Security status for one release
description: Which security bulletins affect this version, which patch fixes each one, and the recommended version in the same release line.
tags:
- Security
parameters:
- name: distribution
in: path
required: true
description: Magento distribution slug
schema:
type: string
enum:
- magento-community
- magento-commerce
- mage-os
example: magento-community
- name: version
in: path
required: true
description: Exact version key, including any patch suffix
schema:
type: string
example: 2.4.7
responses:
'200':
description: Security status for the requested release
content:
application/json:
schema:
$ref: '#/components/schemas/VersionSecurityResponse'
'404':
description: Unknown distribution slug or unknown version
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
components:
schemas:
VersionSecurityReport:
type: object
required:
- distribution
- version
- status
- vulnerableTo
- fixedBy
- recommendedVersion
properties:
distribution:
type: string
enum:
- magento-community
- magento-commerce
- mage-os
version:
type: string
example: 2.4.7
status:
type: string
enum:
- vulnerable
- secure
- eol
- unknown
vulnerableTo:
type: array
items:
$ref: '#/components/schemas/VersionSecurityBulletinRef'
fixedBy:
type: array
description: Bulletins already fixed in this release, shipped in it or inherited from an earlier patch of the line. Nothing to install.
items:
$ref: '#/components/schemas/VersionSecurityBulletinRef'
recommendedVersion:
type:
- string
- 'null'
description: 'Newest release of the same line, or this release when it is the newest. Not a verified safe target: it can have open bulletins of its own.'
example: 2.4.7-p10
Error:
type: object
required:
- error
properties:
error:
type: string
const: not found
VersionSecurityResponse:
type: object
required:
- data
- _documentation
- _description
properties:
data:
$ref: '#/components/schemas/VersionSecurityReport'
_documentation:
type: string
format: uri
example: https://magento.watch/api
_description:
type: string
example: Security status for 2.4.7
VersionSecurityBulletinRef:
type: object
required:
- id
- severity
- publishedDate
- cves
- fixedIn
properties:
id:
type: string
example: APSB24-40
severity:
type: string
enum:
- critical
- important
- moderate
publishedDate:
type: string
format: date
cves:
type: array
items:
type: string
fixedIn:
type:
- string
- 'null'
example: 2.4.7-p1
isolatedPatches:
type: array
items:
$ref: '#/components/schemas/IsolatedPatch'
IsolatedPatch:
type: object
required:
- id
- appliesTo
- url
properties:
id:
type: string
appliesTo:
type: array
items:
type: string
url:
type: string
format: uri
SecurityBulletinsResponse:
type: object
required:
- data
- _documentation
- _description
properties:
data:
type: object
description: Bulletin id to bulletin object
additionalProperties:
$ref: '#/components/schemas/SecurityBulletin'
_documentation:
type: string
format: uri
example: https://magento.watch/api
_description:
type: string
SecurityBulletinResponse:
type: object
required:
- data
- _documentation
- _description
properties:
data:
$ref: '#/components/schemas/SecurityBulletin'
_documentation:
type: string
format: uri
example: https://magento.watch/api
_description:
type: string
example: Security bulletin APSB24-40 details
SecurityCve:
type: object
required:
- id
- cvss
- type
- impact
- authenticationRequired
properties:
id:
type: string
example: CVE-2024-34102
cvss:
type:
- number
- 'null'
example: 9.8
type:
type:
- string
- 'null'
example: improper-restriction-of-xml-external-entity-reference
impact:
type:
- string
- 'null'
example: arbitrary-code-execution
authenticationRequired:
type:
- boolean
- 'null'
SecurityBulletin:
type: object
required:
- id
- title
- summary
- publishedDate
- severity
- cves
- fixedIn
- isolatedPatches
- references
properties:
id:
type: string
example: APSB24-40
title:
type: string
summary:
type: string
description: Plain-text explanation of the flaw, the affected component and attacker impact
publishedDate:
type: string
format: date
severity:
type: string
enum:
- critical
- important
- moderate
cves:
type: array
items:
$ref: '#/components/schemas/SecurityCve'
fixedIn:
type: object
description: Distribution slug to first-patched version in each affected release line
additionalProperties:
type: array
items:
type: string
isolatedPatches:
type: array
items:
$ref: '#/components/schemas/IsolatedPatch'
references:
type: array
items:
type: string
format: uri