MediaValet Keywords API

Keyword vocabulary and per-asset tagging.

OpenAPI Specification

mediavalet-keywords-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: MediaValet Open Assets Keywords 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: Keywords
  description: Keyword vocabulary and per-asset tagging.
paths:
  /keywords:
    get:
      operationId: listKeywords
      tags:
      - Keywords
      summary: List keywords
      description: List the keyword vocabulary for the library.
      responses:
        '200':
          description: A list of keywords.
          content:
            application/json:
              schema:
                type: object
        '401':
          $ref: '#/components/responses/Unauthorized'
    post:
      operationId: createKeyword
      tags:
      - Keywords
      summary: Create a keyword
      description: Add a new keyword to the library vocabulary.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Keyword'
      responses:
        '201':
          description: The created keyword.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Keyword'
        '401':
          $ref: '#/components/responses/Unauthorized'
  /keywords/{keywordId}:
    get:
      operationId: getKeyword
      tags:
      - Keywords
      summary: Get a keyword
      description: Retrieve a single keyword by its identifier.
      parameters:
      - name: keywordId
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: The requested keyword.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Keyword'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
  /keywordGroups:
    get:
      operationId: listKeywordGroups
      tags:
      - Keywords
      summary: List keyword groups
      description: List the keyword groups that organize the keyword vocabulary.
      responses:
        '200':
          description: A list of keyword groups.
          content:
            application/json:
              schema:
                type: object
        '401':
          $ref: '#/components/responses/Unauthorized'
components:
  responses:
    Unauthorized:
      description: Authentication failed - missing or invalid access token or subscription key.
    NotFound:
      description: The requested resource was not found.
  schemas:
    Keyword:
      type: object
      properties:
        id:
          type: string
          format: uuid
        name:
          type: string
        keywordGroupId:
          type: string
          format: uuid
  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.