---
title: "Create A New Video"
method: POST
path: "/api/v2/content/videos"
tags: ["Content - Videos"]
---

# Create A New Video

`POST /api/v2/content/videos`

This endpoint creates a new video in the system and optionally creates visibility group relationships. <br><br>For Global Admin Tool Organizations, if the `X-Degreed-Organization-Code` header is included, the endpoint will create content for the Tenant Organization related to the header value as long as the organization is a member of the Global Admin Tool Organization.<br><br>**Note:** When visibility groups are set for content, the groups must either be (a) all of privacy level `Administrative` or (b) all of a non- `Administrative` privacy level. Non- `Administrative` privacy levels include `Open`, `Closed` and `Private`. Content in `Administrative` groups is only visible to users in the `Administrative` groups. If the content is not associated with any Administrative groups, the content is visible to all users in the organization. A group's privacy level can be retrieved from the [Get a Specific Group]() endpoint.<h3>Required Scope</h3>`content:write`

## Headers

- `X-Degreed-Organization-Code` string

## Request body

- ContentVideosBody
  - `data` Apiv2contentvideosData
    - `attributes` Apiv2contentvideosDataAttributes
      - `external-id` string, required — The external ID of the video.
      - `title` string, required — The title of the video.
      - `summary` string, nullable — Short summary of the video.
      - `url` string — URL location where more information can be found.
      - `obsolete` boolean — If the video should be marked as obsolete.
      - `image-url` string, nullable — Cover image of the video.
      - `language` string, nullable — Spoken language of the video.
      - `duration` number, nullable — Length of the video. Type is supplied with `duration-type`.
      - `duration-type` string, nullable — Seconds, minutes, hours, or days.
      - `publish-date` string, date-time, nullable — Date that the video was published.
      - `format` string, nullable — The format of the video. This value appears in the UI as a filter option in search. Previously, only a list of acceptable values were allowed, however, now any value is allowed.
      - `owner-id` string — The unique ID of the group or user that owns the content.
      - `owner-type` string — Must be either "user" or "group".
      - `visibility-groups` GroupRelationship[], nullable — The relationship `id` of the relationship object must be the id of the visibility group and the type of the relationship must be groups.
        - `id` string, nullable
        - `type` string, nullable

## Response `201`

Success

- PostedVideo
  - `data` PostedVideoData
    - `type` string
    - `id` string
    - `attributes` PostedVideoDataAttributes
      - `provider-code` string, nullable — Unique provider code.
      - `title` string, nullable — The title of the video.
      - `summary` string, nullable — Short summary of the video.
      - `url` string, nullable — URL location where more information can be found.
      - `degreed-url` string, nullable — URL location of video within Degreed UI.
      - `obsolete` boolean
      - `image-url` string, nullable — Cover image of the video.
      - `language` string, nullable — The language of the video.
      - `duration` integer, nullable — The duration of the video.
      - `duration-type` string, decimal, nullable — The duration type of the video.
      - `learning-minutes` integer — The calculated value that corresponds with the learning minutes displayed on content cards in the UI. For example, if the duration of a video is 300 seconds, this is equal to 5 learning-minutes.
      - `owner-id` string — The unique ID of the group or user that owns the content.
      - `owner-type` string — Must be either "user" or "group".
      - `publish-date` string, date-time, nullable — Date that the video was published. (UTC)
      - `created-at` string, date-time — Date that the video was created. (UTC)
      - `modified-at` string, date-time — Date that the video was last modified. (UTC)
      - `external-id` string, nullable — The external ID of the video.
    - `links` SelfLink
      - `self` string
    - `relationships` GroupRelationshipsInner[]
      - `visibility-groups` GroupRelationshipInner
        - `data` GroupRelationshipInnerData
          - `id` string, nullable
          - `type` string, nullable

---

[API](https://skmtc.net/degreed/apis/degreed-api-web.md) · [All operations](https://skmtc.net/degreed/apis/degreed-api-web/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/degreed/degreed-api-web/revisions/4a22b709515c/schema)
