full diff

place.pod.show

pod.place +38 −7
From
bafyreicfwz2dwiuigb6ngtksgenacn2if7uegf44vzet7wvaonrpv6r4cq indexed 2026-06-21 18:48 UTC View this version
To
bafyreig6u4qzsdphybct6qqveulcoyn5ir4w3ucypopj4kr43dlw2jwzt4 indexed 2026-07-26 16:24 UTC View this version

Compatibility

breaking 6 breaking changes, 7 non-breaking changes.

Breaking changes (6)
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "place.pod.show:body", src: "place.pod.show:body", tgt: "place.pod.show:body.language", kind: "prop", name: Some("language") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "place.pod.show:body", src: "place.pod.show:body", tgt: "place.pod.show:body.website", kind: "prop", name: Some("website") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "place.pod.show:body", src: "place.pod.show:body", tgt: "place.pod.show:body.categories", kind: "prop", name: Some("categories") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "place.pod.show:body", src: "place.pod.show:body", tgt: "place.pod.show:body.feedUrl", kind: "prop", name: Some("feedUrl") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "place.pod.show:body", src: "place.pod.show:body", tgt: "place.pod.show:body.explicit", kind: "prop", name: Some("explicit") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "place.pod.show:body", src: "place.pod.show:body", tgt: "place.pod.show:body.coverImageUrl", kind: "prop", name: Some("coverImageUrl") }
Non-breaking changes (7)
  • AddedVertex AddedVertex { vertex_id: "place.pod.show:body.feedUrl" }
  • AddedVertex AddedVertex { vertex_id: "place.pod.show:body.medium" }
  • AddedVertex AddedVertex { vertex_id: "place.pod.show:body.podcastGuid" }
  • AddedVertex AddedVertex { vertex_id: "place.pod.show:body.type" }
  • AddedEdge AddedEdge { src: "place.pod.show:body", tgt: "place.pod.show:body.medium", kind: "prop", name: Some("medium") }
  • AddedEdge AddedEdge { src: "place.pod.show:body", tgt: "place.pod.show:body.podcastGuid", kind: "prop", name: Some("podcastGuid") }
  • AddedEdge AddedEdge { src: "place.pod.show:body", tgt: "place.pod.show:body.type", kind: "prop", name: Some("type") }

Migration guidance

Added

  • AddedVertex { vertex_id: "place.pod.show:body.feedUrl" }
  • AddedVertex { vertex_id: "place.pod.show:body.medium" }
  • AddedVertex { vertex_id: "place.pod.show:body.podcastGuid" }
  • AddedVertex { vertex_id: "place.pod.show:body.type" }

Notes

  • Breaking: RequiredEdgeAdded { vertex_id: "place.pod.show:body", src: "place.pod.show:body", tgt: "place.pod.show:body.language", kind: "prop", name: Some("language") }
  • Breaking: RequiredEdgeAdded { vertex_id: "place.pod.show:body", src: "place.pod.show:body", tgt: "place.pod.show:body.website", kind: "prop", name: Some("website") }
  • Breaking: RequiredEdgeAdded { vertex_id: "place.pod.show:body", src: "place.pod.show:body", tgt: "place.pod.show:body.categories", kind: "prop", name: Some("categories") }
  • Breaking: RequiredEdgeAdded { vertex_id: "place.pod.show:body", src: "place.pod.show:body", tgt: "place.pod.show:body.feedUrl", kind: "prop", name: Some("feedUrl") }
  • Breaking: RequiredEdgeAdded { vertex_id: "place.pod.show:body", src: "place.pod.show:body", tgt: "place.pod.show:body.explicit", kind: "prop", name: Some("explicit") }
  • Breaking: RequiredEdgeAdded { vertex_id: "place.pod.show:body", src: "place.pod.show:body", tgt: "place.pod.show:body.coverImageUrl", kind: "prop", name: Some("coverImageUrl") }
  • Non-breaking: AddedEdge { src: "place.pod.show:body", tgt: "place.pod.show:body.medium", kind: "prop", name: Some("medium") }
  • Non-breaking: AddedEdge { src: "place.pod.show:body", tgt: "place.pod.show:body.podcastGuid", kind: "prop", name: Some("podcastGuid") }
  • Non-breaking: AddedEdge { src: "place.pod.show:body", tgt: "place.pod.show:body.type", kind: "prop", name: Some("type") }

Changes

