Skip to content

API Endpoint Reference (1.0)

Tenovos offers a REST API for partner and customer integrations. This API provides a RESTful endpoint, token-based authorization, HTTP methods for operations, and JSON-formatted payloads. Use this API to incorporate Tenovos functionality into your own application.

This API is up-versioned when a breaking change is introduced such as

  • a change in the format of the response data for one or more calls
  • a change in the request or response type (i.e. changing an integer to a float)
  • removing any part of the API.

This API is not up-versioned for non-breaking changes such as

  • new endpoints
  • new response parameters
  • new optional request parameters
Download OpenAPI description
Languages
Servers
https://enterprise.services.tenovos.io/content-store-v1
https://enterprise-2.services.tenovos.io/content-store-v1
https://enterprise3.services.tenovos.io/content-store-v1
https://enterprise-4.services.tenovos.io/content-store-v1

Action Operations

Invoke the Action API to retrieve information about invoked Actions.

Operations

Asset Operations

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 Operations

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

Operations

Collection Operations

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 shared users with permission.

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

Customer Operations

Invoke the Customer API to retrieve Customer account profile information.

Operations

Metadata Operations

Invoke the Metadata API to retrieve Metadata Template to be applied to Assets during Asset creation. 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.

Operations

Retrieve all Metadata Templates available to the current User.

Request

Retrieve all metadata templates available to the requesting user

The user submitting the request must have administrator rights to view metadata templates.

Security
ApiKeyAuth or BasicAuth
Headers
X-API-Keystringrequired

Customer-specific API key required to invoke API.

Authorizationstringrequired

Provided by Authentication Token creation operation

AccessTokenstringrequired

JWT token provided by Authentication Token creation operation.

Content-Typestringrequired
Value"application/json"
curl -i -X GET \
  https://enterprise.services.tenovos.io/content-store-v1/metadata/template \
  -H 'AccessToken: string' \
  -H 'Authorization: string' \
  -H 'Content-Type: application/json' \
  -H 'X-API-Key: YOUR_API_KEY_HERE'

Responses

The Response Body will be a JSON array of template objects.

Bodyapplication/jsonArray [
templateobject(MetadataTemplate_template)
]
Response
application/json
[ { "template": { … }, "templateId": "b7b4e518-b221-40ec-9051-3a9596883cf5", "templateName": "Images", "createdEpoch": 1588094144567, "lastUpdatedEpoch": 1719233797847, "templateType": [ … ] } ]

Get Metadata Template by ID.

Request

Retrieve the metadata template and its attributes list by template ID

The user submitting the request to metadata template must have the Metadata Template Management security role privilege.

In response, it will contain the metadata groups template have and each group metadata attributes list.

Security
ApiKeyAuth or BasicAuth
Path
idstringrequired

Specify a Metadata Template ID.

Headers
X-API-Keystringrequired

Customer-specific API key required to invoke API.

Authorizationstringrequired

Provided by Authentication Token creation operation

AccessTokenstringrequired

JWT token provided by Authentication Token creation operation.

Content-Typestringrequired
Value"application/json"
curl -i -X GET \
  'https://enterprise.services.tenovos.io/content-store-v1/metadata/template/{id}' \
  -H 'AccessToken: string' \
  -H 'Authorization: string' \
  -H 'Content-Type: application/json' \
  -H 'X-API-Key: YOUR_API_KEY_HERE'

Responses

The Response Body will be a JSON object representing the metadata template.

Bodyapplication/json
templateobject(MetadataTemplate_template)
Response
application/json
{ "template": { "metadataGroups": [ … ] }, "templateId": "b7b4e518-b221-40ec-9051-3a9596883cf5", "templateName": "Images", "createdEpoch": 1588094144567, "lastUpdatedEpoch": 1719233797847, "templateType": [ "asset" ] }

Retrieve all Controlled Vocabularies available to the current User.

Request

Retrieve all the controlled vocabularies available to the current user.

