org.atpodcasting.podcast

atpodcasting.org

Documentation

A podcast feed/show. Record key is the podcast's Podcasting 2.0 UUIDv5 GUID, enabling direct lookup from RSS feed metadata.

main record

A podcast feed/show. Record key is the podcast's Podcasting 2.0 UUIDv5 GUID, enabling direct lookup from RSS feed metadata.

Record Key any Any valid record key

Properties

artwork blob Required

Cover artwork for the podcast. Recommended: 1400x1400 to 3000x3000 pixels, square, no alpha channel.

maxSize: 5.0 MB
createdAt string datetime Required

When the podcast record was created.

description string Required

A description of the podcast.

maxLength: 4000 bytes
explicit boolean Optional

Whether the podcast contains explicit content. Defaults to false.

feedUrl string uri Required

URL of the podcast's RSS feed.

guid string Required

Podcasting 2.0 UUIDv5 GUID of the podcast. Must match the record key.

maxLength: 36 bytes
language string language Required

Primary language of the podcast (ISO 639-1 two-letter code, e.g. 'en', 'es', 'pt').

movedTo string at-uri Optional

AT URI of the new canonical podcast record after an ownership transfer. When set, consumers should follow this reference to the current record.

title string Required

The name of the podcast.

maxLength: 500 bytes
View raw schema
{
  "key": "any",
  "type": "record",
  "record": {
    "type": "object",
    "required": [
      "title",
      "description",
      "artwork",
      "language",
      "feedUrl",
      "categories",
      "guid",
      "createdAt"
    ],
    "properties": {
      "guid": {
        "type": "string",
        "maxLength": 36,
        "description": "Podcasting 2.0 UUIDv5 GUID of the podcast. Must match the record key."
      },
      "link": {
        "type": "string",
        "format": "uri",
        "description": "URL of the podcast's homepage or companion website."
      },
      "title": {
        "type": "string",
        "maxLength": 500,
        "description": "The name of the podcast."
      },
      "artwork": {
        "type": "blob",
        "accept": [
          "image/png",
          "image/jpeg"
        ],
        "maxSize": 5000000,
        "description": "Cover artwork for the podcast. Recommended: 1400x1400 to 3000x3000 pixels, square, no alpha channel."
      },
      "feedUrl": {
        "type": "string",
        "format": "uri",
        "description": "URL of the podcast's RSS feed."
      },
      "movedTo": {
        "type": "string",
        "format": "at-uri",
        "description": "AT URI of the new canonical podcast record after an ownership transfer. When set, consumers should follow this reference to the current record."
      },
      "explicit": {
        "type": "boolean",
        "description": "Whether the podcast contains explicit content. Defaults to false."
      },
      "language": {
        "type": "string",
        "format": "language",
        "description": "Primary language of the podcast (ISO 639-1 two-letter code, e.g. 'en', 'es', 'pt')."
      },
      "createdAt": {
        "type": "string",
        "format": "datetime",
        "description": "When the podcast record was created."
      },
      "categories": {
        "type": "array",
        "items": {
          "refs": [
            "org.atpodcasting.defs#appleCategory"
          ],
          "type": "union"
        },
        "maxLength": 3,
        "description": "Podcast categories (max 3)."
      },
      "description": {
        "type": "string",
        "maxLength": 4000,
        "description": "A description of the podcast."
      }
    }
  },
  "description": "A podcast feed/show. Record key is the podcast's Podcasting 2.0 UUIDv5 GUID, enabling direct lookup from RSS feed metadata."
}

Lexicon Garden

@