11{
22 "$type": "com.atproto.lexicon.schema",
33 "defs": {
44 "main": {
55 "description": "A podcast show or channel.",
66 "key": "tid",
77 "record": {
88 "properties": {
99 "author": {
1010 "description": "Name of the show's author or primary creator.",
1111 "maxLength": 100,
1212 "type": "string"
1313 },
1414 "categories": {
15 "description": "List of content categories or genres. Use standard values where possible.",
15 "description": "Apple Podcasts categories, ordered by priority, with optional subcategories.",
1616 "items": {
1717 "maxLength": 50,
1818 "type": "string"
1919 },
2020 "type": "array"
2121 },
2222 "copyright": {
2323 "description": "Copyright notice or license identifier.",
2424 "maxLength": 500,
2525 "type": "string"
2626 },
2727 "coverImageUrl": {
28 "description": "URL of the show's primary cover artwork. Should be square and at least 1400x1400px.",
28 "description": "Apple-compatible show artwork URL: JPEG or PNG, 1400x1400 to 3000x3000 pixels.",
2929 "format": "uri",
3030 "maxLength": 2048,
3131 "type": "string"
3232 },
3333 "createdAt": {
3434 "description": "ISO 8601 timestamp of when the show record was created.",
3535 "format": "datetime",
3636 "type": "string"
3737 },
3838 "description": {
3939 "description": "A short summary describing the show's content, format, and purpose.",
4040 "maxGraphemes": 2000,
4141 "type": "string"
4242 },
4343 "episodeType": {
4444 "description": "Default episode type for the show. Common values: full, trailer, bonus.",
4545 "knownValues": [
4646 "full",
4747 "trailer",
4848 "bonus"
4949 ],
5050 "maxLength": 20,
5151 "type": "string"
5252 },
5353 "explicit": {
54 "description": "Whether the show typically contains explicit content. Defaults to false if omitted.",
54 "description": "Whether the show contains explicit content.",
5555 "type": "boolean"
5656 },
57 "feedUrl": {
58 "description": "Canonical public RSS feed URL, used for atom:link rel=\"self\".",
59 "format": "uri",
60 "maxLength": 2048,
61 "type": "string"
62 },
5763 "language": {
58 "description": "Primary language of the show content, formatted as an IETF language tag (e.g. en-US).",
64 "description": "Primary language in ISO 639 format (for example, en-us).",
5965 "maxLength": 10,
6066 "type": "string"
6167 },
6268 "locked": {
63 "description": "Whether the show record is locked from edits. Defaults to false.",
69 "description": "Whether the show record is locked from edits.",
6470 "type": "boolean"
6571 },
72 "medium": {
73 "description": "Podcasting 2.0 medium, normally podcast; other media types are optional.",
74 "maxLength": 50,
75 "type": "string"
76 },
6677 "ownerEmail": {
6778 "description": "Contact email for the show owner.",
6879 "maxLength": 320,
6980 "type": "string"
7081 },
7182 "ownerName": {
7283 "description": "Legal or business owner name. Useful for copyright and licensing.",
7384 "maxLength": 200,
7485 "type": "string"
7586 },
7687 "people": {
7788 "description": "List of people involved in the show (hosts, producers, editors, etc.).",
7889 "items": {
7990 "maxLength": 100,
8091 "type": "string"
8192 },
8293 "type": "array"
8394 },
95 "podcastGuid": {
96 "description": "Stable podcast:guid value preserved across feed-host migrations.",
97 "maxLength": 255,
98 "type": "string"
99 },
84100 "title": {
85101 "description": "The display name of the podcast show. Keep under 100 characters for directory compatibility.",
86102 "maxLength": 100,
87103 "type": "string"
88104 },
105 "type": {
106 "description": "Apple show type. Serial shows must identify themselves as serial.",
107 "knownValues": [
108 "episodic",
109 "serial"
110 ],
111 "maxLength": 20,
112 "type": "string"
113 },
89114 "website": {
90 "description": "Official website URL for the show. Should use HTTPS.",
115 "description": "Public website URL for the show, used as the RSS channel link.",
91116 "format": "uri",
92117 "maxLength": 2048,
93118 "type": "string"
94119 }
95120 },
96121 "required": [
97122 "title",
98123 "description",
99 "createdAt"
124 "createdAt",
125 "feedUrl",
126 "website",
127 "language",
128 "categories",
129 "explicit",
130 "coverImageUrl"
100131 ],
101132 "type": "object"
102133 },
103134 "type": "record"
104135 }
105136 },
106137 "description": "A podcast show or channel.",
107138 "id": "place.pod.show",
108139 "lexicon": 1
109140}

Compare other versions