In response, it will contain the list of metadata key/value pair and metadata definition attributes like id, name, type and search fields etc.

Security
ApiKeyAuth or BasicAuth
Headers
X-API-Keystringrequired

Customer-specific API key required to invoke API.

Authorizationstringrequired

Provided by Authentication Token creation operation

AccessTokenstringrequired

JWT token provided by Authentication Token creation operation.

curl -i -X GET \
  https://enterprise.services.tenovos.io/content-store-v1/metadata/vocabulary \
  -H 'AccessToken: string' \
  -H 'Authorization: string' \
  -H 'X-API-Key: YOUR_API_KEY_HERE'

Responses

The Response Body will be a JSON-formatted list including the following properties.

  • metadata: Vocabulary metadata
    • values: Key/Value list
      • valueId
      • valueName
    • searchable: Toggle searchability
  • metadataDefinitionId
  • metadataDefinitionName
  • metadataDefinitionSearchField: Map search field for this metadata definition
  • metadataDefinitionType: Metadata definition type
  • createdEpoch: Create time in milliseconds
  • lastUpdatedEpoch: Update time in milliseconds
Bodyapplication/jsonArray [
createdEpochinteger

Create time in milliseconds

Example: 1613877219787
customerIdstring

Customer Id

Example: "157167185123342"
lastUpdatedEpochinteger

Update time in milliseconds

Example: 1613877219787
metadataDefinitionIdstring(uuid)

Field ID

Example: "6c921f5c-24c2-40b9-8718-3ad2d4a6be54"
metadataDefinitionNamestring

Field Name

Example: "Colors"
metadataDefinitionSearchFieldstring

Map search field for this metadata definition

Example: "colors"
metadataDefinitionTypestring
Example: "controlledVocabulary"
metadataobject(ControlledVocabulary_metadata)

Vocabulary metadata

]
Response
application/json
[ { "createdEpoch": 1613877219787, "customerId": "157167185123342", "lastUpdatedEpoch": 1613877219787, "metadataDefinitionId": "6c921f5c-24c2-40b9-8718-3ad2d4a6be54", "metadataDefinitionName": "Colors", "metadataDefinitionSearchField": "colors", "metadataDefinitionType": "controlledVocabulary", "metadata": { … } } ]

Create a Controlled Vocabulary.

Request

Create a Controlled Vocabulary. User must have permission to create a controlled vocabulary.

In response, it will contain the object of metadata definition attributes like id, name, type and search fields etc.

Security
ApiKeyAuth or BasicAuth
Headers
X-API-Keystringrequired

Customer-specific API key required to invoke API.

Authorizationstringrequired

Provided by Authentication Token creation operation

AccessTokenstringrequired

JWT token provided by Authentication Token creation operation.

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

Vocabulary Name

Example: "Color List"
valuesArray of strings

List of vocabulary values

Example: ["Red","Blue"]
curl -i -X POST \
  https://enterprise.services.tenovos.io/content-store-v1/metadata/vocabulary \
  -H 'AccessToken: string' \
  -H 'Authorization: string' \
  -H 'Content-Type: application/json' \
  -H 'X-API-Key: YOUR_API_KEY_HERE' \
  -d '{
    "name": "Color List",
    "values": [
      "Red",
      "Blue"
    ]
  }'

Responses

The Response Body is a JSON object.

Bodyapplication/json
createdEpochinteger

Create time in milliseconds

Example: 1613877219787
customerIdstring

Customer Id

Example: "157167185123342"
lastUpdatedEpochinteger

Update time in milliseconds

Example: 1613877219787
metadataDefinitionIdstring(uuid)

Field ID

Example: "6c921f5c-24c2-40b9-8718-3ad2d4a6be54"
metadataDefinitionNamestring

Field Name

Example: "Colors"
metadataDefinitionSearchFieldstring

Map search field for this metadata definition

