Skip to content

API Endpoint Reference (1.5)

Tenovos has introduced version 1.5 to provide non-breaking improvements over previous versions.

Key Changes:

  • Authentication Standards now include OAuth2 code flow.
  • Client ID is no longer required to be passed when requesting an Authorization token using our Standard Auth from v1.4
  • New endpoints have been added and will continue to be added until v2 is generally available to all customers.
    • Adaptive Template endpoints
    • A new Get Asset endpoint with a simplified Response
    • A new Create Asset endpoint with simplified payloads for the Request and Response
    • A new Update Asset endpoint with simplified payloads for the Request and Response
    • Metadata Admin API endpoints for managing Attributes, Groups, and Templates
  • We've made some performance improvements to most endpoints
Download OpenAPI description
Languages
Servers
https://api.uat.tenovos.io/v1
https://api.tenovos.io/v1

ACTIONS

Invoke the Action API to retrieve information about invoked Actions.

Operations

ADAPTIVE TEMPLATES

Invoke the API to retrieve information about invoked Actions.

Operations

ASSETS

Invoke the Asset API to create, retrieve, manipulate, and share Assets. This API also provides operations to manage Asset relationships and download Asset content.

Operations

AUTHENTICATION

Invoke the Authentication API to generate, refresh, and revoke access tokens. An access token is required to perform any authorized API operation.

Operations

CDN (Coming Soon!)

Tenovos Content Delivery Network (CDN) - Coming Soon!

Tenovos CDN: Pull Zone Overview

Tenovos CDN provides global content acceleration and optimization through a pull zone architecture, ensuring that your assets are delivered to end users with maximum speed, reliability, and efficiency. A Content Delivery Network (CDN) works by caching static content—such as images, videos, and other media—on servers distributed across the globe. When an asset is requested, the CDN serves it from the nearest edge location, reducing load times and offloading traffic from the origin server, which in this case is Tenovos DAM.

A pull zone is the core mechanism that powers this system. It automatically fetches content from the origin the first time it is requested, then caches it at the edge. Subsequent requests are served directly from the CDN cache, improving response times and reducing bandwidth consumption.

Through the Tenovos CDN API, you can create, update, and manage pull zones programmatically. Pull zones support advanced features such as global edge caching, cache purging, bandwidth controls, and real-time performance statistics like cache hit rate and geographic request distribution. Optional optimization settings allow you to enhance performance further by enabling image compression, WebP and AVIF support, and content minification.

With just a few API calls, you can fully integrate high-performance content delivery into your Tenovos workflows—no complex infrastructure required.

Operations

COLLECTIONS

Invoke the Collection API to create, retrieve, edit, and delete Collections. Collections are used to group and catalog related Assets for quick access and consumption. Collections can be configured as:

  • private: Visible only to the user who created the Collection.
  • secured: Visible to users with.

When retrieving the Assets within a Collection, the requesting user will only see the Assets that the user has access to view. For example, a librarian may see all Assets within a Collection, but a general consumer user may only see a portion of those Assets, due to limited security access.

Operations

METADATA

Invoke the Metadata API to manage Metadata Attributes, Groups, and Templates. A Metadata Template defines a set of Metadata Attributes of varying types, including Text, Date, Controlled Vocabulary, Tabular, and Cascading Attributes. When a Metadata Template is assigned to a new Asset, the corresponding Metadata Attributes will be available for population on the Asset.

Admin Endpoints (NEW!): Create, read, update, and delete Metadata Attributes and Metadata Groups. These endpoints require the Metadata Management admin privilege.

Operations

(NEW!) List Metadata Groups (Paginated)

Request

Retrieve a paginated list of metadata groups for UI consumption. Supports filtering by name, pagination via offset, and sorting via query parameters.

The user submitting the request must have the Metadata Management admin privilege.

Security
ApiKeyAuth or BasicAuth
Query
searchTermstring

Partial, case-insensitive match against group name. When omitted, all groups are returned (subject to pagination).

Example: searchTerm=general
frominteger

Search offset from which results will start. Defaults to 0.

Default 0
Example: from=0
limitinteger<= 100

Number of results to return. Defaults to 100. Maximum 100.

