Podcasts
********

YTMusic.get_channel(channelId: str) -> dict[str, Any]

   Get information about a podcast channel (episodes, podcasts). For
   episodes, a maximum of 10 episodes are returned, the full list of
   episodes can be retrieved via "get_channel_episodes()"

   Parameters:
      **channelId** ("str") -- channel id

   Return type:
      "dict"["str", "Any"]

   Returns:
      Dict containing channel info

   Example:

      {
          "title": 'Stanford Graduate School of Business',
          "thumbnails": [...]
          "episodes":
          {
              "browseId": "UCGwuxdEeCf0TIA2RbPOj-8g",
              "results":
              [
                  {
                      "index": 0,
                      "title": "The Brain Gain: The Impact of Immigration on American Innovation with Rebecca Diamond",
                      "description": "Immigrants' contributions to America ...",
                      "duration": "24 min",
                      "videoId": "TS3Ovvk3VAA",
                      "browseId": "MPEDTS3Ovvk3VAA",
                      "videoType": "MUSIC_VIDEO_TYPE_PODCAST_EPISODE",
                      "date": "Mar 6, 2024",
                      "thumbnails": [...]
                  },
              ],
              "params": "6gPiAUdxWUJXcFlCQ3BN..."
          },
          "podcasts":
          {
              "browseId": null,
              "results":
              [
                  {
                      "title": "Stanford GSB Podcasts",
                      "channel":
                      {
                          "id": "UCGwuxdEeCf0TIA2RbPOj-8g",
                          "name": "Stanford Graduate School of Business"
                      },
                      "browseId": "MPSPPLxq_lXOUlvQDUNyoBYLkN8aVt5yAwEtG9",
                      "podcastId": "PLxq_lXOUlvQDUNyoBYLkN8aVt5yAwEtG9",
                      "thumbnails": [...]
                  }
             ]
          }
      }

YTMusic.get_channel_episodes(channelId: str, params: str) -> list[dict[str, Any]]

   Get all channel episodes. This endpoint is currently unlimited

   Parameters:
      * **channelId** ("str") -- channelId of the user

      * **params** ("str") -- params obtained by "get_channel()"

   Return type:
      "list"["dict"["str", "Any"]]

   Returns:
      List of channel episodes in the format of "get_channel()"
      "episodes" key

YTMusic.get_podcast(playlistId: str, limit: int | None = 100) -> dict[str, Any]

   Returns podcast metadata and episodes

   Note:

     To add a podcast to your library, you need to call
     "rate_playlist" on it

   Parameters:
      * **playlistId** ("str") -- Playlist id

      * **limit** ("int" | "None") -- How many songs to return. "None"
        retrieves them all. Default: 100

   Return type:
      "dict"["str", "Any"]

   Returns:
      Dict with podcast information

   Example:

      {
          "author":
          {
              "name": "Stanford Graduate School of Business",
              "id": "UCGwuxdEeCf0TIA2RbPOj-8g"
          },
          "title": "Think Fast, Talk Smart: The Podcast",
          "description": "Join Matt Abrahams, a lecturer of...",
          "saved": false,
          "episodes":
          [
              {
                  "index": 0,
                  "title": "132. Lean Into Failure: How to Make Mistakes That Work | Think Fast, Talk Smart: Communication...",
                  "description": "Effective and productive teams and...",
                  "duration": "25 min",
                  "videoId": "xAEGaW2my7E",
                  "browseId": "MPEDxAEGaW2my7E",
                  "videoType": "MUSIC_VIDEO_TYPE_PODCAST_EPISODE",
                  "date": "Mar 5, 2024",
                  "thumbnails": [...]
              }
          ]
      }

YTMusic.get_episode(videoId: str) -> dict[str, Any]

   Retrieve episode data for a single episode

   Note:

     To save an episode, you need to call "add_playlist_items" to add
     it to the "SE" (saved episodes) playlist.

   Parameters:
      **videoId** ("str") -- browseId (MPED..) or videoId for a single
      episode

   Return type:
      "dict"["str", "Any"]

   Returns:
      Dict containing information about the episode

   The description elements are based on a custom dataclass, not shown
   in the example below The description text items also contain "n" to
   indicate newlines, removed below due to RST issues

   Example:

      {
          "author":
          {
              "name": "Stanford GSB Podcasts",
              "id": "MPSPPLxq_lXOUlvQDUNyoBYLkN8aVt5yAwEtG9"
          },
          "title": "124. Making Meetings Me...",
          "date": "Jan 16, 2024",
          "duration": "25 min",
          "saved": false,
          "playlistId": "MPSPPLxq_lXOUlvQDUNyoBYLkN8aVt5yAwEtG9",
          "description":
          [
              {
                  "text": "Delve into why people hate meetings, ... Karin Reed ("
              },
              {
                  "text": "https://speakerdynamics.com/team/",
                  "url": "https://speakerdynamics.com/team/"
              },
              {
                  "text": ")Chapters:("
              },
              {
                  "text": "00:00",
                  "seconds": 0
              },
              {
                  "text": ") Introduction Host Matt Abrahams...("
              },
              {
                  "text": "01:30",
                  "seconds": 90
              },
          ]
      }

YTMusic.get_episodes_playlist(playlist_id: str = 'RDPN') -> dict[str, Any]

   Get all episodes in an episodes playlist. Currently the only known
   playlist is the "New Episodes" auto-generated playlist

   Parameters:
      **playlist_id** ("str") -- Playlist ID, defaults to "RDPN", the
      id of the New Episodes playlist

   Return type:
      "dict"["str", "Any"]

   Returns:
      Dictionary in the format of "get_podcast()"
