You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
An is-agentic.com scan of whiskey.fm flagged incomplete structured data:
JSON-LD Organization with name + description - add url and sameAs/logo/address for full score
Organization schema found but missing: contactPoint, address
Add Organization JSON-LD that includes both contactPoint (with email/phone and contactType) and address (PostalAddress). This lets AI verify your business legitimacy and answer contact queries.
{'@context': 'https://schema.org','@type': 'PodcastSeries',// ...author: {'@type': 'Organization',name: show.title,url: canonicalURL.origin},publisher: {'@type': 'Organization',name: show.title,url: canonicalURL.origin}// no sameAs, no logo on the PodcastSeries node// no contactPoint/address on the Organization nodes}
No sameAs array on the PodcastSeries node — starpodConfig.platforms already has apple/spotify/youtube/overcast/pocketCasts URLs, which are exactly what sameAs wants (canonical profile links proving the entity is the same across the web). This looks like a straightforward win since the data already exists in config.
No logo on the Organization sub-nodes (only the top-level PodcastSeries.image is set).
No contactPoint (email + contactType) or address on the Organization nodes — reasonable, since StarpodConfig has no field for either today. address may not even make sense for every show (a podcast isn't always a registered local business) — could be optional/skippable, but contactPoint seems like a reasonable ask once contact-page work (Contact page has too little real content for agent trust checks #69) lands, since that's the same email/contact info.
Proposed fix
Populate sameAs on the PodcastSeries node from Object.values(starpodConfig.platforms).filter(Boolean).
Add an optional logo field to StarpodConfig (or reuse an existing show-image asset) and wire it onto the Organization nodes.
Add an optional contactPoint (built from a config-level contact email, see Contact page has too little real content for agent trust checks #69) once there's a canonical place to source it from. Treat address as optional/skippable — not every show has one worth publishing.
Context
An
is-agentic.comscan of whiskey.fm flagged incomplete structured data:Current state
packages/starpod/src/layouts/Layout.astroalready emits a solidPodcastSeriesnode (name,about,description,url,webFeed,image, nestedauthor/publisherOrganization objects) — good baseline. What's missing:sameAsarray on thePodcastSeriesnode —starpodConfig.platformsalready hasapple/spotify/youtube/overcast/pocketCastsURLs, which are exactly whatsameAswants (canonical profile links proving the entity is the same across the web). This looks like a straightforward win since the data already exists in config.logoon theOrganizationsub-nodes (only the top-levelPodcastSeries.imageis set).contactPoint(email + contactType) oraddresson theOrganizationnodes — reasonable, sinceStarpodConfighas no field for either today.addressmay not even make sense for every show (a podcast isn't always a registered local business) — could be optional/skippable, butcontactPointseems like a reasonable ask once contact-page work (Contact page has too little real content for agent trust checks #69) lands, since that's the same email/contact info.Proposed fix
sameAson thePodcastSeriesnode fromObject.values(starpodConfig.platforms).filter(Boolean).logofield toStarpodConfig(or reuse an existing show-image asset) and wire it onto theOrganizationnodes.contactPoint(built from a config-level contact email, see Contact page has too little real content for agent trust checks #69) once there's a canonical place to source it from. Treataddressas optional/skippable — not every show has one worth publishing.🤖 Filed with Claude Code