data
endoflife.date Lua API for KosmoKrator Agents
Agent-facing Lua documentation and function reference for the endoflife.date KosmoKrator integration.Lua Namespace
Agents call this integration through app.integrations.endoflife_date.*.
Use lua_read_doc("integrations.endoflife-date") inside KosmoKrator to discover the same reference at runtime.
Call Lua from the Headless CLI
Use kosmo integrations:lua when a shell script, CI job, cron job, or another coding CLI should run a deterministic
endoflife.date workflow without starting an interactive agent session.
kosmo integrations:lua --eval 'dump(app.integrations.endoflife_date.api_index({}))' --json kosmo integrations:lua --eval 'print(docs.read("endoflife-date"))' --json
kosmo integrations:lua --eval 'print(docs.read("endoflife-date.api_index"))' --json Workflow file
Put repeatable logic in a Lua file, then execute it with JSON output for the calling process.
local endoflife_date = app.integrations.endoflife_date
local result = endoflife_date.api_index({})
dump(result) kosmo integrations:lua workflow.lua --json
kosmo integrations:lua workflow.lua --force --json integrations:lua exposes app.integrations.endoflife_date, app.mcp.*, docs.*, json.*, and regex.*. Use app.integrations.endoflife_date.default.* or app.integrations.endoflife_date.work.* when you configured named credential accounts.
MCP-only Lua
If the script only needs configured MCP servers and does not need endoflife.date, use the narrower mcp:lua command.
# Use mcp:lua for MCP-only scripts; use integrations:lua for this integration namespace.
kosmo mcp:lua --eval 'dump(mcp.servers())' --json Agent-Facing Lua Docs
This is the rendered version of the full Lua documentation exposed to agents when they inspect the integration namespace.
endoflife.date
Namespace: endoflife-date
Use this integration to query endoflife.date API v1 for software and hardware lifecycle data: product discovery, release dates, active support, EOL, extended support, latest versions, categories, tags, and identifiers.
Authentication
The endoflife.date API v1 is public and requires no credentials.
Tools
endoflife_date_index: list the main API v1 endpoints.endoflife_date_products: list all product summaries.endoflife_date_products_full: list all products with full release data. This can be a large response; use the summary tool first when possible.endoflife_date_product: get one product with all documented release cycles.endoflife_date_product_release: get one release cycle for one product.endoflife_date_latest_release: get the latest release cycle for one product.endoflife_date_categories: list categories.endoflife_date_category_products: list product summaries in a category.endoflife_date_tags: list tags.endoflife_date_tag_products: list product summaries with a tag.endoflife_date_identifier_types: list identifier types such aspurlandcpe.endoflife_date_identifiers: list identifiers for a type and their related products.
Return Notes
This package keeps API v1 field names intact. Product summaries return
name, aliases, label, category, tags, and uri. Product details add
versionCommand, identifiers, labels, links, and releases.
Release cycles commonly include name, codename, label, releaseDate,
isLts, isEol, eolFrom, isMaintained, and latest. Some lifecycle
fields are product-specific, such as isEoas, eoasFrom, isEoes,
eoesFrom, isDiscontinued, and discontinuedFrom.
The API may permanently redirect renamed products, categories, or tags. The integration follows redirects.
Examples
local ubuntu = tools.endoflife_date_product({
product = "ubuntu"
})
local noble = tools.endoflife_date_product_release({
product = "ubuntu",
release = "24.04"
})
local latest_php = tools.endoflife_date_latest_release({
product = "php"
})
local purls = tools.endoflife_date_identifiers({
identifier_type = "purl"
})
Use product slugs or aliases in their natural form. The integration handles path encoding for release names and identifier types.
Raw agent markdown
# endoflife.date
Namespace: `endoflife-date`
Use this integration to query endoflife.date API v1 for software and hardware
lifecycle data: product discovery, release dates, active support, EOL,
extended support, latest versions, categories, tags, and identifiers.
## Authentication
The endoflife.date API v1 is public and requires no credentials.
## Tools
- `endoflife_date_index`: list the main API v1 endpoints.
- `endoflife_date_products`: list all product summaries.
- `endoflife_date_products_full`: list all products with full release data.
This can be a large response; use the summary tool first when possible.
- `endoflife_date_product`: get one product with all documented release
cycles.
- `endoflife_date_product_release`: get one release cycle for one product.
- `endoflife_date_latest_release`: get the latest release cycle for one
product.
- `endoflife_date_categories`: list categories.
- `endoflife_date_category_products`: list product summaries in a category.
- `endoflife_date_tags`: list tags.
- `endoflife_date_tag_products`: list product summaries with a tag.
- `endoflife_date_identifier_types`: list identifier types such as `purl` and
`cpe`.
- `endoflife_date_identifiers`: list identifiers for a type and their related
products.
## Return Notes
This package keeps API v1 field names intact. Product summaries return
`name`, `aliases`, `label`, `category`, `tags`, and `uri`. Product details add
`versionCommand`, `identifiers`, `labels`, `links`, and `releases`.
Release cycles commonly include `name`, `codename`, `label`, `releaseDate`,
`isLts`, `isEol`, `eolFrom`, `isMaintained`, and `latest`. Some lifecycle
fields are product-specific, such as `isEoas`, `eoasFrom`, `isEoes`,
`eoesFrom`, `isDiscontinued`, and `discontinuedFrom`.
The API may permanently redirect renamed products, categories, or tags. The
integration follows redirects.
## Examples
```lua
local ubuntu = tools.endoflife_date_product({
product = "ubuntu"
})
local noble = tools.endoflife_date_product_release({
product = "ubuntu",
release = "24.04"
})
local latest_php = tools.endoflife_date_latest_release({
product = "php"
})
local purls = tools.endoflife_date_identifiers({
identifier_type = "purl"
})
```
Use product slugs or aliases in their natural form. The integration handles
path encoding for release names and identifier types. local result = app.integrations.endoflife_date.api_index({})
print(result) Functions
api_index Read
List main endoflife.date API v1 endpoints.
- Lua path
app.integrations.endoflife_date.api_index- Full name
endoflife-date.endoflife_date_index
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
products Read
List product summaries.
- Lua path
app.integrations.endoflife_date.products- Full name
endoflife-date.endoflife_date_products
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
products_full Read
List products with full lifecycle data.
- Lua path
app.integrations.endoflife_date.products_full- Full name
endoflife-date.endoflife_date_products_full
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
product Read
Get one product with release lifecycle data.
- Lua path
app.integrations.endoflife_date.product- Full name
endoflife-date.endoflife_date_product
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
product_release Read
Get one product release cycle.
- Lua path
app.integrations.endoflife_date.product_release- Full name
endoflife-date.endoflife_date_product_release
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
latest_release Read
Get the latest release cycle for a product.
- Lua path
app.integrations.endoflife_date.latest_release- Full name
endoflife-date.endoflife_date_latest_release
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
categories Read
List lifecycle product categories.
- Lua path
app.integrations.endoflife_date.categories- Full name
endoflife-date.endoflife_date_categories
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
category_products Read
List product summaries in a category.
- Lua path
app.integrations.endoflife_date.category_products- Full name
endoflife-date.endoflife_date_category_products
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
tags Read
List lifecycle product tags.
- Lua path
app.integrations.endoflife_date.tags- Full name
endoflife-date.endoflife_date_tags
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
tag_products Read
List product summaries with a tag.
- Lua path
app.integrations.endoflife_date.tag_products- Full name
endoflife-date.endoflife_date_tag_products
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
identifier_types Read
List known identifier types.
- Lua path
app.integrations.endoflife_date.identifier_types- Full name
endoflife-date.endoflife_date_identifier_types
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
identifiers Read
List identifiers for a type and their products.
- Lua path
app.integrations.endoflife_date.identifiers- Full name
endoflife-date.endoflife_date_identifiers
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||