Put lifecycle dates in the system you already run
Your asset database knows what you own. It does not know when the manufacturer stops supporting it. These connect the two — 10,823 part numbers, every date carrying the vendor bulletin it came from. Everything below is free, needs no key, and is open source or open data.
Install into your inventory system
Three published packages. Each reads the inventory you already maintain and never writes to it.
A plugin panel on every Device and Device Type page: end-of-sale, end-of-service-life, Support Runway Score, the vendor bulletin, and a link to the full record. manage.py eosl_check audits the whole inventory at once.
pip install netbox-eosl
Matching is exact part-number only. An unknown part says so and offers a search link rather than putting a wrong date on a real device.
The eosl.lifecycle collection answers one question from a playbook, down to the part number: is this hardware still supported, and when does that stop? Returns the bulletin URL beside every date.
ansible-galaxy collection install eosl.lifecycle
No Python dependencies beyond ansible-core. One HTTP request per run, however many part numbers you check.
A read-only CLI that audits a Snipe-IT inventory against the database. Snipe-IT knows what you own; this tells you when the manufacturer stops supporting it, and links the bulletin for every date.
pip install snipeit-eosl
Read-only — it never writes to your Snipe-IT. Zero dependencies, one HTTP request regardless of inventory size.
Connect an AI assistant
An assistant that knows a switch is end-of-life usually cannot tell you where it read that. This one returns the bulletin.
A live Model Context Protocol endpoint. Five tools — single part, bulk list, search, family detail, vendor list.
claude mcp add --transport http eosl https://eosl.ai/mcp
Send Accept: text/markdown to any page on this site and get clean markdown instead of HTML — no parsing, no scraping. llms.txt maps the site for agents.
curl -H "Accept: text/markdown" https://eosl.ai/system/cisco-catalyst-3850/
Read it from your own code
CORS-open. A family index and full per-family detail, every record carrying its source URL.
curl https://eosl.ai/api/v1/family/cisco-catalyst-3850.json
A live support status inside the spreadsheet where the inventory actually lives. One line of plain text per part, comma-free so Sheets keeps it in one cell.
=IMPORTDATA("https://eosl.ai/cell/ws-c3850-24t-l.txt")Every record as CSV and JSON under CC BY 4.0 — redistributable, including commercially, with attribution. Reproduce any figure on this site independently.
Get told when something changes
Vendors revise dates. These surfaces push the change to you instead of waiting to be asked, and none of them need an account.
Subscribe in Outlook, Google or Apple Calendar — the whole database, one vendor, or a single model. Dates land in the calendar you already read.
What moved in the data and when, with RSS. New end-of-life announcements, revised dates, and products that went from current to dated.
A live SVG badge for a README, wiki or runbook that re-renders itself when the vendor date changes.
Integration questions
Do any of these need an API key or an account?
None of them. Every surface on this page is free, unauthenticated, public data. There is no key to request, no quota to apply for and no form to fill in — the endpoints are static JSON on a CDN. Use them as hard as you need to, and cache where you can.
What happens when a part number is not in the database?
Every integration says so plainly and offers a search link. None of them fuzzy-match. Guessing a neighbouring part's dates would put a wrong end-of-service-life date on a real device in your asset system, which is worse than no answer — so the answer is "not found", never a near miss presented as a hit.
Can I build my own integration on this data?
Yes, and you do not need permission. The JSON API is CORS-open and the full dataset is CC BY 4.0, so you may redistribute it — including commercially — with attribution. The three integrations here are open source; read them as worked examples of the matching rules.
How current is the data these pull?
The same database as the site, refreshed weekly from vendor sources. Every record carries a last-verified date and the URL of the manufacturer bulletin it was read from, so anything an integration shows you can be checked at the source.
Is any of this hosted for me, or does it need somewhere to run?
The MCP server, the JSON API, the spreadsheet cells, the calendar feeds and the change feed are all hosted here and need nothing from you. The three package integrations run inside the system you already operate — your NetBox, your Ansible control node, your terminal — and send no inventory anywhere except the part numbers they look up.