Metadata, tags & search
Attach descriptive and technical metadata, tag assets, and find them again with full-text and filtered search.
Assets carry two kinds of metadata — technical (read off the file itself) and free-form (whatever your application wants to attach) — plus tags, and both feed the same search endpoint.
1. Extract technical metadata
Codec, resolution, duration, and bitrate are not known until you ask for them:
curl -X POST https://<your-instance>/api/v1/assets/<id>/extract-metadataResults land on the asset's technicalMetadata field (see the Asset entity).
2. Attach free-form metadata
curl -X PUT https://<your-instance>/api/v1/assets/<id>/metadata \
-H "Content-Type: application/json" \
-d '{"key-value": "pairs specific to your application"}'This is a full replace, not a merge — see PUT /api/v1/assets/{id}/metadata in the Assets reference.
3. Tag assets
curl -X POST https://<your-instance>/api/v1/assets/<id>/tags \
-H "Content-Type: application/json" \
-d '{"tag": "keynote"}'Remove one with DELETE /api/v1/assets/{id}/tags/{tag}.
4. Search
One endpoint covers both free text and exact filters, ANDed together and paginated:
curl "https://<your-instance>/api/v1/search?q=keynote&tags=stage-a&page=1&pageSize=20"Exact-filter fields: tags, mimeType, metadata.<key>, tamsFlowId, tamsTimerange. Free text (q) matches over name and description. Full shape in the Search reference.
GET /api/v1/assets/search is a deprecated, free-text-only alias kept for backward compatibility — new integrations should use /api/v1/search above.5. Audio and subtitle tracks
List an asset's tracks with GET /api/v1/assets/{id}/tracks; add or remove one with POST /api/v1/assets/{id}/audio-tracks / POST /api/v1/assets/{id}/subtitle-tracks and their DELETE counterparts. See the Assets reference for the full set.