API Reference
Welcome to the HelixStream Stream Resolver API. Our developer SDK provides direct links, CORS/Referer-bypassed proxies, and progressive segment downloaders to easily integrate stream resolvers directly into your web portals or Android native applications. Use the interactive playgrounds on each section to test queries in real-time.
Resolves movie or TV show stream links using a TMDB numerical ID or a text query. Behind the scenes, the endpoint cleans titles, queries content catalog providers (Netflix, Prime Video, Disney+, Hotstar), bypasses verify checks, resolves the HLS master playlist, and aggregates direct, proxied, and progressive download endpoints.
| Parameter | Type | Description |
|---|---|---|
| id * Required |
string |
The TMDB ID (e.g. 1399) or title text
query (e.g. Game of Thrones).
|
| type * Required |
string |
The media content type. Must be either
movie or tv.
|
| season Optional |
number |
Required if type is tv. Specifies the
season number.
|
| episode Optional |
number |
Required if type is tv. Specifies the
episode number.
|
| provider Optional |
string |
Forces a specific scraper provider. Set to 0 to force Vidlink only (skips NHDAPI). Set to 1 to force NHDAPI only (skips Vidlink fallback).
|
# Request Modern Family S1E1 resolution
curl -X GET "http://localhost:3000/api/resolve?id=Modern%20Family&type=tv&season=1&episode=1"
Intercepts HLS streams (`.m3u8` playlists, decryption keys, subtitle listings, and segment files) and rewrites relative/absolute paths into absolute proxy routes. It attaches required `Referer` headers and bypasses CORS sandboxing, guaranteeing standard HLS players (like `Hls.js` or `Video.js`) can play restricted streams.
| Parameter | Type | Description |
|---|---|---|
| url * Required |
string |
The absolute target HLS resource URL (playlist, keys, segments). Must be URL-encoded. |
| referer Optional |
string |
The HTTP Referer required by the CDN provider (e.g.
https://net52.cc).
|
import Hls from 'hls.js';
const video = document.getElementById('video-player');
const hls = new Hls();
// Play the local proxied playlist with rewritten CORS links
const proxiedUrl = "http://localhost:3000/api/stream-proxy?url=https%3A%2F%2Ftv.imgcdn.kim%2Fnewtv%2Fhls%2Fhs%2F1770001008.m3u8&referer=https%3A%2F%2Fnet52.cc";
hls.loadSource(proxiedUrl);
hls.attachMedia(video);
hls.on(Hls.Events.MANIFEST_PARSED, () => video.play());
Direct progressive downloader. It parses the unencrypted HLS
sub-playlist, downloads all MPEG-TS or JPEG segment chunks
sequentially, handles backpressure, and pipes the combined stream
directly to the response as a single continuous `.ts` file
download (using the video/mp2t MIME type). Perfect
for background download managers on mobile devices.
| Parameter | Type | Description |
|---|---|---|
| url * Required |
string |
The absolute target HLS stream playlist URL. Must be URL-encoded. |
| referer Optional |
string |
The HTTP Referer header required by the hosting CDN
(e.g. https://net52.cc).
|
| title Optional |
string |
Optional filename title (e.g.
Modern_Family). Special characters will be
cleaned automatically.
|
// Start background download using native Android DownloadManager
String downloadUrl = "http://localhost:3000/api/download?url=...";
DownloadManager.Request request = new DownloadManager.Request(Uri.parse(downloadUrl));
request.setTitle("Modern_Family.ts");
request.setMimeType("video/mp2t");
request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED);
request.setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOADS, "Modern_Family.ts");
DownloadManager manager = (DownloadManager) getSystemService(Context.DOWNLOAD_SERVICE);
manager.enqueue(request);
Diagnostic endpoint to test and monitor the reachability, response latency, and Cloudflare block status of the streaming providers (Vidlink and NHDAPI) directly from the current hosting server IP. Returns a real-time status summary of all sources.
| Parameter | Type | Description |
|---|---|---|
| No query parameters required. | ||
# Trigger diagnostic self-test
curl -X GET "http://localhost:3000/api/test-providers"
Run a diagnostics check against all 3 scraper targets from the server IP to evaluate if they are online, offline, or blocked.