BYTETOOLS

Noembed API

Free oEmbed proxy API with no key: get embed HTML, thumbnails and metadata for YouTube, Vimeo, Twitter and 200+ other sites from one endpoint. Tested.

No API key requiredCORS enabledHTTPSFree tier

Endpoint tested and returned HTTP 200 on 2026-08-19

What is the Noembed API?

Noembed is a free, key-free oEmbed proxy that returns embed HTML, thumbnails, titles and author information for URLs from more than 200 supported sites, through a single consistent endpoint.

oEmbed is the standard that lets a site turn a URL into an embeddable player or card, but every provider has its own endpoint and some have none. Noembed normalises all of them behind one URL, so you make a single request regardless of whether the link is YouTube, Vimeo, SoundCloud or Flickr.

It supports JSONP via a callback parameter, which is a legacy convenience but genuinely useful when you need embeds from a page that cannot proxy through a backend.

Quick facts

Base URL
https://noembed.com
Authentication
No API key required.
Rate limit
No published limit; fair use expected.
Pricing
Free.
CORS
Enabled — callable directly from browser JavaScript
Official docs
Read the docs

How to use the Noembed API

Every request below was executed against the live API on 2026-08-19, and the response shown is the real body it returned — not an illustration.

1. Get embed data for a video URL

GET https://noembed.com/embed?url=https://www.youtube.com/watch?v=dQw4w9WgXcQ

curl
curl 'https://noembed.com/embed?url=https://www.youtube.com/watch?v=dQw4w9WgXcQ'
JavaScript (fetch)
const res = await fetch("https://noembed.com/embed?url=https://www.youtube.com/watch?v=dQw4w9WgXcQ");
if (!res.ok) throw new Error(`Request failed: ${res.status}`);
const data = await res.json();
console.log(data);
Python (requests)
import requests

res = requests.get("https://noembed.com/embed?url=https://www.youtube.com/watch?v=dQw4w9WgXcQ", timeout=20)
res.raise_for_status()
print(res.json())
Response — HTTP 200
{
  "provider_name": "YouTube",
  "height": 113,
  "thumbnail_height": 360,
  "html": "<iframe width=\"200\" height=\"113\" src=\"https://www.youtube.com/embed/dQw4w9WgXcQ?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen title=\"Rick Astley - Never Gonna Give You Up (Official Video) (4K Remaster)\"></iframe>",
  "version": "1.0",
  "type": "video",
  "width": 200,
  "author_url": "https://www.youtube.com/@RickAstleyYT",
  "thumbnail_width": 480,
  "title": "Rick Astley - Never Gonna Give You Up (Official Video) (4K Remaster)",
  "url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
  "author_name": "Rick Astley",
  "provider_url": "https://www.youtube.com/",
  "thumbnail_url": "https://i.ytimg.com/vi/dQw4w9WgXcQ/hqdefault.jpg"
}

Parameters

ParameterTypeRequiredDescription
urlstringRequiredThe URL to resolve. Must be URL-encoded. https%3A%2F%2Fyoutu.be%2FdQw4w9WgXcQ
maxwidth / maxheightintegerOptionalConstrain the returned embed dimensions. 640
callbackstringOptionalJSONP callback function name. handleEmbed
providerspathOptional/providers lists every supported site. providers

Response fields

provider_namestring
Which service the URL belongs to.
titlestring
Content title.
author_namestring
Uploader or author.
htmlstring
Ready-to-insert embed HTML, usually an iframe.
thumbnail_urlstring
Preview image URL.
width / heightinteger
Embed dimensions.
errorstring
Present when the URL is unsupported.

What you can build with the Noembed API

  • Turn pasted URLs into rich embeds in a CMS or chat app
  • Generate video thumbnails and titles for link cards
  • Support many embed providers with one integration
  • Build a bookmarking tool with automatic previews

Common errors and how to fix them

error field in the response

The URL's provider is not supported.

Fix: Check /providers for the supported list, and fall back to a plain link when unsupported.

Embed HTML does not render

The html field contains an iframe that must be inserted as markup.

Fix: Sanitise it, then insert as HTML — escaping it will show the raw tag instead of the player.

Wrong dimensions

Default embed size may not match your layout.

Fix: Pass maxwidth and maxheight to constrain it.

Noembed API — frequently asked questions

What is oEmbed?

A standard for turning a content URL into embeddable HTML. Each provider normally exposes its own oEmbed endpoint; Noembed proxies over 200 of them behind one URL.

Is Noembed free?

Yes, free with no API key required.

Which sites are supported?

Over 200, including YouTube, Vimeo, SoundCloud, Flickr, Twitter and many more. Request /providers for the current list.

Is the embed HTML safe to insert directly?

Sanitise it first. It normally contains an iframe from the provider, but you should never insert third-party HTML without filtering it.

Tools that pair with this API

Noembed is an independent third-party service and is not affiliated with ByteTools or ByteVancer. Details on this page were verified on 2026-08-19; always check the official documentation before relying on this API in production, as terms and limits can change.