Default 100
Example: limit=100
sortFieldstring

Field to sort by. Defaults to groupName.

Default "groupName"
Enum"groupName""createdEpoch""lastUpdatedEpoch"
orderstring

Sort direction. Defaults to asc.

Default "asc"
Enum"asc""desc"
Headers
X-API-Keystringrequired

Customer-specific API key required to invoke API.

Authorizationstringrequired

Provided by Authentication Token creation operation.

curl -i -X GET \
  'https://api.uat.tenovos.io/v1/metadata/groups?searchTerm=general&from=0&limit=100&sortField=groupName&order=asc' \
  -H 'Authorization: string' \
  -H 'X-API-Key: YOUR_API_KEY_HERE'

Responses

Paginated list of metadata groups.

Bodyapplication/json
hitCountinteger

Total number of groups matching the search criteria.

Example: 12
resultsArray of objects

Array of group summary objects.

Response
application/json
{ "hitCount": 12, "results": [ { … } ] }

(NEW!) Create Metadata Group

Request

Create a new metadata group. A group has a name, an ordered list of attribute IDs, and an optional flag controlling whether the group name is visible.

The order of attributes in the request is preserved and reflected in the response.

The user submitting the request must have the Metadata Management admin privilege.

Security
ApiKeyAuth or BasicAuth
Headers
X-API-Keystringrequired

Customer-specific API key required to invoke API.

Authorizationstringrequired

Provided by Authentication Token creation operation.

Content-Typestringrequired
Value"application/json"
Bodyapplication/jsonrequired

JSON object defining the new metadata group.

namestringrequired

Display name of the metadata group.

Example: "Product Information"
attributeIdsArray of strings(uuid)required

Ordered list of attribute IDs to include in the group. Order is preserved in the response.

Example: ["01dc8715-c660-44cb-b3a4-70f4779e6651","b1feb2cd-ab35-4fc6-917a-37a2e8419167","187f9ef9-b1e7-4a33-95e3-8ee99206d9fc","013ad220-b377-432d-bc6d-b1614dbb82c1"]
isGroupNameVisibleboolean

Whether the group name is visible when rendered on an asset. Defaults to false.

Default false
Example: false
curl -i -X POST \
  https://api.uat.tenovos.io/v1/metadata/group \
  -H 'Authorization: string' \
  -H 'Content-Type: application/json' \
  -H 'X-API-Key: YOUR_API_KEY_HERE' \
  -d '{
    "name": "Product Information",
    "attributeIds": [
      "01dc8715-c660-44cb-b3a4-70f4779e6651",
      "b1feb2cd-ab35-4fc6-917a-37a2e8419167",
      "187f9ef9-b1e7-4a33-95e3-8ee99206d9fc",
      "013ad220-b377-432d-bc6d-b1614dbb82c1"
    ],
    "isGroupNameVisible": false
  }'

Responses

The newly created metadata group object with resolved attributes.

Bodyapplication/json
idstring(uuid)

Unique ID of the group.

Example: "52ce0235-02cc-46f6-8bdb-05238c76bf83"
namestring

Display name of the group.

Example: "Product Information"
searchFieldstring

System-generated slug derived from the group name. Immutable after creation.

Example: "product_information"
customerIdstring

ID of the customer/tenant.

Example: "1739271540099"
createdBystring(uuid)

UUID of the user who created the group.

Example: "dc63db1b-1e63-43bc-877e-418931b6895c"
createdEpochinteger

Creation timestamp in Unix milliseconds.

Example: 1773070355217
createdDatestring(date-time)

Human-readable creation date in ISO 8601 format.

Example: "2026-03-20T12:05:27Z"
lastUpdatedBystring(uuid)

UUID of the user who last updated the group.

Example: "dc63db1b-1e63-43bc-877e-418931b6895c"
lastUpdatedEpochinteger

Last updated timestamp in Unix milliseconds.

Example: 1773070355217
lastUpdatedDatestring(date-time)

Human-readable last updated date in ISO 8601 format.

Example: "2026-03-20T12:05:27Z"
isGroupNameVisibleboolean

Whether the group name is visible when rendered on an asset.

Example: false
usedInobject

Describes where the group is currently referenced. Present on GET by ID responses.

