place.pod.episode

pod.place

{
  "id": "place.pod.episode",
  "defs": {
    "main": {
      "key": "tid",
      "type": "record",
      "record": {
        "type": "object",
        "required": [
          "showUri",
          "title",
          "description",
          "audioUrl",
          "createdAt"
        ],
        "properties": {
          "title": {
            "type": "string",
            "maxLength": 200,
            "description": "Title of the episode."
          },
          "showUri": {
            "type": "string",
            "format": "uri",
            "description": "AT Protocol URI of the parent place.pod.show record."
          },
          "audioUrl": {
            "type": "string",
            "format": "uri",
            "description": "Direct URL to the audio file. Must be publicly accessible and use HTTPS."
          },
          "explicit": {
            "type": "boolean",
            "description": "Whether this specific episode contains explicit content. Defaults to false if omitted."
          },
          "imageUrl": {
            "type": "string",
            "format": "uri",
            "description": "Episode-specific artwork URL. Falls back to show cover if omitted."
          },
          "createdAt": {
            "type": "string",
            "format": "datetime",
            "description": "ISO 8601 timestamp of when the episode record was created."
          },
          "chaptersUrl": {
            "type": "string",
            "format": "uri",
            "description": "URL to a chapters file. Accepts JSON or WebVTT formats."
          },
          "description": {
            "type": "string",
            "description": "Summary or show notes for the episode. May contain basic formatting.",
            "maxGraphemes": 4000
          },
          "publishedAt": {
            "type": "string",
            "format": "datetime",
            "description": "ISO 8601 timestamp when the episode was published. May differ from createdAt."
          },
          "seasonNumber": {
            "type": "integer",
            "description": "Season number the episode belongs to."
          },
          "audioMimeType": {
            "type": "string",
            "maxLength": 100,
            "description": "MIME type of the audio file. Common values: audio/mpeg, audio/wav, audio/aac."
          },
          "episodeNumber": {
            "type": "integer",
            "description": "Episode number within the season or series."
          },
          "transcriptUrl": {
            "type": "string",
            "format": "uri",
            "description": "URL to a transcript file. Improves accessibility and searchability."
          },
          "audioSizeBytes": {
            "type": "integer",
            "description": "File size of the audio asset in bytes. Useful for download progress indicators."
          },
          "durationSeconds": {
            "type": "integer",
            "description": "Length of the episode in whole seconds. Strongly recommended for player UX."
          }
        }
      },
      "description": "A single podcast episode."
    }
  },
  "$type": "com.atproto.lexicon.schema",
  "lexicon": 1,
  "description": "A single podcast episode."
}

Validate Record

Validate a record against place.pod.episode

Validation Options
Treat any remaining unresolved references as valid

Metadata

DID
did:plc:djyfh7w2dpxt7w7cpagfeyie
CID
bafyreiheuj63zwh42442nkaqrxprm4oo3ilrsotgnjapzn5gepbqn4valq
Indexed At
2026-06-21 18:48 UTC
AT-URI
at://did:plc:djyfh7w2dpxt7w7cpagfeyie/com.atproto.lexicon.schema/place.pod.episode

Lexicon Garden

@