# Latest Episodes

> Pod Engine API endpoint reference, optimized for LLM consumption.
> Auto-generated from the source-of-truth endpoint registry.
>
> Category: Episodes
> Source: https://www.podengine.ai/api-docs/get-latest-episodes.md
> Interactive HTML docs: https://www.podengine.ai/api-docs/get-latest-episodes
> Full API reference (all endpoints): https://www.podengine.ai/api-docs/llms.txt

**Base URL:** `http://localhost:4000`
**Auth:** No authentication required.

---

#### GET /api/v1/episodes/latest (PUBLIC)
**Latest Episodes**

Get the latest 150 episodes

```bash
curl -X GET "http://localhost:4000/api/v1/episodes/latest?categories=technology%2Cbusiness%2Cnews&hasTranscript=true&language=en" \
  -H "Content-Type: application/json"
```

**Query schema:**
```json
{
  "type": "object",
  "properties": {
    "categories": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "podcastImageRequired": {
      "type": "boolean"
    },
    "hasTranscript": {
      "type": "boolean"
    },
    "language": {
      "default": "en",
      "type": "string"
    }
  },
  "required": [
    "language"
  ],
  "additionalProperties": false
}
```

**Response schema:**
```json
{
  "type": "object",
  "properties": {
    "status": {
      "type": "string",
      "enum": [
        "OK"
      ]
    },
    "data": {
      "type": "object",
      "properties": {
        "latestPodcasts": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "podcast": {
                "type": "object",
                "properties": {
                  "author": {
                    "nullable": true,
                    "type": "string"
                  },
                  "authorityScore": {
                    "nullable": true,
                    "type": "object",
                    "properties": {
                      "calculatedAt": {},
                      "authorityScore": {
                        "type": "number",
                        "description": "This is the weighted total authority score of the podcast, out of 100"
                      },
                      "qualityScore": {
                        "type": "number",
                        "description": "This is the quality score of the podcast, out of 100"
                      },
                      "youtubeScore": {
                        "type": "number",
                        "description": "This is the YouTube score of the podcast, out of 100"
                      },
                      "socialScore": {
                        "type": "number",
                        "description": "This is the social score of the podcast, out of 100"
                      },
                      "engagementScore": {
                        "type": "number",
                        "description": "This is the engagement score of the podcast, out of 100"
                      }
                    },
                    "required": [
                      "calculatedAt",
                      "authorityScore",
                      "qualityScore",
                      "youtubeScore",
                      "socialScore",
                      "engagementScore"
                    ],
                    "additionalProperties": false
                  },
                  "genres": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  },
                  "id": {
                    "type": "string"
                  },
                  "imageUrl": {
                    "nullable": true,
                    "type": "string"
                  },
                  "language": {
                    "type": "string"
                  },
                  "lastEpisodePublishedAt": {},
                  "slug": {
                    "type": "string"
                  },
                  "title": {
                    "type": "string"
                  },
                  "titleLatest": {
                    "type": "string"
                  }
                },
                "required": [
                  "author",
                  "authorityScore",
                  "genres",
                  "id",
                  "imageUrl",
                  "language",
                  "lastEpisodePublishedAt",
                  "slug",
                  "title",
                  "titleLatest"
                ],
                "additionalProperties": false
              },
              "episodes": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "deepAnalysisRequestedAt": {
                      "nullable": true
                    },
                    "description": {
                      "nullable": true,
                      "type": "string"
                    },
                    "durationSeconds": {
                      "nullable": true,
                      "type": "number"
                    },
                    "enclosureUrl": {
                      "type": "string"
                    },
                    "episodeId": {
                      "type": "string",
                      "format": "uuid",
                      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                    },
                    "episodeGuestsAndHosts": {
                      "nullable": true,
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "name": {
                            "type": "string"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "host",
                              "guest",
                              "unknown",
                              "mentioned"
                            ]
                          },
                          "imageUrl": {
                            "nullable": true,
                            "type": "string"
                          }
                        },
                        "required": [
                          "name",
                          "type",
                          "imageUrl"
                        ],
                        "additionalProperties": false
                      }
                    },
                    "episodeSlug": {
                      "type": "string"
                    },
                    "episodeShortDescription": {
                      "nullable": true,
                      "type": "string"
                    },
                    "episodeSponsors": {
                      "nullable": true,
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "hasTranscript": {
                      "type": "boolean"
                    },
                    "imageUrl": {
                      "nullable": true,
                      "type": "string"
                    },
                    "episodeThumbnailRssUrl": {
                      "nullable": true,
                      "type": "string"
                    },
                    "podcastId": {
                      "type": "string",
                      "format": "uuid",
                      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                    },
                    "podcastSlug": {
                      "type": "string"
                    },
                    "publishedAt": {},
                    "title": {
                      "type": "string"
                    },
                    "transcriptId": {
                      "nullable": true,
                      "type": "string",
                      "format": "uuid",
                      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                    },
                    "transcriptionRequestedAt": {
                      "nullable": true
                    },
                    "audienceEstimate": {
                      "type": "object",
                      "properties": {
                        "audienceDemographics": {
                          "nullable": true,
                          "type": "object",
                          "properties": {
                            "ageRange": {
                              "type": "string",
                              "enum": [
                                "Under 18",
                                "18-24",
                                "25-34",
                                "35-44",
                                "45-54",
                                "55+"
                              ],
                              "description": "The age range of the audience as a string."
                            },
                            "genderSkew": {
                              "type": "string",
                              "enum": [
                                "Male 0% Female 100%",
                                "Male 20% Female 80%",
                                "Male 40% Female 60%",
                                "Male 50% Female 50%",
                                "Male 60% Female 40%",
                                "Male 80% Female 20%",
                                "Male 100% Female 0%"
                              ],
                              "description": "How the audience is skewed in terms of gender."
                            },
                            "educationLevel": {
                              "type": "string",
                              "enum": [
                                "No High School",
                                "High School",
                                "Some College",
                                "Bachelors Degree",
                                "Masters Degree",
                                "Doctorate"
                              ],
                              "description": "The probable education levels of the audience."
                            },
                            "incomeLevel": {
                              "type": "string",
                              "enum": [
                                "Under $25K",
                                "$25K-$50K",
                                "$50K-$75K",
                                "$75K-$100K",
                                "$100K-$150K",
                                "$150K-$200K",
                                "$200K+"
                              ],
                              "description": "The probable income levels of the audience."
                            },
                            "exampleListenerProfile": {
                              "type": "string",
                              "description": "An example profile of the audience. This is a description of the audience that you can use to describe the audience to an advertiser."
                            }
                          },
                          "required": [
                            "ageRange",
                            "genderSkew",
                            "educationLevel",
                            "incomeLevel",
                            "exampleListenerProfile"
                          ],
                          "additionalProperties": false
                        },
                        "estimatedMonthlyListeners": {
                          "nullable": true,
                          "type": "number"
                        },
                        "estimatedMonthyListenersCalculatedAt": {
                          "nullable": true
                        }
                      },
                      "required": [
                        "audienceDemographics",
                        "estimatedMonthlyListeners",
                        "estimatedMonthyListenersCalculatedAt"
                      ],
                      "additionalProperties": false
                    },
                    "youtubeEpisodeDetails": {
                      "nullable": true,
                      "type": "object",
                      "properties": {
                        "youtubeLink": {
                          "type": "string",
                          "format": "uri"
                        },
                        "youtubeMatchConfidence": {
                          "type": "number"
                        },
                        "youtubeViewCount": {
                          "nullable": true,
                          "type": "number"
                        },
                        "youtubeDataFetchedAt": {
                          "nullable": true
                        }
                      },
                      "required": [
                        "youtubeLink",
                        "youtubeMatchConfidence",
                        "youtubeViewCount",
                        "youtubeDataFetchedAt"
                      ],
                      "additionalProperties": false
                    },
                    "applePodcastsUrl": {
                      "nullable": true,
                      "type": "string",
                      "format": "uri"
                    }
                  },
                  "required": [
                    "deepAnalysisRequestedAt",
                    "description",
                    "durationSeconds",
                    "enclosureUrl",
                    "episodeId",
                    "episodeGuestsAndHosts",
                    "episodeSlug",
                    "episodeShortDescription",
                    "episodeSponsors",
                    "hasTranscript",
                    "imageUrl",
                    "episodeThumbnailRssUrl",
                    "podcastId",
                    "podcastSlug",
                    "publishedAt",
                    "title",
                    "transcriptId",
                    "transcriptionRequestedAt",
                    "youtubeEpisodeDetails",
                    "applePodcastsUrl"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "required": [
              "podcast",
              "episodes"
            ],
            "additionalProperties": false
          }
        }
      },
      "required": [
        "latestPodcasts"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "status",
    "data"
  ],
  "additionalProperties": false
}
```

---

## See also

- All endpoints in one file: https://www.podengine.ai/api-docs/llms.txt
- Full reference with every schema inlined: https://www.podengine.ai/api-docs/llms-full.txt
- OpenAPI 3.1 spec: https://www.podengine.ai/api-docs/openapi.json
- Get an API key: https://www.podengine.ai/get-started
- Support: support@podengine.ai