attributesArray of objects

Ordered list of attributes in the group.

Response
application/json
{ "id": "52ce0235-02cc-46f6-8bdb-05238c76bf83", "name": "Product Information", "searchField": "product_information", "customerId": "1739271540099", "createdBy": "dc63db1b-1e63-43bc-877e-418931b6895c", "createdEpoch": 1773070355217, "createdDate": "2026-03-20T12:05:27Z", "lastUpdatedBy": "dc63db1b-1e63-43bc-877e-418931b6895c", "lastUpdatedEpoch": 1773070355217, "lastUpdatedDate": "2026-03-20T12:05:27Z", "isGroupNameVisible": false, "attributes": [ { … }, { … }, { … }, { … } ] }

(NEW!) Get Metadata Group

Request

Retrieve a single metadata group by its ID, returning the full group configuration including the resolved ordered list of attributes and usedIn references.

The user submitting the request must have the Metadata Management admin privilege.

Security
ApiKeyAuth or BasicAuth
Path
idstring(uuid)required

The unique ID of the metadata group to retrieve.

Example: 52ce0235-02cc-46f6-8bdb-05238c76bf83
Headers
X-API-Keystringrequired

Customer-specific API key required to invoke API.

Authorizationstringrequired

Provided by Authentication Token creation operation.

curl -i -X GET \
  https://api.uat.tenovos.io/v1/metadata/group/52ce0235-02cc-46f6-8bdb-05238c76bf83 \
  -H 'Authorization: string' \
  -H 'X-API-Key: YOUR_API_KEY_HERE'

Responses

The full metadata group object with resolved attributes and usedIn references.

Bodyapplication/json
idstring(uuid)

Unique ID of the group.

Example: "52ce0235-02cc-46f6-8bdb-05238c76bf83"
namestring

Display name of the group.

Example: "Product Information"
searchFieldstring

System-generated slug derived from the group name. Immutable after creation.

Example: "product_information"
customerIdstring

ID of the customer/tenant.

Example: "1739271540099"
createdBystring(uuid)

UUID of the user who created the group.

Example: "dc63db1b-1e63-43bc-877e-418931b6895c"
createdEpochinteger

Creation timestamp in Unix milliseconds.

Example: 1773070355217
createdDatestring(date-time)

Human-readable creation date in ISO 8601 format.

Example: "2026-03-20T12:05:27Z"
lastUpdatedBystring(uuid)

UUID of the user who last updated the group.

Example: "dc63db1b-1e63-43bc-877e-418931b6895c"
lastUpdatedEpochinteger

Last updated timestamp in Unix milliseconds.

Example: 1773070355217
lastUpdatedDatestring(date-time)

Human-readable last updated date in ISO 8601 format.

Example: "2026-03-20T12:05:27Z"
isGroupNameVisibleboolean

Whether the group name is visible when rendered on an asset.

Example: false
usedInobject

Describes where the group is currently referenced. Present on GET by ID responses.

attributesArray of objects

Ordered list of attributes in the group.

Response
application/json
{ "id": "52ce0235-02cc-46f6-8bdb-05238c76bf83", "name": "Product Information", "searchField": "product_information", "customerId": "1739271540099", "createdBy": "dc63db1b-1e63-43bc-877e-418931b6895c", "createdEpoch": 1773070355217, "createdDate": "2026-03-20T12:05:27Z", "lastUpdatedBy": "dc63db1b-1e63-43bc-877e-418931b6895c", "lastUpdatedEpoch": 1773070355217, "lastUpdatedDate": "2026-03-20T12:05:27Z", "isGroupNameVisible": false, "usedIn": { "metadataTemplates": [ … ] }, "attributes": [ { … }, { … }, { … }, { … } ] }

REQUESTS

Invoke these API's to create new Requests and manage existing Requests.

Operations

SECURITY

Invoke the Metadata API to retrieve Security Template information to be applied to Assets during Asset creation or edit.

Operations

PEOPLE

Invoke the User API to retrieve User profile information.

Operations

WEBHOOKS

Tenovos Webhook Subscriptions

For more information about our Webhooks, see the Webhook section of our Developer Portal

Operations

PROOFING

Operations