Skip to content

Proposal: <podcast:events> tag, enabling podcast publishers to receive unforgeable inbound events from other entities in the open podcast ecosystem #396

Closed
@johnspurlock

Description

@johnspurlock

I've been listening and thinking about several conversations in the podcast world recently, and I think it would great if we could come up with a solid way of letting podcasters receive inbound events from verifiable 3rd party actors (podcast apps, directories, other hosts) with useful information for them. For example, a way for trusted podcast apps to send unforgeable information about subscribers/play information back to the show.

Ideally, we could do this in a way similar to the other podcast namespace tags, that kept the podcast feed publisher in control, and as the source of truth, while keeping things as simple as possible and without needing preauthorization or shared secrets, or certifications, etc.

Instead of a wall of markdown here in the github issue, I've started a quick Google doc with the general overview of a system I think could work well, and am publishing it publicly to see what everyone thinks and get the conversation started:

[Google Doc] Proposal: <podcast:events> tag, enabling podcast publishers to receive unforgeable inbound events from other entities in the open podcast ecosystem

It's meant to be readable by anyone, so I tried to avoid rabbit-holing on a bunch of detailed example code, but there should be enough in there for folks to get the idea.

2022-10-06: Published a new skymethod/podcast-events GitHub repo with a full implementation of both the sending side and the receiving side. Also a validator to test client implementations at: https://podcast-events-validator.op3.dev/. Both linked in the proposal doc

2022-10-22: Added a new "Event batching" section about how to reduce the number of calls required to the same receiver (e.g. the same podcast hosting company) by sending events for multiple feeds in the same payload

Metadata

Metadata

Assignees

No one assigned

    Labels

    phase6Namespace Phase 6proposalAn idea for a new tag

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions