Free API to Embed Movies with Vidsrc
Need to drop a movie player onto your own site without building a backend? The Vidsrc free embed API takes a single IMDb or TMDB identifier and returns a ready-to-go player URL. Paste the URL into an iframe and the movie plays in place.
What is the Vidsrc free embed API
The Vidsrc free embed API is a small, public HTTP endpoint that resolves a movie identifier into a hosted player URL. You make one GET request, the API responds with a single line containing the URL, and you embed that URL on your site. There is no SDK to install, no JavaScript bundle to load, and no account to create. The API is built for blogs, fan sites, wiki pages, and small streaming directories that want a working movie player without taking on a hosting bill.
Because the player itself is hosted by Vidsrc, the iframe inherits all of the same quality, server fallback, and subtitle handling that the main Vidsrc site uses. You get a full-featured player on your page without writing any player code, and your visitors never need to leave your domain to start watching.
How the movie embed API works
The endpoint is intentionally simple. Pass an IMDb or TMDB identifier as a path parameter, optionally include a colour theme, and the API responds with a hosted player URL scoped to that exact title. The URL is stable for the lifetime of the title, so you can cache it on your side and avoid making a request for every page view.
Minimal example request — drop the returned URL into an iframe:
<iframe
src="https://vidsrc.example/embed/movie/tt0111161"
width="100%"
height="540"
frameborder="0"
allowfullscreen
></iframe>
The same pattern works for TV shows and individual episodes by swapping the path to /embed/tv/{id} or /embed/tv/{id}/{season}/{episode}. The full parameter list, the supported colour themes, and the rate-limit headers are documented on the homepage and the dedicated embed endpoints.
Rate limits and best practices
The embed API is rate-limited per IP so that a single misbehaving client cannot crowd out everyone else. For a small fan site or a recap blog, the default limits are more than enough to handle normal traffic. If you are expecting a launch spike or running a high-volume directory, cache the resolved player URL on your side for the lifetime of the title — the URL does not change between requests.
A few small habits go a long way: keep iframes lazy-loaded, set a sensible width and height so the player does not reflow as it loads, and always include the allowfullscreen attribute so visitors can expand the player without leaving your site. If you link to a series or episode, prefer the deep-link variants of the endpoint so visitors land directly on the right episode instead of the season picker.
What you can embed beyond movies
The same embed endpoint family covers TV shows, individual episodes, and complete series. Pass a TV identifier to get a season picker, or include a season and episode to deep-link straight into a specific moment. The response shape and the iframe snippet are identical, so you can use the same pattern across every page on your site.
For mixed catalogues — for example a film review site that also covers limited series — the embed API keeps the integration code small. One endpoint, one snippet, and the same player behaviour no matter which kind of title you are pointing at.
Embed your first movie today
Pick a film, paste the iframe, and the player is live on your page within a minute.
Explore More
Read the guides
Developer quickstarts, endpoint references, and integration recipes for the Vidsrc free movie embed API. Get up and running in minutes.