---
title: "List podcast shows with recent episodes"
method: GET
path: "/podcasts/latest/shows"
tags: ["Podcasts"]
---

# List podcast shows with recent episodes

`GET /podcasts/latest/shows`

## Request

- Base URL: `http://dev.theverge.com:3002/api`
- URL: `http://dev.theverge.com:3002/api/podcasts/latest/shows`
- Auth: none declared

Returns all configured podcast shows with their metadata and most recent episodes, fetched in parallel from the Megaphone CMS API. Episode count per show is controlled by the `limit` query parameter.

## Query parameters

- `limit` integer

## Response `200`

Shows retrieved successfully

- object
  - `data` PodcastShowsResponse, required
    - `results` object[], required
      - `podcast` object, required
        - `podcastId` string, required
        - `playlistId` string, required
        - `episodeId` string
        - `spotifyUrl` string
        - `applePodcastsUrl` string
        - `allAppsUrl` string
        - `amazonMusicUrl` string
        - `dek` string
        - `description` string, required
        - `headline` string, required
        - `permalink` string, required
        - `thumbnails` object
          - `horizontal` string, nullable, required
          - `square` string, nullable, required
        - `isPaywalled` boolean: Whether episodes of this podcast are member-only (paywalled). When true, clients should enforce access checks before playback. Defaults to false if omitted.
      - `episodes` MegaphoneEpisode[], required
        - `id` string, required
        - `title` string, required
        - `pubdate` string, required
        - `summary` string, nullable, required
        - `description` string, nullable, required
        - `body` string, nullable, required: Full HTML show notes for the episode. Returned by both the list and single-episode endpoints. Distinct from `summary` (plain-text teaser) and `description` (RSS-style short description).
        - `duration` number, nullable, required: Duration of the episode in seconds.
        - `imageFile` string, nullable, required
        - `downloadUrl` string, required: Playback/download URL including any scheduled ad insertions.
        - `uid` string, required: Public-facing unique identifier used to generate episode URLs.
        - `podcastId` string, required
        - `podcastTitle` string, nullable, required
        - `status` union, required
          - 'draft'
          - 'published'
          - 'scheduled'
          - object

## Other responses

- `400`: Invalid input parameters
- `500`: Internal server error

---

[API](https://skmtc.dev/theverge/apis/the-verge-api-documentation.md) - [All operations](https://skmtc.dev/theverge/apis/the-verge-api-documentation/llms.txt) - [OpenAPI document](https://skmtc.dev/theverge/apis/the-verge-api-documentation/revisions/f44a9b8ebfc3?raw)