Example: "colors"
metadataDefinitionTypestring
Example: "controlledVocabulary"
metadataDocumentobject(ControlledVocabulary_metadata)

Vocabulary metadata

Response
application/json
{ "createdEpoch": 1613877219787, "customerId": "157167185123342", "lastUpdatedEpoch": 1613877219787, "metadataDefinitionId": "6c921f5c-24c2-40b9-8718-3ad2d4a6be54", "metadataDefinitionName": "Colors", "metadataDefinitionSearchField": "colors", "metadataDefinitionType": "controlledVocabulary", "metadataDocument": { "values": [ … ], "searchable": true } }

Get Controlled Vocabulary by ID.

Request

Retrieve the Controlled Vocabulary and its attributes by Controlled Vocabulary Id

In response, it will contain the list of metadata key/value pair and metadata definition attributes like id, name, type and search fields etc.

Security
ApiKeyAuth or BasicAuth
Path
idstringrequired

Specify a Controlled Vocabulary ID.

Headers
X-API-Keystringrequired

Customer-specific API key required to invoke API.

Authorizationstringrequired

Provided by Authentication Token creation operation

AccessTokenstringrequired

JWT token provided by Authentication Token creation operation.

curl -i -X GET \
  'https://enterprise.services.tenovos.io/content-store-v1/metadata/vocabulary/{id}' \
  -H 'AccessToken: string' \
  -H 'Authorization: string' \
  -H 'X-API-Key: YOUR_API_KEY_HERE'

Responses

The Response Body will be a JSON object

Bodyapplication/json
createdEpochinteger

Create time in milliseconds

Example: 1613877219787
customerIdstring

Customer Id

Example: "157167185123342"
lastUpdatedEpochinteger

Update time in milliseconds

Example: 1613877219787
metadataDefinitionIdstring(uuid)

Field ID

Example: "6c921f5c-24c2-40b9-8718-3ad2d4a6be54"
metadataDefinitionNamestring

Field Name

Example: "Colors"
metadataDefinitionSearchFieldstring

Map search field for this metadata definition

Example: "colors"
metadataDefinitionTypestring
Example: "controlledVocabulary"
metadataDocumentobject(ControlledVocabulary_metadata)

Vocabulary metadata

Response
application/json
{ "createdEpoch": 1613877219787, "customerId": "157167185123342", "lastUpdatedEpoch": 1613877219787, "metadataDefinitionId": "6c921f5c-24c2-40b9-8718-3ad2d4a6be54", "metadataDefinitionName": "Colors", "metadataDefinitionSearchField": "colors", "metadataDefinitionType": "controlledVocabulary", "metadataDocument": { "values": [ … ], "searchable": true } }

Remove a Controlled Vocabulary.

Request

Delete a Controlled Vocabulary.

Security
ApiKeyAuth or BasicAuth
Path
idstringrequired

Specify a Controlled Vocabulary ID.

Headers
X-API-Keystringrequired

Customer-specific API key required to invoke API.

Authorizationstringrequired

Provided by Authentication Token creation operation

AccessTokenstringrequired

JWT token provided by Authentication Token creation operation.

curl -i -X DELETE \
  'https://enterprise.services.tenovos.io/content-store-v1/metadata/vocabulary/{id}' \
  -H 'AccessToken: string' \
  -H 'Authorization: string' \
  -H 'X-API-Key: YOUR_API_KEY_HERE'

Responses

Successful operation

Bodyapplication/json
statusstring
Example: "success"
messagestring
Example: "Detailed Message"
Response
application/json
{ "status": "success", "message": "Metadata Definition delete operation succeeded" }

Update a Controlled Vocabulary.

Request

Update a Controlled Vocabulary. User must have permission to update a controlled vocabulary.

In response, it will contain the object of metadata definition attributes like id, name, type and search fields etc.

Security
ApiKeyAuth or BasicAuth
Path
idstringrequired

Specify a Controlled Vocabulary ID.

