🏠 back to Observable

oEmbed support


#1

Hello,

I am wondering if oEmbed support exists or could be considered - I couldn’t find the relevant meta tags on the notebook page. Happy to file a Github feature request if it makes sense to folks here.

Thanks,
Karim


#2

Hey Karim,

So, we’ve considered adding oEmbed support, and here’s where my research ended up - feel free to correct if there’s something amiss.

The gist is that every oEmbed consumer now relies on a whitelist - here’s Wordpress’s, and here’s Embed.ly’s, which is what Medium uses (and is now an acquired company of Medium’s). Until you’re allowed to be on the whitelist, implementing oEmbed doesn’t do anything.

Facebook and Twitter don’t support oEmbed and instead rely on OpenGraph or twitter-specific markup.

So, unfortunately, as far as I can tell, if a website today implements oEmbed, there isn’t a single consumer that can consume that embed, because virtually all of them rely on whitelists, and centrally control those whitelists.

At this point I think we could get the approval required for oEmbed to work in WordPress, Medium, or both. But early on this was the blocker, and it’s still, well, personally a bummer to see what was an open standard become something that aggressively gatekeeps implementations.

However, let me know if there are implementations that would work that don’t rely on a whitelist - that’d be very useful to confirm that oEmbed works, if we do end up implementing it.

-Tom


#3

Thanks Tom for the thorough reply. Yes, it’s unfortunate that big platforms should whitelist oEmbed providers, but it’s not wholly surprising given that arbitrary JavaScript can be injected in their app this way. I am actually surprised that OG and Twitter tags are not subjected to the same restrictions.

I also think that Observable would very probably be whitelisted pretty easily, especially if you only embed a thumbnail and not the actual notebook engine. The app I’m working on was also whitelisted as an oEmbed provider by Embedly/Medium without too much drama.

I do still think oEmbed is a useful feature to have, considering the huge “long tail” of CMS installations on the web, whose users would appreciate the capability to enrich their content’s presentation. At the core, systems like Drupal and WordPress support oEmbed and the whitelisting is at the discretion of the site administrator.

In any case, thanks for a wonderful platform!