---
title: "Create a New Podcast"
method: POST
path: "/api/v2/content/podcasts"
tags: ["Content - Podcasts"]
---

# Create a New Podcast

`POST /api/v2/content/podcasts`

This endpoint creates a new podcast (also referred to as episode) 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

- ContentPodcastsBody
  - `data` Apiv2contentpodcastsData
    - `attributes` Apiv2contentpodcastsDataAttributes
      - `external-id` string, required — The external ID of the podcast.
      - `title` string, required — The title of the podcast.
      - `summary` string, nullable — Short summary of the podcast.
      - `provider-code` string, nullable — Unique provider code.
      - `obsolete` boolean — If the podcast should be marked as obsolete.
      - `duration` number, double, nullable — Length of the podcast. Type is supplied with duration-type.
      - `duration-type` string, nullable — Seconds, minutes, hours, or days.
      - `format` string, nullable — The type of podcast format. 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.
      - `feed-url` string, nullable — The URL of the podcast feed.
      - `publish-date` string, date-time — Date the podcast was published.
      - `image-url` string, nullable — Cover image of the podcast.
      - `url` string, required — URL location where more information can be found.
      - `author` string, nullable — The creator of the podcast.
      - `language` string, nullable — Spoken language of the podcast.
      - `owner-id` string — The unique ID of the group or user that owns the content.
      - `owner-type` string — Must be either "user" or "group".

## Response `201`

Success

- PostedPodcast
  - `data` PostedPodcastData
    - `type` string
    - `id` string
    - `attributes` PostedPodcastDataAttributes
      - `name` string, nullable — The name of the podcast.
      - `title` string, nullable — The title of the podcast.
      - `summary` string, nullable — Short summary of the podcast.
      - `provider-code` string, nullable — Unique provider code.
      - `obsolete` boolean
      - `duration` integer, nullable — The duration of the podcast.
      - `duration-type` string, decimal, nullable — The duration type of the podcast.
      - `learning-minutes` integer — The calculated value that corresponds with the learning minutes displayed on content cards in the UI.
      - `feed-url` string, nullable — URL of the podcast feed.
      - `image-url` string, nullable — Cover image of the podcast.
      - `url` string, nullable — URL location where podcast can be found.
      - `degreed-url` string, nullable — URL location of podcast within Degreed UI.
      - `author` string, nullable — Author of the podcast.
      - `language` string, nullable — The language of the podcast.
      - `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 podcast was published. (UTC)
      - `created-at` string, date-time — Date that the podcast was created. (UTC)
      - `modified-at` string, date-time — Date that the podcast was last modified. (UTC)
      - `external-id` string, nullable — The external ID of the podcast.
      - `is-internal` boolean, nullable — Indicates whether the content is owned by the organization and is not part of Degreed's external catalog. Internal content includes content that was created by the organization or shared with the organization through a bundle.
    - `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)
