oEmbed is nice. Unfortunately, not everything supports oEmbed. Worse, the sites that do support it don't provide a consistent interface. Noembed provides a single url to get embeddable content from a large list of sites, even sites without oEmbed support!
Additionally, Noembed guarantees that all responses will have
html
, title
, url
, and
provider_name
fields. This means fewer special
cases spent building up your own HTML.
A simple demo is available here.
Treat Noembed like a regular oEmbed provider, but use any of the supported sites
for the url
parameter. Noembed also supports a callback
parameter for JSONP.
An example request might look like this:
http://noembed.com/embed?url=http%3A//www.youtube.com/watch%3Fv%3DbDOYN-6gdRE&callback=my_embed_function
And the response will look like:
my_embed_function( { "width" : 425, "author_name" : "schmoyoho", "author_url" : "http://www.youtube.com/user/schmoyoho", "version" : "1.0", "provider_url" : "http://www.youtube.com/", "provider_name" : "YouTube", "thumbnail_width" : 480, "thumbnail_url" : "http://i3.ytimg.com/vi/bDOYN-6gdRE/hqdefault.jpg", "height" : 344, "thumbnail_height" : 360, "html" : "<iframe type='text/html' width='425' height='344' src='http://www.youtube.com/embed/bDOYN-6gdRE' frameborder=0></iframe>", "url" : "http://www.youtube.com/watch?v=bDOYN-6gdRE", "type" : "rich", "title" : "Auto-Tune the News #8: dragons. geese. Michael Vick. (ft. T-Pain)" } )
Note: Chrome now blocks insecure scripts from loading on secure sites.
So, when using Noembed with JSONP on an https
site be sure to use https://noembed.com/embed
.
/providers
endpointNoembed provides an endpoint that returns the current list of supported sites. The response is a JSON list with the site name and URL patterns. This can be used to automate testing if a URL is supported by Noembed without making an HTTP request.
Let us know if you're using noembed in your project!
All the source code for Noembed is on github. Patches are accepted to add new services.
Oohembed was a very similar service. It even
acts as a gateway to non-oEmbed enabled sites like noembed. The main limitation that
I encountered was its lack of a guaranteed html
field.
embed.ly. I have not tried this service, but it lists support for hundreds of sites. Unfortunately, you can not add your own providers, so you are limited to what they support. Oohembed users are now redirected to embed.ly.