{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://www.monocrawl.com/schemas/spotify/podcast.json","title":"spotify/podcast data fields","description":"Required core structure for successful data, with optional source fields. Additional fields are allowed. This is not a completeness guarantee.","type":"object","properties":{"id":{"type":["string","null"],"description":"Exact source identifier; preserve it as a string."},"name":{"type":["string","null"],"description":"name"},"url":{"type":["string","null"],"description":"url"},"uri":{"type":["string","null"],"description":"uri"},"kind":{"type":["string","null"],"description":"kind"},"description":{"type":["string","null"],"description":"description"},"publisher":{"type":["string","null"],"description":"publisher"},"image_url":{"type":["string","null"],"description":"image url"},"rating":{"type":["number","null"],"description":"rating; null is unknown."},"ratings_count":{"type":["number","null"],"description":"ratings count; null is unknown."},"total_episodes":{"type":["number","null"],"description":"total episodes; null is unknown."},"languages":{"type":"array","items":{"type":["string","null"],"description":"Source text."}},"topics":{"type":"array","items":{"type":["object","null"],"properties":{"title":{"type":["string","null"],"description":"title"},"uri":{"type":["string","null"],"description":"uri"}},"additionalProperties":true}},"explicit":{"type":["boolean","null"],"description":"Explicit-content label."}},"additionalProperties":true,"allOf":[{"anyOf":[{"required":["id"],"properties":{"id":{"type":["string"],"description":"Exact source identifier; preserve it as a string.","minLength":1}}},{"required":["name"],"properties":{"name":{"type":["string"],"description":"name","minLength":1}}},{"required":["url"],"properties":{"url":{"type":["string"],"description":"url","minLength":1}}},{"required":["uri"],"properties":{"uri":{"type":["string"],"description":"uri","minLength":1}}},{"required":["description"],"properties":{"description":{"type":["string"],"description":"description","minLength":1}}},{"required":["publisher"],"properties":{"publisher":{"type":["string"],"description":"publisher","minLength":1}}},{"required":["image_url"],"properties":{"image_url":{"type":["string"],"description":"image url","minLength":1}}},{"required":["rating"],"properties":{"rating":{"type":["number"],"description":"rating; null is unknown."}}},{"required":["ratings_count"],"properties":{"ratings_count":{"type":["number"],"description":"ratings count; null is unknown."}}},{"required":["total_episodes"],"properties":{"total_episodes":{"type":["number"],"description":"total episodes; null is unknown."}}},{"required":["languages"],"properties":{"languages":{"type":"array","items":{"type":["string","null"],"description":"Source text."}}}},{"required":["topics"],"properties":{"topics":{"type":"array","items":{"type":["object","null"],"properties":{"title":{"type":["string","null"],"description":"title"},"uri":{"type":["string","null"],"description":"uri"}},"additionalProperties":true}}}},{"required":["explicit"],"properties":{"explicit":{"type":["boolean"],"description":"Explicit-content label."}}}]}],"x-contract-version":"2026-09-22","x-validation-scope":"Required success payload structure; optional fields and source completeness remain separate.","examples":[{"id":"example","name":"Example podcast","kind":"show"}]}