v1 Overview
API v1 Overview
https://api.dtpr.io/api/v1v1 is preserved, not maintained. It serves exactly what the retired dtpr.io v1 endpoints served — byte for byte, apart from the icon URLs in the response bodies, which now point at https://api.dtpr.io/api/v1/icons/ — and its content will not change again. It stays published because the device taxonomy is not yet available from v2. Point new integrations at v2 where you can.API v1 provides three JSON endpoints for accessing the DTPR taxonomy, plus an icon endpoint:
Endpoints
GET /api/v1/elements
Returns all elements across all datachain types.
Query parameters:
locales— accepted by the route, but not usable. See below.
locales value to this endpoint returns 500 Server Error. The retired handler emitted element variables without a label key and then filtered on it; the frozen surface reproduces that failure deliberately rather than repairing it. Use GET /api/v1/elements/:datachain_type when you need locale filtering.Response: Array of element objects (see Elements)
GET /api/v1/elements/:datachain_type
Returns elements filtered to a specific datachain type.
Path parameters:
datachain_type(required) — Must bedeviceorai
Query parameters:
locales(optional) — Comma-separated locale codes to filter localized content
Response: Array of element objects (see Elements)
GET /api/v1/categories/:datachain_type
Returns categories for a specific datachain type, sorted by display order.
Path parameters:
datachain_type(required) — Must bedeviceorai
Query parameters:
locales(optional) — Comma-separated locale codes to filter localized content
Response: Array of category objects (see Categories)
GET /api/v1/icons/:icon_id.svg
Returns one element icon as image/svg+xml. v1 serves 148 icons.
Path parameters:
icon_id(required) — The element icon id, with the.svgsuffix. Ids match[a-zA-Z0-9_-]
Icon namespaces do not fall back across versions: the ids that exist only in v1 return 404 under /api/v0/icons/. The icon.url in every v1 element response already points at this endpoint, so a consumer that follows the URL it is given needs no separate change.
Common patterns
All v1 endpoints share these behaviors:
- Locale arrays — User-facing text is returned as arrays of
{ locale, value }objects - Schema metadata — Each object in the response includes a
schemasection with name, id, version, and namespace - Version timestamps — Elements and categories include ISO 8601 version timestamps calculated from the latest update across all locales
- Variable inheritance — Elements inherit variables defined at the category level