Headers
X-API-Keystringrequired

Customer-specific API key required to invoke API.

Authorizationstringrequired

Provided by Authentication Token creation operation

AccessTokenstringrequired

JWT token provided by Authentication Token creation operation.

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

The Request Body will be a JSON-formatted object including the following properties. Each property here is an operation. All of these operations can be applied in a single request. After updating the Controlled Vocabulary, execute /metadata/apply POST request to apply the new changes.

namestring

New name of the Controlled Vocabulary

Example: "Color List"
addArray of strings

JSON Array with new values to add into the Controlled Vocabulary

Example: ["Black"]
updateArray of objects(ControlledVocabularyUpdateRequest_update)

Payload to update existing values by their IDs

Example: [{"valueId":"4746f395-05ea-4cc3-9577-c636f468a59c","valueName":"Green"},{"valueId":"aaaaaaaa-bbbb-cccc-ddddd-eeeeeeeeeeee","valueName":"Blue"}]
deleteobject(ControlledVocabulary)
curl -i -X PATCH \
  'https://enterprise.services.tenovos.io/content-store-v1/metadata/vocabulary/{id}' \
  -H 'AccessToken: string' \
  -H 'Authorization: string' \
  -H 'Content-Type: application/json' \
  -H 'X-API-Key: YOUR_API_KEY_HERE' \
  -d '{
    "name": "Color List"
  }'

Responses

The Response Body will be a JSON-formatted object having operation as key and each operation including the following properties.

Bodyapplication/json
createdEpochinteger

Create time in milliseconds

Example: 1613877219787
customerIdstring

Customer Id

Example: "157167185123342"
lastUpdatedEpochinteger

Update time in milliseconds

Example: 1613877219787
metadataDefinitionIdstring(uuid)

Field ID

Example: "6c921f5c-24c2-40b9-8718-3ad2d4a6be54"
metadataDefinitionNamestring

Field Name

Example: "Colors"
metadataDefinitionSearchFieldstring

Map search field for this metadata definition

Example: "colors"
metadataDefinitionTypestring
Example: "controlledVocabulary"
metadataDocumentobject(ControlledVocabulary_metadata)

Vocabulary metadata

Response
application/json
{ "createdEpoch": 1613877219787, "customerId": "157167185123342", "lastUpdatedEpoch": 1613877219787, "metadataDefinitionId": "6c921f5c-24c2-40b9-8718-3ad2d4a6be54", "metadataDefinitionName": "Colors", "metadataDefinitionSearchField": "colors", "metadataDefinitionType": "controlledVocabulary", "metadataDocument": { "values": [ … ], "searchable": true } }

Apply the metadata definition changes.

Request

Apply the metadata definition changes. Use this operation after making any modification in metadata.

In response, it will contain the object of metadata definition attributes like id, name, type and search fields etc.

Security
ApiKeyAuth or BasicAuth
Headers
X-API-Keystringrequired

Customer-specific API key required to invoke API.

Authorizationstringrequired

Provided by Authentication Token creation operation

AccessTokenstringrequired

JWT token provided by Authentication Token creation operation.

curl -i -X POST \
  https://enterprise.services.tenovos.io/content-store-v1/metadata/apply \
  -H 'AccessToken: string' \
  -H 'Authorization: string' \
  -H 'X-API-Key: YOUR_API_KEY_HERE'

Responses

Changes applied successfully.

Bodyapplication/json
messagestring
Example: "Changes applied successfully"
Response
application/json
{ "message": "Changes applied successfully" }

Search Operations

Search for Collections by Collection name.

Perform Asset searches using keywords or Attribute-specific search terms using the Keyword Search endpoint.

Perform a scan on all assets based on search criteria using a cursor to page through the entire result set of assets.

Operations

Security Operations

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

Operations

User Operations

Invoke the User API to retrieve User profile information.

Operations

Proof Operations

Operations

Cart Operations

Operations