pink.vase.pod.episode

vase.pink

{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "description": "A podcast episode belonging to a show.",
      "key": "tid",
      "record": {
        "properties": {
          "audioUrl": {
            "description": "URL to the audio file. Can be any host the creator controls.",
            "format": "uri",
            "type": "string"
          },
          "coverArt": {
            "accept": [
              "image/jpeg",
              "image/png",
              "image/webp"
            ],
            "description": "Optional per-episode cover art, overrides show art.",
            "maxSize": 1000000,
            "type": "blob"
          },
          "createdAt": {
            "format": "datetime",
            "type": "string"
          },
          "description": {
            "maxLength": 5000,
            "type": "string"
          },
          "durationSeconds": {
            "description": "Episode duration in seconds.",
            "type": "integer"
          },
          "episodeNumber": {
            "type": "integer"
          },
          "episodeType": {
            "description": "Follows podcast RSS spec episode types.",
            "knownValues": [
              "full",
              "trailer",
              "bonus"
            ],
            "type": "string"
          },
          "explicit": {
            "type": "boolean"
          },
          "seasonNumber": {
            "type": "integer"
          },
          "show": {
            "description": "The show this episode belongs to.",
            "ref": "com.atproto.repo.strongRef",
            "type": "ref"
          },
          "title": {
            "maxLength": 300,
            "type": "string"
          }
        },
        "required": [
          "show",
          "title",
          "audioUrl",
          "createdAt"
        ],
        "type": "object"
      },
      "type": "record"
    }
  },
  "id": "pink.vase.pod.episode",
  "lexicon": 1
}

Validate Record

Validate a record against pink.vase.pod.episode

Validation Options
Treat any remaining unresolved references as valid

Metadata

DID
did:plc:4q6zynbo2nbapzxwsrswankx
CID
bafyreiad3tbq4pzsgqnhu5yzol745gfsziv64vpro27mhikvwkba7ruhne
Indexed At
2026-07-26 20:05 UTC
AT-URI
at://did:plc:4q6zynbo2nbapzxwsrswankx/com.atproto.lexicon.schema/pink.vase.pod.episode

Similar Lexicons

Lexicons whose schemas describe something close to this one. Check them before publishing a new one that overlaps.

  • A single podcast episode.

  • A podcast episode belonging to a series

  • A podcast episode. Record key is a UUIDv5 derived from the podcast GUID (as namespace) and the episode's feedItemGuid (as name), enabling deterministic lookup from RSS feed metadata.

  • org.swappulse.podcastEpisode recordnot from the namespace authority

    A podcast episode (often derived from a voice space recording), mirrored to AT Protocol as a real org.swappulse.podcastEpisode record so episodes are portable and playable across instances.

  • A podcast show or channel.

Lexicon Garden

@