openapi: 3.0.3
info:
title: MediaValet Open Assets Attributes API
description: 'The MediaValet Open API is a RESTful, JSON, hypermedia-driven interface to the MediaValet cloud digital asset management (DAM) platform. It lets developers and partners automate the management of digital assets, categories, attributes, keywords, uploads, and users. Requests are made to the API gateway at https://api.mediavalet.com and must carry two credentials: an OAuth 2.0 (OIDC) Bearer access token obtained from https://login.mediavalet.com/connect/token, and a per-account subscription key sent in the Ocp-Apim-Subscription-Key header. Access to the API requires a MediaValet subscription and Developer Portal registration. The paths documented here are modeled from MediaValet''s public developer documentation and community SDKs; verify exact request/response schemas against the live reference at docs.mediavalet.com.'
version: '1.0'
contact:
name: MediaValet
url: https://www.mediavalet.com
servers:
- url: https://api.mediavalet.com
description: MediaValet API gateway (public)
security:
- oauth2: []
subscriptionKey: []
tags:
- name: Attributes
description: Custom metadata fields and their values on assets.
paths:
/attributes:
get:
operationId: listAttributes
tags:
- Attributes
summary: List attributes
description: List the custom attribute (metadata field) definitions in the library.
responses:
'200':
description: A list of attribute definitions.
content:
application/json:
schema:
type: object
'401':
$ref: '#/components/responses/Unauthorized'
post:
operationId: createAttribute
tags:
- Attributes
summary: Create an attribute
description: Create a new custom attribute definition.
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/Attribute'
responses:
'201':
description: The created attribute.
content:
application/json:
schema:
$ref: '#/components/schemas/Attribute'
'401':
$ref: '#/components/responses/Unauthorized'
/attributes/{attributeId}:
get:
operationId: getAttribute
tags:
- Attributes
summary: Get an attribute
description: Retrieve a single attribute definition by its identifier.
parameters:
- name: attributeId
in: path
required: true
schema:
type: string
responses:
'200':
description: The requested attribute.
content:
application/json:
schema:
$ref: '#/components/schemas/Attribute'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
components:
responses:
Unauthorized:
description: Authentication failed - missing or invalid access token or subscription key.
NotFound:
description: The requested resource was not found.
schemas:
Attribute:
type: object
properties:
id:
type: string
format: uuid
name:
type: string
type:
type: string
description: The data type of the attribute, e.g. text, number, date, list.
securitySchemes:
oauth2:
type: oauth2
description: OAuth 2.0 / OpenID Connect. Obtain an access token from https://login.mediavalet.com/connect/token using the authorization code flow (interactive apps) or password / client-credential grants, with scopes openid api offline_access. Send the token as a Bearer Authorization header.
flows:
authorizationCode:
authorizationUrl: https://login.mediavalet.com/connect/authorize
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.