MediaValet Keywords API
The controlled keyword vocabulary and per-asset tagging, with keyword approval workflow. 3 operations.
The controlled keyword vocabulary and per-asset tagging, with keyword approval workflow. 3 operations.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/mediavalet:mediavalet-keywords-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: MediaValet Keywords API
description: The MediaValet API is a RESTful, JSON, hypermedia-driven service that supplies data to clients consuming the MediaValet cloud digital asset management (DAM) platform.
version: '1.0'
contact:
name: MediaValet
url: https://developer.mediavalet.com
termsOfService: https://www.mediavalet.com/terms-of-service
servers:
- url: https://api.mediavalet.com
description: MediaValet API gateway (public)
security:
- oauth2:
- api
subscriptionKey: []
tags:
- name: Keywords
description: Keyword vocabulary and per-asset tagging.
paths:
/keywords:
get:
operationId: retrieveKeywords
summary: Retrieve Keywords
description: Returns all keywords in library.
tags:
- Keywords
parameters:
- name: x-mv-api-version
in: header
required: false
description: (Required) The requested API version
schema:
type: string
example: '1.2'
responses:
'200':
description: Request was accepted.
content:
application/json:
schema:
type: array
items:
type: object
properties:
id:
type: string
keywordName:
type: string
isSearchable:
type: boolean
isApproved:
type: boolean
groupName:
type: string
groupPath:
type: string
approvedAt:
type: string
format: date-time
approvedBy:
type: string
format: uuid
requestedAt:
type: string
format: date-time
approvalStatus:
type: string
requestedBy:
type: string
format: uuid
_links:
type: object
properties:
self:
type: string
functions:
type: array
items:
type: string
translationKeys:
type: object
properties:
sit0:
type: object
consecteturcc:
type: object
officia_3f:
type: object
irure_e:
type: object
interpolations:
type: object
properties:
dolore99c:
type: object
voluptate__b:
type: object
permissions:
type: array
items:
type: string
example:
- id: <string>
keywordName: <string>
isSearchable: <boolean>
isApproved: <boolean>
groupName: <string>
groupPath: <string>
approvedAt: <dateTime>
approvedBy: <uuid>
requestedAt: <dateTime>
approvalStatus: <string>
requestedBy: <uuid>
_links:
self: <string>
functions:
- <string>
- <string>
translationKeys:
sit0: {}
consecteturcc: {}
officia_3f: {}
irure_e: {}
interpolations:
dolore99c: {}
voluptate__b: {}
permissions:
- asset:shareAsBrandedPortal
- asset:shareAsLightbox
- id: <string>
keywordName: <string>
isSearchable: <boolean>
isApproved: <boolean>
groupName: <string>
groupPath: <string>
approvedAt: <dateTime>
approvedBy: <uuid>
requestedAt: <dateTime>
approvalStatus: <string>
requestedBy: <uuid>
_links:
self: <string>
functions:
- <string>
- <string>
translationKeys:
sit_c: {}
interpolations:
elitfb5: {}
temporb4: {}
suntb: {}
permissions:
- asset:downloadFromMvd
- asset:shareAsLightbox
'403':
description: The user does not have permission to perform this operation.
'500':
description: The request failed because of a problem on the server.
post:
operationId: createKeyword
summary: Create Keyword
description: Creates a keyword in the library.
tags:
- Keywords
parameters:
- name: x-mv-api-version
in: header
required: false
description: (Required) The requested API version
schema:
type: string
example: '1.2'
requestBody:
required: false
content:
text/plain:
schema:
type: string
responses:
'202':
description: Request was accepted.
'403':
description: The user does not have permission to perform this operation.
'500':
description: The request failed because of a problem on the server.
/keywords/{keyword}:
patch:
operationId: updateKeyword
summary: Update Keyword
description: Update a keyword.
tags:
- Keywords
parameters:
- name: keyword
in: path
required: true
description: keyword path parameter.
schema:
type: string
- name: x-mv-api-version
in: header
required: false
description: (Required) The requested API version
schema:
type: string
example: '1.2'
requestBody:
required: true
content:
application/json:
schema:
type: array
items:
type: object
properties:
op:
type: string
path:
type: string
value:
type: object
from:
type: string
example:
- op: <string>
path: <string>
value: {}
from: <string>
- op: <string>
path: <string>
value: {}
from: <string>
responses:
'202':
description: Request was accepted.
content:
application/json:
schema:
type: object
properties:
id:
type: string
keywordName:
type: string
isSearchable:
type: boolean
isApproved:
type: boolean
groupName:
type: string
groupPath:
type: string
approvedAt:
type: string
format: date-time
approvedBy:
type: string
format: uuid
requestedAt:
type: string
format: date-time
approvalStatus:
type: string
requestedBy:
type: string
format: uuid
_links:
type: object
properties:
self:
type: string
functions:
type: array
items:
type: string
translationKeys:
type: object
properties:
magna_ca:
type: object
velit__7:
type: object
minim_6c:
type: object
interpolations:
type: object
properties:
pariatur7d4:
type: object
permissions:
type: array
items:
type: string
example:
id: <string>
keywordName: <string>
isSearchable: <boolean>
isApproved: <boolean>
groupName: <string>
groupPath: <string>
approvedAt: <dateTime>
approvedBy: <uuid>
requestedAt: <dateTime>
approvalStatus: <string>
requestedBy: <uuid>
_links:
self: <string>
functions:
- <string>
- <string>
translationKeys:
magna_ca: {}
velit__7: {}
minim_6c: {}
interpolations:
pariatur7d4: {}
permissions:
- asset:createVideoClip
- asset:createVideoClip
'403':
description: The user does not have permission to perform this operation.
'500':
description: The request failed because of a problem on the server.
components:
securitySchemes:
oauth2:
type: oauth2
description: OAuth 2.0 / OpenID Connect issued by https://iam.mediavalet.com via https://login.mediavalet.com. Send the access token as a Bearer Authorization header.
flows:
authorizationCode:
authorizationUrl: https://login.mediavalet.com/connect/authorize
tokenUrl: https://login.mediavalet.com/connect/token
refreshUrl: https://login.mediavalet.com/connect/token
scopes:
openid: OpenID Connect identity
profile: User profile claims
api: Access the MediaValet API
api:service_principal: Service-principal (machine) access to the MediaValet API
iam.admin: Administer MediaValet identity and access management
iam.provisioning: Provision users and organizations
offline_access: Obtain a refresh token
clientCredentials:
tokenUrl: https://login.mediavalet.com/connect/token
scopes:
api: Access the MediaValet API
api:service_principal: Service-principal (machine) access to the MediaValet API
password:
tokenUrl: https://login.mediavalet.com/connect/token
scopes:
openid: OpenID Connect identity
api: Access the MediaValet API
offline_access: Obtain a refresh token
subscriptionKey:
type: apiKey
in: header
name: Ocp-Apim-Subscription-Key
description: Per-account API subscription key issued through the MediaValet Developer Portal (Azure API Management).