place.pod.episode

pod.place

Documentation

A single podcast episode.

main record

A single podcast episode.

Record Key tid Timestamp-based ID

Properties

audioMimeType string Optional

MIME type of the audio file. Common values: audio/mpeg, audio/wav, audio/aac.

maxLength: 100 bytes
audioSizeBytes integer Optional

File size of the audio asset in bytes. Useful for download progress indicators.

audioUrl string uri Required

Direct URL to the audio file. Must be publicly accessible and use HTTPS.

chaptersUrl string uri Optional

URL to a chapters file. Accepts JSON or WebVTT formats.

createdAt string datetime Required

ISO 8601 timestamp of when the episode record was created.

description string Required

Summary or show notes for the episode. May contain basic formatting.

maxGraphemes: 4000 graphemes
durationSeconds integer Optional

Length of the episode in whole seconds. Strongly recommended for player UX.

episodeNumber integer Optional

Episode number within the season or series.

explicit boolean Optional

Whether this specific episode contains explicit content. Defaults to false if omitted.

imageUrl string uri Optional

Episode-specific artwork URL. Falls back to show cover if omitted.

publishedAt string datetime Optional

ISO 8601 timestamp when the episode was published. May differ from createdAt.

seasonNumber integer Optional

Season number the episode belongs to.

showUri string uri Required

AT Protocol URI of the parent place.pod.show record.

title string Required

Title of the episode.

maxLength: 200 bytes
transcriptUrl string uri Optional

URL to a transcript file. Improves accessibility and searchability.

View raw schema
{
  "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."
}

Lexicon Garden

@